资源简介
这是我自己写的一个比较成熟的排课系统,并且已经成功上线使用(为了保密,我已在代码中将敏感信息全部改成了电视剧的人名),可作为计算机专业的毕业设计。最后会将排课的结果自动写入word(自动生成表格,并且自动将数据填入表格,用到技术freemark)。用到技术是Java swing。代码总共约1万行。拥有冲突解决机制。使用方式:运行window文件-点击修改基础数据-自动对应-然后点击排课。这时会自动在d盘下,生成temp文件夹,教师和班级的课表word文件会在temp文件夹中自动出现。我注释写的不是很多。如果有什么问题请联系qq:739690811(添加时说是问程序问题的)。

代码片段和文件信息
package com.havenliu.document;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.UnsupportedEncodingException;
import java.io.Writer;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.paike.entity.Class;
import com.paike.entity.Teacher;
import freemarker.template.Configuration;
import freemarker.template.Template;
import freemarker.template.TemplateException;
public class DocumentHandler {
private Configuration configuration = null;
public DocumentHandler() {
configuration = new Configuration();
configuration.setDefaultEncoding(“utf-8“);
}
public void createDoc(Class[] allClassesTeacher[] allteachers) {
//要填入模本的数据文件
Mapject> dataMap=new HashMapject>();
getData(dataMapallClasses);
//专门老师课表的输出
Mapject> dataMapt=new HashMapject>();
getDatat(dataMaptallteachers);
//设置模本装置方法和路径FreeMarker支持多种模板装载方法。可以重servlet,classpath,数据库装载,
//这里我们的模板是放在com.havenliu.document.template包下面
configuration.setClassForTemplateLoading(this.getClass() “/com/havenliu/document/template“);
Template t=null;
Template t1=null;
Template t2=null;
try {
//test.ftl为要装载的模板
// t = configuration.getTemplate(“testt.ftl“);
t1 = configuration.getTemplate(“student9.ftl“);
t2 = configuration.getTemplate(“teacherkebiao6.ftl“);
} catch (IOException e) {
e.printStackTrace();
}
//输出文档路径及名称
File outFile = new File(“D:/temp/banjikebiao.doc“);
File outFileteacher = new File(“D:/temp/teacherkebiao.doc“);
Writer out2 = null;
Writer out1 = null;
try {
// out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outFile)“utf-8“));
out2 = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outFileteacher)“utf-8“));
out1 = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outFile)“utf-8“));
} catch (FileNotFoundException e1) {
e1.printStackTrace();
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
// for (int i = 0; i < 3; i++) {
// t.process(dataMap out);
// }
t1.process(dataMap out1);
t2.process(dataMapt out2);
// t.process(dataMap out);
} catch (TemplateException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* 注意dataMap里存放的数据Key值要与模板中的参数相对应
* @param dataMap
*/
private void getData(Mapject> dataMapClass[] allClasses)
{
/*dataMap.put(“author“ “张三“);
dataMap.put(“remark“ “这是测试备注信息“);
List _table1=new ArrayList();
Table1 t1=new Table1();
t1.setDate(“2010-10-1“);
t1.setText(“制定10月开发计划内容。“);
_table1.add(t
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 789043 2014-11-21 17:31 排课系统\freemarker.jar
文件 443 2015-02-28 14:14 排课系统\paike27A用来分享\.classpath
文件 396 2015-05-09 12:23 排课系统\paike27A用来分享\.project
文件 191 2015-05-25 13:53 排课系统\paike27A用来分享\.settings\org.eclipse.core.resources.prefs
文件 629 2014-10-25 07:55 排课系统\paike27A用来分享\.settings\org.eclipse.jdt.core.prefs
文件 8453 2015-05-09 12:23 排课系统\paike27A用来分享\bin\com\havenliu\document\DocumentHandler.class
文件 516 2015-05-09 12:23 排课系统\paike27A用来分享\bin\com\havenliu\document\Main.class
文件 719 2015-05-09 12:23 排课系统\paike27A用来分享\bin\com\havenliu\document\Table1.class
文件 1316 2015-05-09 12:23 排课系统\paike27A用来分享\bin\com\havenliu\document\Table2.class
文件 71450 2015-01-03 21:32 排课系统\paike27A用来分享\bin\com\havenliu\document\template\student9.ftl
文件 123770 2015-05-25 13:53 排课系统\paike27A用来分享\bin\com\havenliu\document\template\teacherkebiao6.ftl
文件 9274 2015-05-09 12:23 排课系统\paike27A用来分享\bin\com\paike\entity\AllClassInit.class
文件 31598 2015-05-09 12:33 排课系统\paike27A用来分享\bin\com\paike\entity\AllTeacherInit.class
文件 1913 2015-05-09 12:23 排课系统\paike27A用来分享\bin\com\paike\entity\Class.class
文件 19284 2015-05-25 13:56 排课系统\paike27A用来分享\bin\com\paike\entity\PaiKe.class
文件 772 2015-05-09 12:23 排课系统\paike27A用来分享\bin\com\paike\entity\Teacher.class
文件 2150 2015-05-09 12:23 排课系统\paike27A用来分享\bin\com\paike\GUI\Addfr
文件 2026 2015-05-09 12:23 排课系统\paike27A用来分享\bin\com\paike\GUI\Addfr
文件 289 2015-05-09 12:23 排课系统\paike27A用来分享\bin\com\paike\GUI\AllKeMufr
文件 895 2015-05-09 12:23 排课系统\paike27A用来分享\bin\com\paike\GUI\AllTeacherInfr
文件 2657 2015-05-09 12:23 排课系统\paike27A用来分享\bin\com\paike\GUI\AllTeacherInfr
文件 717 2015-05-09 12:23 排课系统\paike27A用来分享\bin\com\paike\GUI\MyActionListener.class
文件 1348 2015-05-09 12:23 排课系统\paike27A用来分享\bin\com\paike\GUI\ShuXueTeacherfr
文件 3969 2015-05-09 12:23 排课系统\paike27A用来分享\bin\com\paike\GUI\ShuXueTeacherfr
文件 841 2015-05-09 12:25 排课系统\paike27A用来分享\bin\com\paike\GUI\Windows$1.class
文件 847 2015-05-09 12:25 排课系统\paike27A用来分享\bin\com\paike\GUI\Windows$2.class
文件 1869 2015-05-09 12:25 排课系统\paike27A用来分享\bin\com\paike\GUI\Windows.class
文件 1245 2015-05-09 12:23 排课系统\paike27A用来分享\bin\com\paike\GUI\XiuGaif
文件 1251 2015-05-09 12:23 排课系统\paike27A用来分享\bin\com\paike\GUI\XiuGaif
文件 1248 2015-05-09 12:23 排课系统\paike27A用来分享\bin\com\paike\GUI\XiuGaif
............此处省略123个文件信息
相关资源
- 微博系统(Java源码,servlet+jsp),适
- java串口通信全套完整代码-导入eclip
- jsonarray所必需的6个jar包.rar
- 三角网构TIN生成算法,Java语言实现
- java代码编写将excel数据导入到mysql数据
- Java写的cmm词法分析器源代码及javacc学
- JAVA JSP公司财务管理系统 源代码 论文
- JSP+MYSQL旅行社管理信息系统
- 推荐算法的JAVA实现
- 基于Java的酒店管理系统源码(毕业设
- java-图片识别 图片比较
- android毕业设计
- java23种设计模式+23个实例demo
- java Socket发送/接受报文
- JAVA828436
- java界面美化 提供多套皮肤直接使用
- 在线聊天系统(java代码)
- 基于Java的图书管理系统807185
- java中实现将页面数据导入Excel中
- java 企业销售管理系统
- java做的聊天系统(包括正规课程设计
- Java编写的qq聊天室
- 商店商品管理系统 JAVA写的 有界面
- JAVA开发聊天室程序
- 在linux系统下用java执行系统命令实例
- java期末考试试题两套(答案) 选择(
- JAVA3D编程示例(建模、交互)
- Java 文件加密传输
- java做的房产管理系统
- 基于jsp的bbs论坛 非常详细
评论
共有 条评论