日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

生成pojo mysql_通过数据库表反向生成pojo类

發布時間:2025/4/16 数据库 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 生成pojo mysql_通过数据库表反向生成pojo类 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.ResultSetMetaData;

import java.sql.SQLException;

import com.onedear.util.database.DataBaseType;

/**

* 數據庫工具類

*

* @author onedear

* @data:2010-10-21 下午06:12:39

*/

public class DBUtil {

public static final int SQLSERVER = 1;

public static final int MYSQL = 2;

public static final int ORACLE = 3;

private static final String LINE = "\r\n";

private static final String TAB = "\t";

/**

* 用于調試,懶得寫相應的參數

*

* @return

* @throws SQLException

* @throws ClassNotFoundException

*/

public static Connection getConnection() throws ClassNotFoundException, SQLException {

return getConnection("192.168.0.161:1997", "ETForMonitor_V2", "sa",

"password", DBUtil.SQLSERVER);

}

/**

*

* 通過jdbc獲取相應的數據庫鏈接connection

*

* @param ipport

* ip+port ,eg.: 192.168.0.161:1997

* @param dbName

* databaseName ,eg. : ETForMonitor_V2

* @param username

* eg.:sa

* @param password

* eg. :password

* @param type

* 請看本類的靜態變量

* @return

* @throws ClassNotFoundException

* @throws SQLException

*/

public static Connection getConnection(String ipport, String dbName,

String username, String password, int type)

throws ClassNotFoundException, SQLException {

String jdbcString = null;

if (type == SQLSERVER) {

jdbcString = "jdbc:jtds:sqlserver://" + ipport + ";databaseName="

+ dbName;

Class.forName("net.sourceforge.jtds.jdbc.Driver");

} else if (type == MYSQL) {

jdbcString = "jdbc:mysql://" + ipport + "/" + dbName;

Class.forName("org.gjt.mm.mysql.Driver");

} else if (type == ORACLE) {

jdbcString = "jdbc:oracle:thin:@" + ipport + ":" + dbName;

Class.forName("oracle.jdbc.driver.OracleDriver");

}

Connection connection = null;

connection = DriverManager

.getConnection(jdbcString, username, password);

return connection;

}

/**

* 數據庫表生成相應的java類,生成規則

* 類名= 表名(第一個字母大寫)

* 屬性名= 數據庫列名

* get/set方法 = 根據標準生成

* 其中生成的基本類型均為包裝類,例如Integer , Long , Boolean , String

* @param connection

* @param tableName

* @param dbType

* @param path

* @param isCreateFile

* @return

* @throws SQLException

*/

public static String table2pojo(Connection connection, String tableName,

int dbType, String path , boolean isCreateFile) throws SQLException {

String sql = "select * from " + tableName + " where 1 <> 1";

PreparedStatement ps = null;

ResultSet rs = null;

ps = connection.prepareStatement(sql);

rs = ps.executeQuery();

ResultSetMetaData md = rs.getMetaData();

int columnCount = md.getColumnCount();

StringBuffer sb = new StringBuffer();

tableName = tableName.substring(0, 1).toUpperCase() +tableName.subSequence(1, tableName.length());

sb.append("public class " + tableName + " {");

sb.append(LINE);

for (int i = 1; i <= columnCount; i++) {

sb.append(TAB);

sb.append("private "

+ DataBaseType.getPojoType(md.getColumnTypeName(i)) + " "

+ md.getColumnName(i) + ";");

// System.out.println("name : " + md.getColumnName(i) +

// " , type :"

// + md.getColumnTypeName(i));

sb.append(LINE);

}

for (int i = 1; i <= columnCount; i++) {

sb.append(TAB);

String pojoType = DataBaseType.getPojoType(md.getColumnTypeName(i));

String columnName = md.getColumnName(i);

String getName = null;

String setName = null;

if (columnName.length() > 1) {

getName = "public "+pojoType+" get" + columnName.substring(0, 1).toUpperCase()

+ columnName.substring(1, columnName.length()) + "() {";

setName = "public void set" + columnName.substring(0, 1).toUpperCase()

+ columnName.substring(1, columnName.length()) + "("

+ pojoType + " " + columnName + ") {";

} else {

getName = "public get" + columnName.toUpperCase() + "() {";

setName = "public set" + columnName.toUpperCase() + "(" + pojoType

+ " " + columnName + ") {";

}

sb.append(LINE).append(TAB).append(getName);

sb.append(LINE).append(TAB).append(TAB);

sb.append("return " + columnName +";");

sb.append(LINE).append(TAB).append("}");

sb.append(LINE);

sb.append(LINE).append(TAB).append(setName);

sb.append(LINE).append(TAB).append(TAB);

sb.append("this." + columnName + " = " + columnName +";" );

sb.append(LINE).append(TAB).append("}");

sb.append(LINE);

}

sb.append("}");

System.out.println(sb.toString());

if(isCreateFile)

FileUtils.stringToFile(null,tableName +".java" , sb.toString());

return null;

}

public static void main(String[] args) throws SQLException, ClassNotFoundException {

Connection con = getConnection();

table2pojo(con, "PlayBackVisitorControl", DBUtil.SQLSERVER, "" , true);

}

}

總結

以上是生活随笔為你收集整理的生成pojo mysql_通过数据库表反向生成pojo类的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 天堂视频在线免费观看 | 亚洲美女毛片 | 狠狠干天天色 | 禁网站在线观看免费视频 | 欧美精品久久天天躁 | 蜜桃传媒一区二区亚洲av | eeuss一区二区 | 一区二区网 | 国产免费又黄又爽又色毛 | 五月网婷婷| 中文黄色片 | 自拍av在线 | 欧美性爱精品一区 | 97久久免费视频 | 毛片在哪看 | 中文字幕日韩欧美在线 | 国产一级二级三级 | 国产精品电影在线观看 | 午夜寂寞少妇 | 波多野结衣中文字幕在线播放 | 草色网 | 老司机性视频 | 欧美中文在线观看 | 在线观看高清av | 日韩亚洲精品在线 | 中国老熟妇自拍hd发布 | 青青伊人av | 久久精品国产亚洲7777 | 中文字幕免费播放 | 国产网站一区 | 91情侣在线| 男女爱爱福利视频 | 男女做的视频 | 国产女18毛片多18精品 | 国产又粗又猛又爽又黄的视频小说 | 四虎在线观看视频 | 天天射天天干 | 国产综合无码一区二区色蜜蜜 | 麻豆精品国产传媒mv男同 | 一区二区三区日本视频 | 国产免费一区二区三区最新不卡 | 精品国产aⅴ一区二区三区东京热 | 日韩伦乱 | 噜噜噜精品欧美成人 | 操极品| 中文字幕在线一区 | 少妇脱了内裤让我添 | 九色国产精品 | 亚洲情射 | 99精品欧美一区二区 | 在线精品小视频 | 免费裸体美女网站 | 亚洲一区二区三区日韩 | 少妇高潮21p | julia一区二区三区在线观看 | 无码国产精品一区二区色情男同 | 亚洲av久久久噜噜噜噜 | 亚洲桃色av | 国产夜夜操 | 一区二区传媒有限公司 | 狠狠干在线观看 | 国产精品我不卡 | 欧美aaaaaaaaa| 伊人久操视频 | 少妇又色又爽又黄的视频 | 97精品视频| 国产露脸91国语对白 | 日韩一区二区三区不卡视频 | 国产乱强伦一区二区三区 | 在线观看免费视频一区二区 | 天海翼中文字幕 | 好吊妞一区二区三区 | 成av人片在线观看www | 国产人成一区二区三区影院 | 日韩av不卡一区 | 亚洲av色一区二区三区精品 | 天堂男人网 | wwwxxxx欧美| 欧美人与禽zozzo禽性配 | 奇米影视奇米色 | 成人影视免费 | 日韩在线一级片 | 国产成人精品av久久 | 久久精品操 | 国产电影免费观看高清完整版视频 | www.爱色av.com| 91国偷自产中文字幕久久 | 中文字幕在线观看免费高清 | 99re在线播放 | 91丝袜美女 | 好爽…又高潮了毛片免费看 | 人妻大战黑人白浆狂泄 | 免费毛片一区二区三区 | 欧美高清一区 | 在线观看特色大片免费网站 | 欧美a级在线| 精品九九在线 | 日韩精品二区在线观看 | 3p在线视频 |