zymaxs的专栏

一个很简单的功能,,用来自动生成bean代码CreateBean.java代码:

package com.auto.util;import java.io.File;import java.io.FileNotFoundException;import java.io.IOException;import java.io.RandomAccessFile;import java.io.UnsupportedEncodingException;import java.util.ArrayList;public class CreateBean {public CreateBean() {}public ArrayList<String> readFile(String filename) {ArrayList<String> line = new ArrayList<String>();try {File f = new File(filename);RandomAccessFile rf = new RandomAccessFile(f, "r");String temp;while (rf.read() != -1) {rf.seek(rf.getFilePointer() – 1);temp = new String(rf.readLine().getBytes("8859_1"));if(temp.trim().length()>1){line.add(temp);}}rf.close();} catch (NullPointerException e) {e.printStackTrace();} catch (FileNotFoundException e) {e.printStackTrace();} catch (UnsupportedEncodingException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}return line;}public void createBean(String filename, ArrayList<String> elements) {String reqfilename="Req_"+ filename+".java";String path = System.getProperty("user.dir")+ "\\src\\com\\business\\reqbean\\";File f = new File(path +reqfilename);try {f.createNewFile();StringBuffer beancode = new StringBuffer();beancode.append("package com.business.reqbean;");beancode.append("\r\n");beancode.append("/**CreateBean自动生成代码*/");beancode.append("\r\n");beancode.append("public class Req_"+filename+" {");beancode.append("\r\n ");for (String ts : elements) {String[] ns = ts.split("");beancode.append("/**"+ns[2]+"*/");beancode.append("\r\n ");if(ns.length>4){beancode.append("/**"+ns[4]+"*/");beancode.append("\r\n ");}beancode.append("private "+ns[1]+" "+ns[0]+";");beancode.append("\r\n ");beancode.append("public "+ns[1]+" get"+chargeMethod(ns[0])+"(){");beancode.append("\r\n");beancode.append("return "+ns[0]+";");beancode.append("\r\n ");beancode.append("}");beancode.append("\r\n ");beancode.append("public void"+" set"+chargeMethod(ns[0])+"("+ns[1]+" "+ns[0]+"){");beancode.append("\r\n");beancode.append("this."+ns[0]+" = "+ns[0]+";");beancode.append("\r\n ");beancode.append("}");beancode.append("\r\n ");}beancode.append("\r\n");beancode.append("}");RandomAccessFile rf = new RandomAccessFile(f, "rw");rf.write(beancode.toString().getBytes("UTF-8"));rf.close();} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}}private String chargeMethod(String f){return f.substring(0, 1).toUpperCase()+f.substring(1);}public static void main(String args[]) {CreateBean cb = new CreateBean();ArrayList<String> elements = cb.readFile(System.getProperty("user.dir")+ "\\beanDepict\\interfacename");cb.createBean("interfacename", elements);}}

使用的时候准备一个文本文件 interfacename内容如下phoneNum java.lang.String手机号码 必须目前支持移动和联通放在beanDepict目录下运行后生成bean Req_interfacename.java

package com.business.reqbean;/**CreateBean自动生成代码*/public class Req_interfacename {    /**手机号码*/    /**目前支持移动和联通*/    private java.lang.String phoneNum;    public java.lang.String getPhoneNum(){        return phoneNum;    }    public void setPhoneNum(java.lang.String phoneNum){        this.phoneNum = phoneNum;    }    }

陪我们走过一段别人无法替代的记忆。

zymaxs的专栏

相关文章:

你感兴趣的文章:

标签云: