java拷贝模板创建java类

需求分析:

在业务开发过程当中,是否经常会遇到都是类似的代码,需要各种重复创建java类来满足业务需求。

现提供如下方法,进行批量创建类似的java类,按照需求进行内部内容逐个修改即可。

实现代码:

package test;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;

public class Test6 {

	public static void main(String[] args) {
		// 拷贝文件模板
		String demo = "/Users/wenxuechao/Workspace/MyWorkspace/myWork/maven/Test/src/test/demo.txt";
		// 创建的java类的区别名字
		String[] target = {"wen1", "wen2", "wen3", "wen4"};
		// 创建java类的存放路径
		String targetURL = "/Users/wenxuechao/Workspace/MyWorkspace/myWork/maven/Test/src/test/";
		
		for (int i = 0; i < target.length; i++) {
			try {
				BufferedReader bufReader = new BufferedReader(new InputStreamReader(new FileInputStream(new File(demo))));//数据流读取文件

				StringBuffer strBuffer = new StringBuffer();
				String empty = "";
				String replace = "XXX";
				for (String temp = null; (temp = bufReader.readLine()) != null; temp = null) {
					//判断当前行是否存在想要替换掉的字符 -1表示存在
					if(temp.indexOf("XXX") != -1){ 
						//按照业务需求进行替换内容
						temp = temp.replace(replace, target[i]);
					}
					strBuffer.append(temp);
					//行与行之间的分割
					strBuffer.append(System.getProperty("line.separator"));
				}
				bufReader.close();
				//替换后输出的文件位置
				PrintWriter printWriter = new PrintWriter(targetURL+target[i]+"DEMO.java");
				printWriter.write(strBuffer.toString().toCharArray());
				printWriter.flush();
				printWriter.close();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
	}

}
模板文件内容:

package test;

public class AXXXDEMO {

	private String a1;
	
	private String a2;
	
	private String a3;

	public String getA1() {
		return a1;
	}

	public void setA1(String a1) {
		this.a1 = a1;
	}

	public String getA2() {
		return a2;
	}

	public void setA2(String a2) {
		this.a2 = a2;
	}

	public String getA3() {
		return a3;
	}

	public void setA3(String a3) {
		this.a3 = a3;
	}
	
	
}


场景分析:

模板文件基本上为大体内容一致的部分,只有java类名不同,或里面局部内容不同。具体类名可以按照需求进行填入,可以进行批量生成java类文件。

具体案例:

现有如下表:TB1,TB2,TB3,TB4,现需要创建对应的BackupTB1Action,BackupTB2Action,BackupTB3Action,BackupTB4Action,里面的内容按照需求进行编写。

这样,可以将四个表放置到数组当中,修改模板文件,将表名部分用XXX替换,执行main方法,自动进行创建。将XXX替换成对应表明,则可以免去繁琐的创建。

思路扩展:

按照此方案,可以进行扩展,比如更多的前台页面,或者对应的ACTION等类,增删改查的部分代码均类似,因此该部分均可以使用模板文件进行创建,后续仅需要按照业务逻辑进行补充即可,大大提高开发效率。


  • 3
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wenxuechaozhe

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值