package com.aisino.common.util;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
/**
* @Description: controller dao service entity包自动建造
* @author zhangfei
* @date 2016-2-16 下午2:20:22
* @version V1.0
*/
public class ProjectPackageTools {
//static String packageTemplatePath = "D:\\ProgramFiles\\java\\worlspace2\\weixin\\src\\com\\aisino\\common\\util\\packageTemplate\\";
static String packageTemplatePath = System.getProperty("user.dir") +"\\res\\template\\";
static String packageName = "com.aisino.core.material";
static String describe = "微信素材";
public static void main(String[] args) throws IOException {
createFile();
}
public static void createFile() throws IOException{
// 获取目录名
String rootName = packageName.substring(packageName.lastIndexOf(".")+1);
String TEMPLATE_0 = (""+rootName.charAt(0)).toUpperCase() + rootName.substring(1);
String TEMPLATE_1 = rootName;
File file = new File("D:\\"+rootName);
if (file.exists()) {
System.out.println("==============D盘目录下已有该文件夹,目录名请重新定义!=================");
return;
}
// 创建该目录
file.mkdir();
String controllerPath = "D:\\"+rootName+"\\controller";
String daoPath = "D:\\"+rootName+"\\dao";
String daoImplPath = "D:\\"+rootName+"\\dao\\impl";
String servicePath = "D:\\"+rootName+"\\service";
String serviceImplPath = "D:\\"+rootName+"\\service\\impl";
String entityPath = "D:\\"+rootName+"\\entity";
// 创建子目录
new File(controllerPath).mkdir();
new File(daoPath).mkdir();
new File(daoImplPath).mkdir();
new File(servicePath).mkdir();
new File(serviceImplPath).mkdir();
new File(entityPath).mkdir();
System.out.println("==============D目录文件创建成功!=================");
// 创建java代码文件
// 读取文件
String controller = controllerPath + "\\" + TEMPLATE_0 + "Controller.java";
String dao = daoPath + "\\" + TEMPLATE_0 + "Dao.java";
String daoImpl = daoImplPath + "\\" + TEMPLATE_0 + "DaoImpl.java";
String service = servicePath + "\\" + TEMPLATE_0 + "Service.java";
String serviceImpl = serviceImplPath + "\\" + TEMPLATE_0 + "ServiceImpl.java";
String entity = entityPath + "\\Weix" + TEMPLATE_0 + ".java";
//==================================================================
// controller
//==================================================================
String str = readToString(packageTemplatePath + "controller\\TEMPLATE_0Controller.ftl");
String newStr = str.replace("templatepackage", packageName).replace("TODODO", describe).replace("TEMPLATE_0", TEMPLATE_0).replace("TEMPLATE_1", TEMPLATE_1);
writeFile(controller, newStr);
System.out.println("==============controller.java文件创建成功!=================");
//==================================================================
// dao
//==================================================================
str = readToString(packageTemplatePath + "dao\\TEMPLATE_0Dao.ftl");
newStr = str.replace("templatepackage", packageName).replace("TODODO", describe).replace("TEMPLATE_0", TEMPLATE_0).replace("TEMPLATE_1", TEMPLATE_1);
writeFile(dao, newStr);
System.out.println("==============dao.java文件创建成功!=================");
//==================================================================
// daoImpl
//==================================================================
str = readToString(packageTemplatePath + "dao\\impl\\TEMPLATE_0DaoImpl.ftl");
newStr = str.replace("templatepackage", packageName).replace("TODODO", describe).replace("TEMPLATE_0", TEMPLATE_0).replace("TEMPLATE_1", TEMPLATE_1);
writeFile(daoImpl, newStr);
System.out.println("==============daoImpl.java文件创建成功!=================");
//==================================================================
// service
//==================================================================
str = readToString(packageTemplatePath + "service\\TEMPLATE_0Service.ftl");
newStr = str.replace("templatepackage", packageName).replace("TODODO", describe).replace("TEMPLATE_0", TEMPLATE_0).replace("TEMPLATE_1", TEMPLATE_1);
writeFile(service, newStr);
System.out.println("==============service.java文件创建成功!=================");
//==================================================================
// serviceImpl
//==================================================================
str = readToString(packageTemplatePath + "service\\impl\\TEMPLATE_0ServiceImpl.ftl");
newStr = str.replace("templatepackage", packageName).replace("TODODO", describe).replace("TEMPLATE_0", TEMPLATE_0).replace("TEMPLATE_1", TEMPLATE_1);
writeFile(serviceImpl, newStr);
System.out.println("==============serviceImpl.java文件创建成功!=================");
//==================================================================
// entity
//==================================================================
str = readToString(packageTemplatePath + "entity\\WeixTEMPLATE_0.ftl");
newStr = str.replace("templatepackage", packageName).replace("TODODO", describe).replace("TEMPLATE_0", TEMPLATE_0).replace("TEMPLATE_1", TEMPLATE_1);
writeFile(entity, newStr);
System.out.println("==============entity.java文件创建成功!=================");
}
public static String readToString(String fileName) {
File file = new File(fileName);
Long filelength = file.length(); //获取文件长度
byte[] filecontent = new byte[filelength.intValue()];
try {
FileInputStream in = new FileInputStream(file);
in.read(filecontent);
in.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return new String(filecontent);//返回文件内容,默认编码
}
public static void writeFile(String fileName, String content) throws IOException {
File file = new File(fileName);
file.createNewFile();
FileOutputStream fos = new FileOutputStream(file);
fos.write(content.getBytes());
}
}
//=======================================================
template模板
//=======================================================
package templatepackage.controller;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import templatepackage.entity.WeixTEMPLATE_0;
import templatepackage.service.TEMPLATE_0Service;
/**
* @Description: TODODO控制器
* @author zhangfei
* @date 2016-2-16 上午11:26:40
* @version V1.0
*/
@Controller
@RequestMapping("/TEMPLATE_1")
public class TEMPLATE_0Controller {
@Autowired
private TEMPLATE_0Service TEMPLATE_1Service;
private Logger logger = Logger.getLogger(TEMPLATE_0Controller.class);
@RequestMapping("add.do")
public void add(HttpServletRequest request, WeixTEMPLATE_0 weixTEMPLATE_0){
// 输入验证
if (!validate(weixTEMPLATE_0)) {
return;
}
// TODODO增加
TEMPLATE_1Service.add(weixTEMPLATE_0);
}
@RequestMapping("del.do")
public void del(HttpServletRequest request){
// TODODO删除
TEMPLATE_1Service.del(request.getParameter("id"));
}
@RequestMapping("edit.do")
public void edit(HttpServletRequest request, WeixTEMPLATE_0 weixTEMPLATE_0){
// 输入验证
if (!validate(weixTEMPLATE_0)) {
return;
}
// TODODO修改
TEMPLATE_1Service.edit(weixTEMPLATE_0);
}
@RequestMapping("query.do")
public void query(HttpServletRequest request){
// TODODO查询
List<WeixTEMPLATE_0> weixTEMPLATE_0List = TEMPLATE_1Service.query();
request.setAttribute("weixTEMPLATE_0List", weixTEMPLATE_0List);
}
/**
* 输入验证
* @param weixTEMPLATE_0
* @return
*/
private boolean validate(WeixTEMPLATE_0 weixTEMPLATE_0) {
// TODO输入的验证,以及验证的错误消息设定
return false;
}
}
package templatepackage.dao;
import java.util.List;
import templatepackage.entity.WeixTEMPLATE_0;
/**
* @Description: TODODO数据访问类
* @author zhangfei
* @date 2016-2-16 上午11:25:40
* @version V1.0
*/
public interface TEMPLATE_0Dao {
/**
* TODODO增加.
* @param weixTEMPLATE_0
*/
void add(WeixTEMPLATE_0 weixTEMPLATE_0);
/**
* TODODO删除.
* @param id
*/
public void del(String id);
/**
* TODODO修改.
* @param weixTEMPLATE_0
*/
public void edit(WeixTEMPLATE_0 weixTEMPLATE_0);
/**
* TODODO查询出所有.
* @param weixTEMPLATE_0
*/
public List<WeixTEMPLATE_0> query();
/**
* TODODO根据主键id查询.
* @param id 主键id
*/
public WeixTEMPLATE_0 queryById(String id);
}
package templatepackage.dao.impl;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.RowMapper;
import org.springframework.stereotype.Repository;
import com.aisino.common.dao.BaseJdbcDAO;
import templatepackage.dao.TEMPLATE_0Dao;
import templatepackage.entity.WeixTEMPLATE_0;
@Repository("TEMPLATE_1Dao")
public class TEMPLATE_0DaoImpl implements TEMPLATE_0Dao{
@Autowired
private BaseJdbcDAO baseJdbcDAO;
@Override
public void add(WeixTEMPLATE_0 weixTEMPLATE_0) {
// TODO 参数设定=======================================================
baseJdbcDAO.getJdbcTemplate().update("INSERT INTO weix_TEMPLATE_1 VALUES()");
}
@Override
public void del(String id) {
baseJdbcDAO.getJdbcTemplate().update("DELETE weix_TEMPLATE_1 WHERE id=?",id);
}
@Override
public void edit(WeixTEMPLATE_0 weixTEMPLATE_0) {
// TODO 参数设定=======================================================
baseJdbcDAO.getJdbcTemplate().update("UPDATE weix_TEMPLATE_1 SET");
}
@Override
public List<WeixTEMPLATE_0> query() {
return baseJdbcDAO.getJdbcTemplate().query("SELECT * FROM weix_TEMPLATE_1 WHERE 1=1",new WeixTEMPLATE_0RowMapper());
}
@Override
public WeixTEMPLATE_0 queryById(String id) {
return baseJdbcDAO.getJdbcTemplate().queryForObject("SELECT * FROM weix_TEMPLATE_1 WHERE id=?",new WeixTEMPLATE_0RowMapper(),id);
}
class WeixTEMPLATE_0RowMapper implements RowMapper<WeixTEMPLATE_0> {
public WeixTEMPLATE_0 mapRow(ResultSet rs, int rowNum) throws SQLException {
WeixTEMPLATE_0 WeixTEMPLATE_1 = new WeixTEMPLATE_0();
// TODO 属性值设定==========================================================
return WeixTEMPLATE_1;
}
}
}
package templatepackage.entity;
public class WeixTEMPLATE_0 {
}
package templatepackage.service;
import java.util.List;
import templatepackage.entity.WeixTEMPLATE_0;
/**
* @Description: TODODO业务类
* @author zhangfei
* @date 2016-2-16 上午11:27:17
* @version V1.0
*/
public interface TEMPLATE_0Service {
/**
* TODODO增加.
* @param weixTEMPLATE_0
*/
void add(WeixTEMPLATE_0 weixTEMPLATE_0);
/**
* TODODO删除.
* @param id
*/
public void del(String id);
/**
* TODODO修改.
* @param weixTEMPLATE_0
*/
public void edit(WeixTEMPLATE_0 weixTEMPLATE_0);
/**
* TODODO查询出所有.
* @param weixTEMPLATE_0
*/
public List<WeixTEMPLATE_0> query();
/**
* TODODO根据主键id查询.
* @param id 主键id
*/
public WeixTEMPLATE_0 queryById(String id);
}
package templatepackage.service.impl;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import templatepackage.dao.TEMPLATE_0Dao;
import templatepackage.entity.WeixTEMPLATE_0;
import templatepackage.service.TEMPLATE_0Service;
@Service("TEMPLATE_1Service")
public class TEMPLATE_0ServiceImpl implements TEMPLATE_0Service{
@Autowired
TEMPLATE_0Dao TEMPLATE_1Dao;
@Override
public void add(WeixTEMPLATE_0 weixTEMPLATE_0) {
TEMPLATE_1Dao.add(weixTEMPLATE_0);
}
@Override
public void del(String id) {
TEMPLATE_1Dao.del(id);
}
@Override
public void edit(WeixTEMPLATE_0 weixTEMPLATE_0) {
TEMPLATE_1Dao.edit(weixTEMPLATE_0);
}
@Override
public List<WeixTEMPLATE_0> query() {
return TEMPLATE_1Dao.query();
}
@Override
public WeixTEMPLATE_0 queryById(String id) {
return TEMPLATE_1Dao.queryById(id);
}
}