يشارك هذا المثال معك كيفية تصدير جميع جداول قاعدة البيانات في Excel للرجوع إليها. المحتوى المحدد كما يلي
الخطوة 1: كيفية تشغيل Excel مع POI
Test public void createxls () يلقي استثناء {// إعلان مصنف HSSFWorkbook WB = جديد HSSFWorkBook () ؛ // DECLARE TABLE HSSFSHEET sheet = WB.CREATESTET ("الجدول الأول") ؛ // DECLARE ROW HSSFROW ROW = sheet.createRow (7) ؛ // DECLARE COLUME HSSFCELL CEL = ROW.CREATECELL (3) ؛ // كتابة البيانات cel.setCellValue ("أنت جيد أيضًا") ؛ fileOutputStream fileOut = new FileOutputStream ("d: /a/b.xls") ؛ wb.write (fileOut) ؛ fileout.close () ؛ }الخطوة 2: تصدير جميع جداول قاعدة البيانات المحددة
تحليل:
1: كم عدد الجداول التي تحتوي عليها قاعدة بيانات أرقام معينة وما هو اسم الجدول؟ databasemetadate.getMetAdate (). - اسم ملف Excel.
2: قم بإجراء عملية تحديد * على كل جدول. - اسم كل ورقة.
3: تحليل هيكل الجدول ، Rs.GetMetAdate () ؛ النتيجة
4: أعمدة متعددة ، ما هي أسماء الأعمدة؟ - اسم الحقل هو معلومات الصف الأول للورقة.
5: احصل على بيانات كل صف ووضعها في الصف الأول من الورقة.
Test public void export () يلقي الاستثناء {// إعلان قاعدة البيانات التي تحتاج إلى تصدير السلسلة dbname = "Focus" ؛ // DECLARE BOOK HSSFWORKBOOK BOOK = NEW HSSFWORKBOOK () ؛ // احصل على اتصال ، احصل على اتصال البيانات الوصفية dB con = dataSourceUtils.getConn () ؛ // بيان بيان st = con.createstatement () ؛ //st.execute("use "+dbname) ؛ databasemetadata dmd = con.getMetAdata () ؛ // احصل على عدد الجداول التي تحتوي قاعدة البيانات على rs = dmd.getTables (dbname ، dbname ، null ، string [] {"table"}) ؛ // احصل على جميع أسماء الجدول - إنها قائمة ورقة <string> tables = new ArrayList <String> () ؛ بينما (rs.next ()) {String tablename = rs.getString ("table_name") ؛ Tables.Add (tablename) ؛ } لـ (String tablename: tables) {hssfsheet sheet = book.createsheet (tablename) ؛ // DECLARE SQL String SQL = "SELECT * from"+dbname+"."+tablename ؛ // بيانات الاستعلام rs = St.Executequery (SQL) ؛ // تحليل البيانات الوصفية لمجموعة النتائج استنادًا إلى resultStEmtAdata rsmd = rs.getMetAdata () ؛ // احصل على عدد الصفوف الموجودة في هذا الاستعلام int cols = rsmd.getColumnCount () ؛ // احصل على جميع أسماء الأعمدة // إنشاء الصف الأول HSSFrow Row = sheet.createRow (0) ؛ لـ (int i = 0 ؛ i <cols ؛ i ++) {string colname = rsmd.getColumnName (i+1) ؛ // إنشاء عمود جديد HSSFCell Cell = row.createcell (i) ؛ // كتابة اسم العمود cell.setCellValue (colname) ؛ } // نقل بيانات int = 1 ؛ بينما (rs.next ()) {row = sheet.createrW (index ++) ؛ // DECRAY COLMENT لـ (int i = 0 ؛ i <cols ؛ i ++) {string val = rs.getString (i+1) ؛ // DECLARE COLUME HSSFCELL CEL = ROW.CREATECELL (I) ؛ // post data cel.setCellValue (val) ؛ }}} con.close () ؛ book.write (fileOutputStream جديد ("d:/a/"+dbname+". xls")) ؛ }ما سبق هو كل شيء عن هذا المقال ، آمل أن يكون مفيدًا لتعلم الجميع.