📄 basemaker.java
字号:
/*
* Copyright (c) 2008 胜利油田胜利软件有限责任公司. All rights reserved.
*/
package com.victorysoft.code.maker;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import com.victorysoft.code.base.CodeTemplete;
import com.victorysoft.code.bean.TabInfo;
/**
*
* @author 于景洋
* @newtime Oct 21, 2008,8:51:13 AM
* @version 1.0
* @see
* @since JDK 1.5.0
*/
public class BaseMaker {
private static final String $THEAD = "$THEAD";
private static final String $TPACK = "$TPACK";
private static final String $BHEAD = "$BHEAD";
private static final String $DHEAD = "$DHEAD";
private static final String $IHEAD = "$IHEAD";
private static final String $MHEAD = "$MHEAD";
private static final String $FHEAD = "$FHEAD";
private static final String $LOG4J = "$LOG4J";
private static final String $APPDAO = "$APPDAO";
private static final String $FACTORY = "$FACTORY";
private static final String THEAD = "#THEAD#";
private static final String TPACK = "#TPACK#";
private static final String FHEAD = "#FHEAD#";
private static final String IMPTS = "#IMPTS#";
private static final String YEAR = "#YEAR#";
private static final String PROJECT = "#PROJECT#";
private static final String UPPROJECT = "#UPPROJECT#";
private static final String NEWTIME = "#NEWTIME#";
private static final String TABCOMT = "#TABCOMT#";
private static final String UPTABNAME = "#UPTABNAME#";
private static final String APPDAOS = "#APPDAOS#";
private CodeTemplete bct = null;
private SimpleDateFormat df1 = null;
private SimpleDateFormat df2 = null;
public BaseMaker() {
bct = new CodeTemplete(BaseMaker.class, "base.txt");
df1 = new SimpleDateFormat("yyyy");
df2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
}
public String getThead() {
String thead = bct.getTemplete($THEAD);
String year = df1.format(new Date());
return thead.replaceAll(YEAR, year).trim();
}
public String getTpack(String project) {
String tpack = bct.getTemplete($TPACK);
return tpack.replaceAll(PROJECT, project.toLowerCase()).trim();
}
public String getBhead(TabInfo tab) {
String time = df2.format(new Date());
String name = tab.getName();
String comt = tab.getComt();
comt = (comt == null || comt.length() == 0) ? name : comt;
String bhead = bct.getTemplete($BHEAD);
bhead = bhead.replaceAll(NEWTIME, time);
return bhead.replaceAll(TABCOMT, comt).trim();
}
public String getDhead(TabInfo tab) {
String time = df2.format(new Date());
String name = tab.getName();
String comt = tab.getComt();
comt = (comt == null || comt.length() == 0) ? name : comt;
String dhead = bct.getTemplete($DHEAD);
dhead = dhead.replaceAll(NEWTIME, time);
return dhead.replaceAll(TABCOMT, comt).trim();
}
public String getIhead(TabInfo tab) {
String time = df2.format(new Date());
String name = tab.getName();
String comt = tab.getComt();
comt = (comt == null || comt.length() == 0) ? name : comt;
String ihead = bct.getTemplete($IHEAD);
ihead = ihead.replaceAll(NEWTIME, time);
return ihead.replaceAll(TABCOMT, comt).trim();
}
public String getMhead(TabInfo tab) {
String time = df2.format(new Date());
String name = tab.getName();
String comt = tab.getComt();
comt = (comt == null || comt.length() == 0) ? name : comt;
String mhead = bct.getTemplete($MHEAD);
mhead = mhead.replaceAll(NEWTIME, time);
return mhead.replaceAll(TABCOMT, comt).trim();
}
public String getFhead(String project) {
String time = df2.format(new Date());
String fhead = bct.getTemplete($FHEAD);
fhead = fhead.replaceAll(NEWTIME, time);
return fhead.replaceAll(UPPROJECT, upFirstChar(project)).trim();
}
public String getFactory(String project, List<TabInfo> tabList) {
String tpack = this.getTpack(project);
StringBuffer buff = new StringBuffer();
StringBuffer impt = new StringBuffer();
for (int i = 0; i < tabList.size(); i++) {
TabInfo tab = tabList.get(i);
String name = upFirstChar(tab.getName().toLowerCase());
String comt = tab.getComt();
comt = (comt == null || comt.length() == 0) ? name : comt;
String appdao = bct.getTemplete($APPDAO);
appdao = appdao.replaceAll(TABCOMT, comt);
appdao = appdao.replaceAll(UPTABNAME, name);
buff.append(appdao);
impt.append("import " + tpack + ".dao." + name + "Dao;\n");
}
String factory = bct.getTemplete($FACTORY);
factory = factory.replaceAll(THEAD, this.getThead());
factory = factory.replaceAll(TPACK, this.getTpack(project));
factory = factory.replaceAll(FHEAD, this.getFhead(project));
factory = factory.replaceAll(IMPTS, impt.toString().trim());
factory = factory.replaceAll(UPPROJECT, upFirstChar(project));
return factory.replaceAll(APPDAOS, buff.toString().trim()).trim();
}
public String getLog4j(String project) {
String log4j = bct.getTemplete($LOG4J);
return log4j.replaceAll(PROJECT, project).trim();
}
private String upFirstChar(String str) {
if (str == null || str.length() == 0) {
return str;
}
return String.valueOf(str.charAt(0)).toUpperCase() + str.substring(1);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -