java声称实体类的代码 java声称实体类的代码有哪些

JAVA自动创建实体类工具?AutoJava 是一款免费java声称实体类的代码的,针对于Oracle和SQLserver数据库java声称实体类的代码的、以面向对象模式的Java代码生成工具 。AutoJava根据O/R Mapping规则生成表对应的Java对象,并且生成java声称实体类的代码了所有的添加、删除、修改、查询等底层数据库操作代码 。借助于AutoJava我们基本上不用再写与数据库相关的操作代码,只需要在此基础上实现相关的业务逻辑 , 将我们从重复的无太大技术含量的工作中解放出来 。
AutoJava 是我在工作中为java声称实体类的代码了省时间而写出来的一个小工具,希望AutoJava能给广大的Java人员在编码过程中节省时间 。这是地址
如何通过java反射将数据库表生成实体类首先有几点声明:
1、代码是在别人的基础进行改写的;
2、大家有什么改进的意见可以告诉我,也可以自己改好共享给其他人;
3、刚刚毕业,水平有限 , 肯定有许多不足之处;
4、希望刚刚学习java的同学能有所启发 。
//这个是做转换的类,里面的DB只是封装了数据库的连接 , 大家可以用自己的,随意
package com.tt.util.gen.entity.tool;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Properties;
import com.tt.util.DB;
public class GenEntityMysql {
private String packageOutPath;// 指定实体生成所在包的路径
private String authorName;// 作者名字
private String tablename;// 表名
private String databasename;// 数据库名
private ListString tablenames;// 拿到对应数据库中所有的实体类(实体类需要与其他表明做区分)
private ListString colnames; // 列名集合
private ListString colTypes; // 列名类型集合
private boolean f_util = false; // 是否需要导入包java.util.*
private boolean f_sql = false; // 是否需要导入包java.sql.*
/*
* 构造函数
*/
public GenEntityMysql() {
// 使用properties读取配置文件
Properties prop = new Properties();
try {
InputStream genentity = getClass().getResourceAsStream(
"/genentity.properties");
prop.load(genentity);
if (genentity != null) {
genentity.close();
}
} catch (Exception e) {
System.out.println("file " + "catalogPath.properties"
+ " not found!\n" + e);
}
this.databasename = prop.getProperty("databasename").toString();
this.tablename = prop.getProperty("tablename").toString();
this.packageOutPath = prop.getProperty("packageOutPath").toString();
this.authorName = prop.getProperty("authorName").toString();
}
// 创建多个实体类
private void genEntity(ListString tablenames, Connection conn) {
// 使用第归生成文件
for (String tablename : tablenames) {
this.genEntity(tablename, conn);
}
}
// 创建单个实体类
private void genEntity(String tablename, Connection conn) {
String sql = "select * from " + tablename;
PreparedStatement pstmt = null;
ResultSetMetaData rsmd = null;
try {
pstmt = DB.getPStmt(conn, sql);
rsmd = pstmt.getMetaData();
int size = rsmd.getColumnCount(); // 统计列
colnames = new ArrayListString();
colTypes = new ArrayListString();
for (int i = 0; isize; i++) {

推荐阅读