资源简介
这是我自己写的一个比较成熟的排课系统,并且已经成功上线使用(为了保密,我已在代码中将敏感信息全部改成了电视剧的人名),可作为计算机专业的毕业设计。最后会将排课的结果自动写入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 cmpp2.0 3.0 无jar纯源码demo(含服务
- javaEE帮助文档API中文汉化版.zip
- 王道训练营最新javaSE阶段测试
- Java编写 航班信息查询管理系统
- java英汉-汉英互译电子词典(完整)
- jar包差异比对器
- 图书管理系统 网页 数据库有java
- java毕业设计外文文献翻译
- java实现从ts流中提取I帧数据的方法
- 《剑指Offer》Java代码带目录.pdf
- vox转wav文件Java实现
- 网络交友网站源码javabean+JSP+Mysql
- pagehelper-4.2.1.jar和jsqlparser-0.9.4.jar
- 高效敏感词过滤JAVA实现DFA算法 5000字
- CSharp to Java Converter破解版
- 一头扎进 centos7 视频教程 java1234出品
- Java开发手册68个常用开发手册
- Java EE框架整合开发入门到实战:Spr
- 个人免签支付即时到账网站源码易语
- eclipse-jee-2020-06-R-win32-x86_64.zip
- Java实现的小型文件管理系统
- 《剑指offer》Java版代码
- 小型超市信息管理系统Java代码和设计
- JSP+JavaBean+Servlet技术实现某网站用户注
- java汉字转化为拼音的工具类
- 日语java面试问题集
- 餐饮管理系统用java编写,供毕设和学
- Java课程设计扫雷游戏代码及报告
- java随机生成用户名(qq、手机、邮箱
- 图书馆管理系统(jsp+Servlet+Javabean+m
评论
共有 条评论