自动生成bean
来源:互联网 发布:浙江大学网络教育学费 编辑:程序博客网 时间:2024/05/29 16:43
一个很简单的功能,用来自动生成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; } }
0 0
- 自动生成bean
- EJB 自动生成实体BEAN
- 使用FreeMarker自动生成bean
- Android Studio 自动生成 Gson bean
- java连接数据库自动生成bean
- MyEclipse自动生成映射文件Bean出现Bigdecimal
- mbyaits根据表自动生成bean,mapper,测试方法
- 自动生成bean层dao层以及xml层工具
- mybatis generator自动生成DAO、Bean、MapperXML等文件
- mybatis-generator自动生成dao、mapping、bean配置详解(转)
- Mybatis 如何自动生成bean dao xml 配置文件 generatorconfig.xml
- 配置maven ssm项目自动生成bean 访问不了数据库
- Android Studio 自动生成 Gson bean(json解析快捷方法)
- springboot(四) 用mybatis-generator自动生成bean和dao
- MyBatis Generator 自动生成Dao、Bean、Mapping相关
- from表单提交给action自动生成bean的方法
- SSM myBatis 配置及自动生成Bean 和 Dao
- springboot mybatis-generator自动生成bean和dao
- 使用花生棒穿透内网限制访问黑群辉NAS
- Magento创建CMS Page显示当前允许发货的国家名称,按字母排版.phtml文件
- iOS NSUserDefaults 简介
- expdp远程导入本地
- 远程实时调试手机上的web页面
- 自动生成bean
- java的堆与栈
- PHP递归算法的一个实例 帮助理解
- JSP页面用 JSTL 输出日期(Date)格式
- IntelliJ IDEA 快捷键
- 在Eclipse中新建Maven项目
- Eclipse安装SVN插件
- css样式加载顺序和覆盖顺序
- 【数据库系统概论】----关系数据库(一)