資源簡介
文件包含一個工具類,是mysql數據庫表生成實體工具類,壓縮文件中有相關jar包。目前符合我的日常需要,有缺陷的地方大家一起補充.....歡迎留言,謝謝

代碼片段和文件信息
/**
?*?@(#)?GenEntityMysql.java 2017-2-8?下午3:06:18
?*?
?*?Copyright?(c)?2014-2015?Diyvc?Inc.
?*?103?Sports?Road?Victoria?Plaza?tower?1104?Tianhe?District?Guangzhou?City?China.
?*?All?rights?reserved.
?*
?*/
package?com.frend.controller;
import?java.io.File;
import?java.io.FileWriter;
import?java.io.IOException;
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;
public?class?Mysql2EntityGenerator?{
private?String?packageOutPath?=?“com.test.domain“;//指定實體生成所在包的路徑
private?String?authorName?=?“frend“;//作者名字
private?String?tablename?=?““;//表名
private?String[]?colnames;?//?列名數組
private?String[]?colTypes;?//列名類型數組
private?int[]?colSizes;?//列名大小數組
private?boolean?f_util?=?false;?//?是否需要導入包java.util.*
private?boolean?f_sql?=?false;?//?是否需要導入包java.sql.*
????
????//數據庫連接
private?static?final?String?URL?=“jdbc:mysql://127.0.0.1:3306/sqlname“;
private?static?final?String?NAME?=?“root“;
private?static?final?String?PASSWORD?=?“root“;
private?static?final?String?DRIVER?=“com.mysql.jdbc.Driver“;
/*
?*?構造函數
?*/
public?Mysql2EntityGenerator(Connection?conString?tableName){
this.tablename?=?tableName;
???? //創建連接
//查要生成實體類的表
???? String?sql?=?“select?*?from?“?+?tablename;
???? PreparedStatement?pStemt?=?null;
???? try?{
????
pStemt?=?con.prepareStatement(sql);
ResultSetmetaData?rsmd?=?pStemt.getmetaData();
int?size?=?rsmd.getColumnCount(); //統計列
colnames?=?new?String[size];
colTypes?=?new?String[size];
colSizes?=?new?int[size];
for?(int?i?=?0;?i? colnames[i]?=?rsmd.getColumnName(i?+?1);
colTypes[i]?=?rsmd.getColumnTypeName(i?+?1);
if(colTypes[i].equalsIgnoreCase(“datetime“)){
f_util?=?true;
}
if(colTypes[i].equalsIgnoreCase(“image“)?||?colTypes[i].equalsIgnoreCase(“text“)){
f_sql?=?true;
}
colSizes[i]?=?rsmd.getColumnDisplaySize(i?+?1);
}
String?content?=?parse(colnamescolTypescolSizes);
try?{
File?directory?=?new?File(““);
String?outputPath?=?directory.getAbsolutePath()+?“/src/“+this.packageOutPath.replace(“.“?“/“)+“/“+parseName(tablename)?+?“.java“;
FileWriter?fw?=?new?FileWriter(outputPath);
PrintWriter?pw?=?new?PrintWriter(fw);
pw.println(content);
pw.flush();
pw.close();
}?catch?(IOException?e)?{
e.printStackTrace();
}
}?catch?(SQLException?e)?{
e.printStackTrace();
}?finally{
}
????}
/**
?*?功能:生成實體類主體代碼
?*?@param?colnames
?*?@param?colTypes
?*?@param?colSizes
?*?@return
?*/
private?String?parse(String[]?colnames?String[]?colTypes?int[]?colSizes)?{
StringBuffer?sb?=?new?StringBuffer();
sb.append(“pac
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2017-02-16?13:53??數據庫表映射實體生成\
?????文件??????709922??2016-10-17?10:08??數據庫表映射實體生成\mysql-connector-java-5.1.7-bin.jar
?????文件????????9289??2017-02-16?13:51??數據庫表映射實體生成\Mysql2EntityGenerator.java
評論
共有 條評論