-
大小: 2.03MB文件類型: .rar金幣: 2下載: 0 次發(fā)布日期: 2023-10-25
- 語言: 數(shù)據(jù)庫
- 標簽: 數(shù)據(jù)庫??Word文檔??
資源簡介
mysql數(shù)據(jù)庫,生成Word文檔,表結(jié)構(gòu),含注釋,簡單,易用

代碼片段和文件信息
package?test;
import?java.awt.Color;
import?java.io.FileOutputStream;
import?java.sql.Connection;
import?java.sql.DriverManager;
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;
import?com.lowagie.text.Cell;
import?com.lowagie.text.Document;
import?com.lowagie.text.PageSize;
import?com.lowagie.text.Paragraph;
import?com.lowagie.text.Table;
import?com.lowagie.text.rtf.RtfWriter2;
/**
?*?數(shù)據(jù)字典生成器?Mysql
?*?
?*?@author?Eric?zhou
?*?
?*/
public?class?Test?{
//?鍵類型字典
private?static?Map?keyType?=?new?HashMap();
//?初始化jdbc
static?{
try?{
keyType.put(“PRI“?“主鍵“);
keyType.put(“UNI“?“唯一鍵“);
Class.forName(“com.mysql.jdbc.Driver“);
}?catch?(ClassNotFoundException?e)?{
e.printStackTrace();
}
}
private?static?String?url?=?“jdbc:mysql://192.168.0.16:3316/test?useUnicode=true&characterEncoding=UTF-8“;//?鏈接url
private?static?String?username?=?“root“;?//?用戶名
private?static?String?password?=?“123456“;?//?密碼
private?static?String?schema?=?“test“;?//?目標數(shù)據(jù)庫?名
//?查詢所有表的sql語句
private?static?String?sql_get_all_tables?=?“select?table_nametaBLE_COMMENT?from?INFORMATION_SCHEMA.tables?where?TABLE_SCHEMA=‘“?+?schema?+?“‘?and?TABLE_TYPE=‘base?TABLE‘“;
//?查詢所有字段的sql語句
private?static?String?sql_get_all_columns?=?“select?column_namedata_typecharacter_octet_lengthCOLUMN_COMMENTis_nullableCOLUMN_key?from?information_schema.‘COLUMNS‘?where?TABLE_NAME=‘{table_name}‘?and?TABLE_SCHEMA=‘“?+?schema?+?“‘“;
public?static?void?main(String[]?args)?throws?Exception?{
//?初始化word文檔
Document?document?=?new?Document(PageSize.A4);
RtfWriter2.getInstance(document?new?FileOutputStream(“E:/test.doc“));//生成目錄
document.open();
//?查詢開始
Connection?conn?=?getConnection();
//?獲取所有表
List?tables?=?getDataBySQL(sql_get_all_tables?conn);
int?i?=?1;
for?(Iterator?iterator?=?tables.iterator();?iterator.hasNext();)?{
String[]?arr?=?(String[])?iterator.next();
//?循環(huán)獲取字段信息
System.out.print(i?+?“.正在處理數(shù)據(jù)表-----------“?+?arr[0]);
addTablemetaData(document?arr?i);
List?columns?=?getDataBySQL(sql_get_all_columns.replace(“{table_name}“?arr[0])?conn);
addTableDetail(document?columns);
addBlank(document);
System.out.println(“...done“);
i++;
}
document.close();
conn.close();
}
/**
?*?添加一個空行
?*?
?*?@param?document
?*?@throws?Exception
?*/
public?static?void?addBlank(Document?document)?throws?Exception?{
Paragraph?ph?=?new?Paragraph(““);
ph.setAlignment(Paragraph.ALIGN_LEFT);
document.add(ph);
}
/**
?*?添加包含字段詳細信息的表格
?*?
?*?@param?document
?*?@param?arr1
?*?@param?columns
?*?@throws?Exception
?*/
public?static?void?addTableDetail(Document?document?List?columns)?throws?Exception?{
Table?table?=?new?Table(6);
table
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????2243307??2017-12-25?10:12??itext-4.2.1.jar
?????文件???????6958??2018-04-09?11:07??Test.java
-----------?---------??----------?-----??----
??????????????2250265????????????????????2
評論
共有 條評論