資源簡介
連oracle 數據庫,將指定表轉為java pojo 類 的
java demo
代碼片段和文件信息
/**
?*?a?generator?for?create?java?pojo?class?according?to?connected?db?tables?
?*?usage:?need?input?command?line?params?as?tableName(NOTE:??oracle‘s?tableName?
?*?is?always?uppercase!?)?
?*?example1:?>java?Table2Bean?TEST????example2:?>java?Table2Bean?T%
?*?@author?Charles?lei
?*/
import?java.io.FileWriter;
import?java.sql.Connection;
import?java.sql.DriverManager;
import?java.sql.PreparedStatement;
import?java.sql.ResultSet;
import?java.sql.SQLException;
import?java.sql.Statement;
import?java.util.ArrayList;
import?java.util.HashMap;
import?java.util.Iterator;
import?java.util.List;
import?java.util.Map;
public?class?Table2Bean?{
/**
?*?@param?args
?*/
public?static?void?main(String[]?args)?{
Connection?conn?=?null;
ResultSet?rs?=?null;
Statement?stmt?=?null;
PreparedStatement?pstmt?=?null;
List?tables?=?new?ArrayList();//?表名數組
Map?fields?=?new?HashMap();//?當前表字段數組
//List?fieldType?=?new?ArrayList();//?當前表字段類型數組
//?連數據庫
try?{
Class.forName(“oracle.jdbc.driver.OracleDriver“);
conn?=?DriverManager.getConnection(
“jdbc:oracle:thin:@100.100.100.52:1521:dbid“?“user_ID_has_dba_priva“
“passwd“);//?test
System.out.println(“db?connected.“);
}?catch?(Exception?ex)?{
ex.printStackTrace();
System.out.println(“error?in?connect?db.“);
}
//?獲得用戶所有的表結構信息
String?sql?=?“select??object_name?from?dba_objects?“
+?“where?object_name???like?‘“+args[0]+“‘?“
+?“and?object_type=‘TABLE‘?“?+?“and?owner=‘RHPC‘?“;//?test
try?{
stmt?=?conn.createStatement();
rs?=?stmt.executeQuery(sql);
while?(rs.next())?{
tables.add(rs.getString(1));
}
}?catch?(SQLException?ex)?{
ex.printStackTrace();
System.out.println(“error?in?query?data?:“?+?sql);
}
//?循環創建tableNamebean.java
sql?=?“select??COLUMN_NAME??DATA_TYPE?DATA_LENGTH?DATA_SCALE“
+?“?from?dba_tab_columns?a?“?+?“?where?table_name?=???“;
try?{
pstmt?=?conn.prepareStatement(sql);
String?tName?=?null;
String?fv;
for?(Iterator?it?=?tables.iterator();?it.hasNext();)?{
tName?=?it.next().toString();
pstmt.setString(1?tName);
//System.out.println(“create?file:“?+?sql);
rs?=?pstmt.executeQuery();
fields.clear();
while?(rs.next())?{
// String.format(format?args)“sdfsdf“.format(format?args)
f?=String.format(?“%10s“rs.getString(1)?)+“;?//“+
String.format(?“%10s“rs.getString(2)?)+““+
???rs.getString(3)+““+rs.getString(4);
v?=“NULL“;
if?(rs.get
- 上一篇:Javaweb學生信息管理系統
- 下一篇:一個仿QQ源代碼的代碼
評論
共有 條評論