导出数据库中的表为PDF格式(freemark+jdbc+springMVC)
来源:互联网 发布:lte中mr优化案例 编辑:程序博客网 时间:2024/06/07 00:55
导出数据库中的表为PDF格式(freemark+jdbc+springMVC)一、点击页面左侧菜单栏超链接到数据库中查询所有表 1、ftl页面 <li><a href="${basePath}/user/index.shtml"><i class="fa fa-home"></i> <span>表</span></a></li>2、controller中@RequestMapping("user") public class UserCoreController extends BaseController { @RequestMapping(value="index",method=RequestMethod.GET) public ModelAndView userIndex(ModelMap map) { List list = new DBoperator().findAllTable();//调用数据库操作类查询数据库所有表 List<Tables> tables = new ArrayList(); //把查询出来的list保存到类型为Tables的List中 for (int i = 0; i < list.size(); i++) { Tables table = new Tables(); table.setTableName(list.get(i).toString()); tables.add(table); } map.put("tables", tables); return new ModelAndView("user/index"); }} 3、查询出的数据显示到ftl页面中: <h1 align="center">导出报表为PDF文档</h1> <table class="table table-striped table-hover table-bordered" id="editable-sample"> <thead> <tr> <th>tableName</th><tr> </thead> <tbody> <#list tables as tb> <tr class=""> <td><a href='ExportPDFServlet?tableName=${tb.tableName?default('未设置')}'>${tb.tableName?default('未设置')}</a></td> </tr> </#list> </tbody> </table> 二、点击每一个表名字,把该表导出为PDF格式 1、pom.xml中添加依赖包 <!--PDF生成jar包 --> <dependency> <groupId>com.itextpdf</groupId> <artifactId>itextpdf</artifactId> <version>5.5.6</version> </dependency> <dependency> <groupId>com.itextpdf.tool</groupId> <artifactId>xmlworker</artifactId> <version>5.5.6</version> </dependency> <dependency> <groupId>com.itextpdf</groupId> <artifactId>itext-asian</artifactId> <version>5.2.0</version> </dependency> 2、web.xml中配置href要请求类的路径 <servlet> <servlet-name>ExportPDFServlet</servlet-name> <servlet-class>com.sojson.user.ExportPDFServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>ExportPDFServlet</servlet-name> <url-pattern>/ExportPDFServlet</url-pattern> </servlet-mapping> 3、生成PDF的工具类 package com.sojson.common.utils;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.List;/** * * * @author Administrator Apr 7, 2017 9:55:31 AM * @version 1.0 */public class DBoperator { public Connection getConnection() { Connection con = null; String user = "root"; String password = "aA123456"; try { Class.forName("com.mysql.jdbc.Driver"); // 注册数据库驱动 String url = "jdbc:mysql://127.0.0.1:3306/settlement_system"; // settlement_system数据库名 con = DriverManager.getConnection(url, user, password); } catch (Exception ex) { ex.printStackTrace(); } return con; } // (3)在DBoperator类中编写findAllTable()方法,查询出数据库中的表名称,关键代码如下所示: public List findAllTable() { Connection con = null; // 声明Connection对象 Statement st = null; // 声明Statement对象 ResultSet rs = null; // 声明ResultSet对象 List list = new ArrayList(); // 声明List对象 try { con = getConnection(); // 获取数据库连接 st = con.createStatement(); // 创建st对象 rs = st.executeQuery("show tables");// 执行SQL语句 while (rs.next()) { // 遍历结果集 list.add(rs.getString(1)); // 将表名称加入list列表 } rs.close(); // 关闭rs st.close(); // 关闭st con.close(); // 关闭conn } catch (Exception e) { e.printStackTrace(); } finally { con = null; } return list; // 返回list列表 } // (4)在DBoperator类中编写getResultSet()方法,用于跟据表名称查询表中信息,并获取查询结果集,关键代码如下所示: public ResultSet getResultSet(String tableName) { Connection con = null; // 声明Connection对象 Statement st = null; // 声明Statement对象 ResultSet rs = null; // 声明Resultset对象 try { con = getConnection(); // 获取数据库连接 st = con.createStatement(); // 创建st对象 rs = st.executeQuery("SELECT * FROM " + tableName);// 执行SQL语句 } catch (Exception e) { e.printStackTrace(); } return rs; // 返回rs对象 } // (5)在DBoperator类中编写freeCon()方法,用于释放数据库连接,关键代码如下所示: public void freeCon(ResultSet rs) { Connection con = null; try { Statement st = rs.getStatement(); // 获取st对象 con = st.getConnection(); // 获取con对象 rs.close(); // 关闭rs对象 st.close(); // 关闭st对象 con.close(); // 关闭con对象 } catch (SQLException ex) { ex.printStackTrace(); } finally { con = null; } }}
0 0
- 导出数据库中的表为PDF格式(freemark+jdbc+springMVC)
- freemark模板导出pdf
- Echarts导出为pdf格式
- 报表导出为CVS,pdf格式文件格式
- 使用freeMark作为模板导出pdf
- 使用PL/SQL导出数据库表中的数据为excel格式
- Extjs4.0+HSSFWorkbook+SpringMVC实现将数据库中的记录导出到本地Excel格式
- SSIS_数据库表数据导出为XML格式
- 水晶报表导出为pdf, word , excel 格式(已经测试过,实现了该功能)
- 水晶报表导出为word,excel和pdf格式
- 水晶报表导出为word,excel和pdf格式
- VSTO导出文件为pdf、xps等格式
- struts2 + freemark + itext 导出pdf(基于模板方式)
- 基于flying-saucer和freemark实现HTML导出pdf
- 【SpringMVC之FreeMark(二)】FreeMark指令使用教程
- 将Oracle数据库中的数据导出为txt格式(方法2:)
- Echarts导出为pdf
- 把报表导出PDF格式
- Android实现倒计时功能
- 给ProgressBar 设置圆形进度条颜色
- Xposed入门浅析
- oracle dead lock
- 帧动画的实现
- 导出数据库中的表为PDF格式(freemark+jdbc+springMVC)
- 自己编写的纯CSS3的动画代码
- java 代理 中庸之道
- Jacob内存溢出问题,已经CPU爆满问题
- 【LeetCode】Kth Smallest Element in a BST 解题报告
- logo设计的30种技巧
- readline的使用
- Netty实现简单网络通信
- LoadRunner性能测试初步认识