packagecom.lagou.test;importcom.lowagie.text.*;importcom.lowagie.text.rtf.RtfWriter2;importjava.awt.*;importjava.io.FileOutputStream;importjava.sql.*;importjava.util.List;importjava.util.*;/**
* 数据库文档生成器 Oracle版
* itext-2.1.7.jar
* itext-rtf-2.1.7.jar
*/publicclassGenerateTableDoc{
//键类型字典privatestaticMap<String,String> keyType =newHashMap<String,String>();//需要导出的目标表privatestaticList<String> targetTable =newArrayList<String>();static{
//需要生成的表
targetTable.add("TB_FEE_INFORMATION");
targetTable.add("TB_LOAN_SCHEME");
targetTable.add("TB_REGULATORY_REPORTING");
targetTable.add("TB_BUSINESS_APPLY");
targetTable.add("TB_BIZ_AMAPV_BBILLTX_DRAFT");
targetTable.add("TB_BIZ_BANK_ACCEPTANCE_BILL");
targetTable.add("TB_BIZ_AMAPV_BBILLTX_DTL");
targetTable.add("TB_BILL_MSG");}//初始化jdbcstatic{
try{
keyType.put("P","主键");// keyType.put("C", "Check");Class.forName("oracle.jdbc.OracleDriver");}catch(ClassNotFoundException e){
e.printStackTrace();}}privatestaticString url ="jdbc:oracle:thin:@localhost:1521:orcl";//链接urlprivatestaticString username ="root";//用户名.需要设置默认表空间哈privatestaticString password ="123456";//密码privatestaticString schema ="user";//目标数据库名//查询所有表的sql语句privatestaticString sql_get_all_tables ="select a.TABLE_NAME,b.COMMENTS from user_tables a,user_tab_comments b WHERE a.TABLE_NAME=b.TABLE_NAME order by TABLE_NAME";//查询所有字段的sql语句privatestaticString sql_get_all_columns ="select T1.column_name,T1.data_type,T1.data_length,t2.comments,T1.NULLABLE,(select max(constraint_type) from user_constraints x left join user_cons_columns y on x.constraint_name=y.constraint_name where x.table_name=t1.TABLE_NAME and y.COLUMN_NAME=T1.column_name) from user_tab_cols t1, user_col_comments t2, user_tab_comments t3 where t1.TABLE_NAME=t2.table_name(+) and t1.COLUMN_NAME=t2.column_name(+) and t1.TABLE_NAME=t3.table_name(+) and t1.TABLE_NAME='{table_name}' order by T1.COLUMN_ID ";publicstaticvoidmain(String[] args)throwsException{
//初始化word文档Document document =newDocument(PageSize.A4)