package com.qhit.utils;
/**
* Created by Administrator on 2018/7/25 0025.
*/
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.sql.*;
import java.text.SimpleDateFormat;
import java.util.Date;
/**
* 根据表名,自动生成javabean,dao,mapper,service,service实现类
*
* Version 1.5
*
1.自动生成mapper文件
2.自动生成下拉框,实现下拉框的自动化
*
*/
public class GenerateCode {
private static String tableName = "in_patient";
private static String tableChineseName = "病人";
private static String javaBeanName = BaseDao.dbTableToJavaBean(tableName);
private static String javaPackageName = BaseDao.toLowerCaseFirstOne(javaBeanName);
private static BaseDao dao = new BaseDao();
public static void main(String[] args) throws Exception {
//连接
Connection conn = dao.getConn();
String sql = "select * from "+tableName;
sql=sql.toLowerCase();
PreparedStatement ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
//元数据
ResultSetMetaData metaData = rs.getMetaData();
rs.close();
//字段注释
String[] comments = findComments(conn, metaData);
//文件输出位置
File dir = new File("C:\\F\\codeout");
if(!dir.exists()){
dir.mkdirs();
}
//删除文件夹下的所有文件
delAllFile(dir.getAbsolutePath());
//创建 pojo dao service 文件夹
makeSomeDirs(dir);
//javabean
String beanName = javaBeanName+".java";
BufferedWriter beanWriter = new BufferedWriter(new FileWriter(dir.getAbsolutePath()+"\\com\\qhit\\"+javaPackageName+"\\pojo\\"+beanName));
//dao
String daoName = "I"+javaBeanName+"Dao.java";
BufferedWriter daoWriter= new BufferedWriter(new FileWriter(dir.getAbsolutePath()+"\\com\\qhit\\"+javaPackageName+"\\dao\\"+daoName));
//Mapper文件
String mapperName = javaBeanName+"Mapper.xml";
BufferedWriter mapperWriter= new BufferedWriter(new FileWriter(dir.getAbsolutePath()+"\\com\\qhit\\"+javaPackageName+"\\dao\\"+mapperName));
//service
String serviceName = "I"+javaBeanName+"Service.java";
BufferedWriter serviceWriter= new BufferedWriter(new FileWriter(dir.getAbsolutePath()+"\\com\\qhit\\"+javaPackageName+"\\service\\"+serviceName));
//service实现类
String serviceImplName = javaBeanName+"ServiceImpl.java";
BufferedWriter serviceImplWriter= new BufferedWriter(new FileWriter(dir.getAbsolutePath()+"\\com\\qhit\\"+javaPackageName+"\\service\\impl\\"+serviceImplName));
//Controller
String controllerName = javaBeanName+"Controller.java";
BufferedWriter controllerWriter = new BufferedWriter(new FileWriter(dir.getAbsolutePath()+"\\com\\qhit\\"+javaPackageName+"\\controller\\"+controllerName));
//list.jsp
String listJspName = "list.jsp";
BufferedWriter listJspWriter = new BufferedWriter(new FileWriter(dir.getAbsolutePath()+"\\jsp\\"+javaPackageName+"\\"+listJspName));
//add.jsp
String addJspName = "add.jsp";
BufferedWriter addJspWriter = new BufferedWriter(new FileWriter(dir.getAbsolutePath()+"\\jsp\\"+javaPackageName+"\\"+addJspName));
//edit.jsp
String editJspName = "edit.jsp";
BufferedWriter editJspWriter = new BufferedWriter(new FileWriter(dir.getAbsolutePath()+"\\jsp\\"+javaPackageName+"\\"+editJspName));
Date date = new Date();
SimpleDateFormat format = new SimpleDateFormat("yyyy/MM/dd");
String now = format.format(date);
// dao
generateDao(metaData,javaBeanName, daoWriter, now);
//mapper文件
generateMapper(metaData,javaBeanName, mapperWriter, now);
//javabean
generateJavaBean(metaData, javaBeanName, beanWriter, now,comments);
// service
generateService(metaData,javaBeanName, serviceWriter, now);
//dao实现类
generateServiceImpl(metaData,javaBeanName, serviceImplWriter, now);
//controller
generateController(metaData,javaBeanName, controllerWriter, now);
//list.jsp
generateListJsp(metaData,javaBeanName, listJspWriter, now,comments);
//add.jsp
generateAddJsp(metaData,javaBeanName, addJspWriter, now,comments);
//edit.jsp
generateEditJsp(metaData,javaBeanName, editJspWriter, now,comments);
System.out.println("执行成功");
}
private static void generateEditJsp(ResultSetMetaData metaData, String javaBeanName, BufferedWriter editJspWriter, String now, String[] comments) throws IOException, SQLException {
editJspWriter.write("<%-- \r\n");
editJspWriter.write(" Created by IntelliJ IDEA. \r\n");
editJspWriter.write(" "+now+" \r\n");
editJspWriter.write(" To change this template use File | Settings | File Templates. \r\n");
editJspWriter.write("--%> \r\n");
editJspWriter.write("<%@ page contentType=\"text/html;charset=UTF-8\" language=\"java\" %> \r\n");
editJspWriter.write("<%@include file=\"/common/common.jsp\"%> \r\n");
editJspWriter.write("<html> \r\n");
editJspWriter.write("<head> \r\n");
editJspWriter.write(" <title>Title</title>\r\n");
editJspWriter.write("</head> \r\n");
editJspWriter.newLine();
//主键
String primarykey = metaData.getColumnName(1);
String priName = BaseDao.dbColsToJavaCols(primarykey);
editJspWriter.write("<body class=\"main\"> \r\n");
editJspWriter.write("<form action=\"${path}/"+javaPackageName+"/update.action\"> \r\n");
editJspWriter.write(" <h1>修改"+tableChineseName+"</h1> \r\n");
editJspWriter.write(" <input type=\"hidden\" name=\""+priName+"\" value=\"${"+javaPackageName+"."+priName+"}\"> \r\n");
editJspWriter.write(" <div class=\"update\"> \r\n");
int count = metaData.getColumnCount();
for(int i=2;i<=count;i++){
String columnName = metaData.getColumnName(i);
String javaCol = BaseDao.dbColsToJavaCols(columnName);
//列类型 大写
String type = metaData.getColumnTypeName(i);
if(i%2==0){
editJspWriter.write(" <div class=\"left\"> \r\n");
}else{
editJspWriter.write(" <div class=\"right\"> \r\n");
}
editJspWriter.write(" <span>"+comments[i-1]+"</span> \r\n");
if ("DATE".equals(type) || "DATETIME".equals(type) || "TIMESTAMP".equals(type)){
editJspWriter.write(" <input type=\"date\" name=\""+javaCol+"\" value=\"${"+javaPackageName+"."+javaCol+"}\"> \r\n");
}else{
editJspWriter.write(" <input type=\"text\" name=\""+javaCol+"\" value=\"${"+javaPackageName+"."+javaCol+"}\"> \r\n");
}
editJspWriter.write(" </div> \r\n");
}
//字段格式是偶数个 后面加上一个空的div 为了好看
if(count%2==0){
editJspWriter.write(" <div class=\"right\"> \r\n");
editJspWriter.write(" </div> \r\n");
}
editJspWriter.write(" <div id=\"error\"></div> \r\n");
editJspWriter.write(" <div class=\"buttons\"> \r\n");
editJspWriter.write(" <input type=\"submit\" value=\"提交\"> \r\n");
editJspWriter.write(" <input type=\"button\" onclick=\"history.back()\" value=\"返回\"> \r\n");
editJspWriter.write(" </div> \r\n");
editJspWriter.write(" </div> \r\n");
editJspWrit
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
基于SSM的医院信息管理系统包含完整源码和数据库文件。赋能医院企业高效办公,构建一站式医院门户管控平台.支持多系统集成,信息发布及数据共享,知识档案在线管理,提高医疗高效办公服务. 技术点:junit、fastjson、spring、springmvc、mybatis、c3p0、pinyin4j、aspectjweaver、mysql、jstl
资源推荐
资源详情
资源评论
收起资源包目录
基于SSM的医院信息管理系统-Java代码类资源 (264个子文件)
home.css 4KB
index.css 1KB
edit.gif 132B
distribute.gif 128B
del.gif 125B
GenerateCode.java 48KB
GenerateCode2.java 47KB
GenerateCodeOld.java 43KB
BaseDao.java 22KB
MD5.java 13KB
BaseDao1.java 8KB
MedicineInstockController.java 7KB
BaseUserController.java 6KB
MedicinePurchaseInfoServiceImpl.java 6KB
InPatientController.java 6KB
MedicineReqPlanController.java 6KB
MedicineCodeServiceImpl.java 5KB
MedicinePurchaseInfoController.java 5KB
BaseManufacturerServiceImpl.java 5KB
MedicineCode.java 5KB
BaseRoleServiceImpl.java 4KB
PatientRegisterRecordController.java 4KB
BaseRoleController.java 4KB
BaseManufacturer.java 4KB
DoctorMenuMedicineController.java 4KB
MedicineReqPlanServiceImpl.java 4KB
BaseFunctionController.java 4KB
MedicineCodeController.java 4KB
MedicineReqPlan.java 4KB
BaseManufacturerController.java 4KB
MedicinePurchaseInfo.java 3KB
BasePatientInfoController.java 3KB
MedicineInstockServiceImpl.java 3KB
BaseManufacturerDaoImpl.java 3KB
PatientRegisterRecord.java 3KB
DoctorMenuController.java 3KB
DoctorMenuMedicineServiceImpl.java 3KB
MedicineStockinfoServiceImpl.java 3KB
BaseFunctionServiceImpl.java 3KB
MedicineStockinfoController.java 3KB
FileUploadUtil.java 3KB
BaseUser.java 3KB
BaseRoleFunctionController.java 3KB
DoctorVisitRecordController.java 3KB
BaseModuleController.java 3KB
MedicineTypeController.java 3KB
MedicinePurchaseInfoDaoImpl.java 3KB
CompanyinfoController.java 3KB
TelvisitController.java 3KB
BaseDeptController.java 3KB
MedicineReqPlanDaoImpl.java 2KB
CompanyinfoServiceImpl.java 2KB
BaseUserRoleController.java 2KB
BaseRoleFunctionServiceImpl.java 2KB
BaseUserServiceImpl.java 2KB
MedicineInstockDaoImpl.java 2KB
BaseRole.java 2KB
BaseUserRoleServiceImpl.java 2KB
DoctorMenu.java 2KB
MedicineTypeServiceImpl.java 2KB
MedicineInstock.java 2KB
BasePatientInfo.java 2KB
Demo2.java 2KB
Demo1.java 2KB
InsertSort.java 2KB
DoctorVisitRecord.java 2KB
PatientRegisterRecordServiceImpl.java 2KB
MedicineStockinfoDaoImpl.java 2KB
InPatientServiceImpl.java 2KB
BasePatientInfoServiceImpl.java 2KB
Telvisit.java 2KB
InPatient.java 2KB
BaseFunction.java 1KB
DoctorVisitRecordServiceImpl.java 1KB
BaseModuleServiceImpl.java 1KB
MedicineStockinfo.java 1KB
Loginterceptor.java 1KB
CompanyinfoDaoImpl.java 1KB
IMedicineCodeDao.java 1KB
BaseDeptServiceImpl.java 1KB
TelvisitServiceImpl.java 1KB
AuthorityInterceptor.java 1KB
BaseRoleFunction.java 1KB
DoctorMenuMedicineDaoImpl.java 1KB
ZhongWenToPinYin.java 1KB
BaseFunctionDaoImpl.java 1KB
Companyinfo.java 1KB
DoctorMenuMedicine.java 1KB
IBaseManufacturerDao.java 1KB
BaseRoleFunctionDaoImpl.java 1KB
MedicineTypeDaoImpl.java 1KB
IPatientRegisterRecordDao.java 1023B
BaseUserRoleDaoImpl.java 1020B
IInPatientDao.java 995B
IBaseUserDao.java 994B
MedicineType.java 988B
IBasePatientInfoDao.java 976B
IDoctorVisitRecordDao.java 963B
IMedicinePurchaseInfoDao.java 957B
IBaseRoleService.java 920B
共 264 条
- 1
- 2
- 3
qq_41934573
- 粉丝: 159
- 资源: 459
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
- 4
前往页