首页
Web开发
Windows程序
编程语言
数据库
移动开发
系统相关
微信
其他好文
会员
首页
>
数据库
> 详细
word 进行数据库 获取数据
时间:
2014-12-18 17:03:21
阅读:
210
评论:
0
收藏:
0
[点我收藏+]
标签:
数据库
doc
/**
* Word导出
* @throws DocumentException
*/
public void exeportWord() throws DocumentException{
//放到tomcat下
String formName="word";
String pathName=ServletActionContext.getRequest().getSession().getServletContext().getRealPath("")+"\\export\\"+formName+".doc";
//4.1定义表头
String tableName="T_USER";
String tableCName = selectDataService.getString("select comments from user_tab_comments where table_name =‘"+tableName+"‘");
//4.2获取表的中文注释
List<Map> list=selectDataService.queryForList("select t.column_name,t.comments from user_col_comments t where table_name =‘"+tableName+"‘");
//4.2 创建一个list
List<String> columns=new ArrayList<String>();
Map<String, String> colmap=new TreeMap<String, String>();
for (Map map:list) {
//把数据库里的注释取出来,放到columns里
columns.add(map.get("COMMENTS").toString());
//把數據庫的中文注釋放到map集合中
colmap.put(map.get("COMMENTS").toString(), map.get("COLUMN_NAME").toString());
}
FileOutputStream outputStream=null;
Document document=null;
try {
//创建输出流
outputStream=new FileOutputStream(pathName);
//创建document对象
document=new Document(PageSize.A4);
//输出流 与document 进行关联
RtfWriter2.getInstance(document, outputStream);
//打开document
document.open();
//定义字体
BaseFont createFont = BaseFont.createFont("STSong-Light","UniGB-UCS2-H",BaseFont.NOT_EMBEDDED);
Font font=new Font(createFont,10,Font.BOLD);
//写入字体
Paragraph paragraph=new Paragraph("用户管理",font);
//把他放到中间
paragraph.setAlignment("center");
//保存到document
document.add(paragraph);
//换行
document.add(new Paragraph("\n",font));
// 从数据库里取出所有数据
List<Map> dataList=selectDataService.queryForList("select * from "+tableName);
//写表格
PdfPTable pdf= new PdfPTable(columns.size());
PdfPCell cell=null;
//创建表格
for(int i=0;i<11;i++){
String zhang = columns.get(i);
cell=new PdfPCell(new Phrase(zhang, font));
pdf.addCell(cell);
}
for (int i = 0; i < dataList.size(); i++) {
//获取一行一行的数据
Map cols=dataList.get(i);
//j循环是循环一条数据里的每个值
for (int j = 0; j < cols.size(); j++) {
//放到每个单元格里
String fangyuange = columns.get(j);
//去英文字段
String ing = colmap.get(fangyuange);
//放到列种
Object value = cols.get(ing);
//创建单元格(通过行)放进单元格
cell = new PdfPCell(new Phrase(""+value,font));
pdf.addCell(cell);
}
}
document.add(pdf);
//
ServletActionContext.getResponse().getWriter().write("ok");
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
document.close();
try {
outputStream.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
FileUtil.downloadFile(ServletActionContext.getRequest(), ServletActionContext.getResponse(), pathName, formName+".doc"); //看图片
//
return null;
}
word 进行数据库 获取数据
标签:
数据库
doc
原文地址:http://blog.csdn.net/zh_cinderella/article/details/42005965
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年07月29日 (22)
2021年07月28日 (40)
2021年07月27日 (32)
2021年07月26日 (79)
2021年07月23日 (29)
2021年07月22日 (30)
2021年07月21日 (42)
2021年07月20日 (16)
2021年07月19日 (90)
2021年07月16日 (35)
周排行
更多
数据库进阶
2021-07-29
在 Oracle 数据库中执行 SQL 语句遇到特殊字符的转义方式
2021-07-28
Windows Logstash同步 Sqlserver 到Elasticsearch
2021-07-26
mysql数据库(11):恢复数据
2021-07-26
mysql数据库(9):常用查询的例子
2021-07-26
SQLAlchemy 多对多
2021-07-26
ClickHouse的JDBC连接
2021-07-26
Apache HBase 1.7.1 发布,分布式数据库
2021-07-26
数据库常用架构和同步工作原理
2021-07-26
MySQL数据库设计规范(仅供参考)
2021-07-26
友情链接
兰亭集智
国之画
百度统计
站长统计
阿里云
chrome插件
新版天听网
关于我们
-
联系我们
-
留言反馈
© 2014
mamicode.com
版权所有 联系我们:gaon5@hotmail.com
迷上了代码!