网站模板库
  • 首页
  • web前端工具
    • HTML/JS转换工具
    • JS/HTML格式化工具
    • 字母/英文大小写转换工具
    • robots.txt文件生成工具
    • Js压缩/格式化工具
    • Css在线压缩工具_代码格式化
  • 关于我们
    • 免责声明
    • 联系我们
    • 广告服务
    • 服务项目
    • 关于我们
    • 网站轮播
    • 公告
    • 成都优优科技专用
    • 按行业分类
  • web学院
    • 服务器教程
    • 学习资料
      • 基础书籍
      • 交互书籍
      • 入门教程
      • 特效分类
    • 案例分享
    • web资讯
  • 网页特效
    • 图片特效
    • 导航特效
    • 滑动按钮
    • 表单特效
    • 文字特效
    • 弹窗特效
    • 其他特效
  • 织梦模板
    • 科技/电子/数码/通信
    • 文化/艺术/广告/传媒
    • 装修/设计/家居/家具
    • 基建/施工/地产/物业
    • 餐饮/酒店/旅游/票务
    • 食品/果蔬/饮料/日用
    • 服饰/珠宝/礼品/玩具
    • 摄影/婚庆/家政/生活
    • 运动/健身/体育/器材
    • 学校/教育/培训/科研
    • 美容/保健/医院/医疗
    • 金融/财税/咨询/法律
    • 政府/组织/集团/协会
    • 汽车/物流/交通/搬运
    • 机械/设备/制造/仪器
    • 化工/环保/能源/材料
    • 农业/畜牧/养殖/宠物
    • 其他模版
    • IT/软件/信息/互联网
  • 手机模板
    • 手机APP模板
    • 微信小程序模板
    • wap
  • 网站模板
    • joomla模板
    • Drupal模板
    • z-blog模板
    • EyouCms模板
    • Bootstrap模板
    • 帝国cms模板
    • CmsEasy模板
    • MetInfo模板
    • 购物商城模板
      • Shopify主题
      • PrestaShop主题
    • 后台模板
    • 纯HTML模板
    • ecshop模板
    • phpwind模板
    • pbootcms模板
    • phpcms模板
    • wordpress模板
    • discuz模板
  • 教程
    • 织梦教程
    • Discuz教程
    • WordPress教程
    • Phpcms教程
    • Phpwind教程
    • ECShop教程
    • Joomla教程
    • Drupal教程
    • zblog教程
    • EyouCMS教程
    • 帝国cms教程
    • MetInfo教程
    • CmsEasy教程
登录
当前位置:网站模板库 > web学院 > 服务器教程 > springmvc poi 导出word 复选框 怎么用
商业源码 服务器教程 2024-01-02 12:07:01

springmvc poi 导出word 复选框 怎么用

springmvc poi 导出word 复选框 怎么用,第1张

Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能。

这里的方法支持导出excel至项目所在服务器,或导出至客户端浏览器供用户下载,下面我把两个实例都放出来。

1下载所需POI的jar包,并导入项目。

2添加一个User类,用于存放用户实体,类中内容如下:

1 package commvcpo;

2

3 public class User {

4 private int id;

5 private String name;

6 private String password;

7 private int age;

8

9 public User() {

10

11 }

12

13 public User(int id, String name, String password, int age) {

14 thisid = id;

15 thisname = name;

16 thispassword = password;

17 thisage = age;

18 }

19 public int getId() {

20 return id;

21 }

22 public void setId(int id) {

23 thisid = id;

24 }

25 public String getName() {

26 return name;

27 }

28 public void setName(String name) {

29 thisname = name;

30 }

31 public String getPassword() {

32 return password;

33 }

34 public void setPassword(String password) {

35 thispassword = password;

36 }

37 public int getAge() {

38 return age;

39 }

40 public void setAge(int age) {

41 thisage = age;

42 }

43 }

3添加一个UserController类,类中内容如下:

1 package commvccontroller;

2

3 import javatextSimpleDateFormat;

4 import javautilDate;

5

6 import javaxservletServletOutputStream;

7 import javaxservlethttpHttpServletResponse;

8

9 import orgspringframeworkstereotypeController;

10 import orgspringframeworkbeansfactoryannotationAutowired;

11 import orgspringframeworkwebbindannotationRequestMapping;

12 import orgspringframeworkwebbindannotationResponseBody;

13

14 import commvcpoUser;

15 import commvcserviceUserService;

16

17 @Controller

18 public class UserController {

19

20 @Autowired

21 private UserService userService;

22

23 @RequestMapping("/exportdo")

24 public @ResponseBody String export(HttpServletResponse response){

25 responsesetContentType("application/binary;charset=UTF-8");

26 try{

27 ServletOutputStream out=responsegetOutputStream();

28 String fileName=new String(("UserInfo "+ new SimpleDateFormat("yyyy-MM-dd")format(new Date()))getBytes(),"UTF-8");

29 responsesetHeader("Content-disposition", "attachment; filename=" + fileName + "xls");

30 String[] titles = { "用户编号", "用户姓名", "用户密码", "用户年龄" };

31 userServiceexport(titles, out);

32 return "success";

33 } catch(Exception e){

34 eprintStackTrace();

35 return "导出信息失败";

36 }

37 }

38 }

4添加一个接口类UserService和实现类UserServiceImpl,类中内容如下:

1 package commvcservice;

2

3 import javaxservletServletOutputStream;

4 import commvcpoUser;

5

6 public interface UserService {

7 public void export(String[] titles, ServletOutputStream out);

8 }

1 package commvcserviceimpl;

2

3 import javatextSimpleDateFormat;

4 import javautilList;

5

6 import javaxservletServletOutputStream;

7

8 import commvcdaoUserDAO;

9 import commvcpoUser;

10 import commvcserviceUserService;

11

12 import orgapachepoihssfusermodelHSSFCell;

13 import orgapachepoihssfusermodelHSSFCellStyle;

14 import orgapachepoihssfusermodelHSSFRow;

15 import orgapachepoihssfusermodelHSSFSheet;

16 import orgapachepoihssfusermodelHSSFWorkbook;

17 import orgspringframeworkbeansfactoryannotationAutowired;

18 import orgspringframeworkstereotypeService;

19

20 @Service

21 public class UserServiceImpl implements UserService {

22

23 @Autowired

24 private UserDAO userDAO;

25

26 @Override

27 public void export(String[] titles, ServletOutputStream out) {

28 try{

29 // 第一步,创建一个workbook,对应一个Excel文件

30 HSSFWorkbook workbook = new HSSFWorkbook();

31 // 第二步,在webbook中添加一个sheet,对应Excel文件中的sheet

32 HSSFSheet hssfSheet = workbookcreateSheet("sheet1");

33 // 第三步,在sheet中添加表头第0行,注意老版本poi对Excel的行数列数有限制short

34 HSSFRow hssfRow = hssfSheetcreateRow(0);

35 // 第四步,创建单元格,并设置值表头 设置表头居中

36 HSSFCellStyle hssfCellStyle = workbookcreateCellStyle();

37 //居中样式

38 hssfCellStylesetAlignment(HSSFCellStyleALIGN_CENTER);

39

40 HSSFCell hssfCell = null;

41 for (int i = 0; i < titleslength; i++) {

42 hssfCell = hssfRowcreateCell(i);//列索引从0开始

43 hssfCellsetCellValue(titles[i]);//列名1

44 hssfCellsetCellStyle(hssfCellStyle);//列居中显示

45 }

46

47 // 第五步,写入实体数据

48 List users = userDAOquery();

49

50 SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");

51 if(users != null && !usersisEmpty()){

52 for (int i = 0; i < userssize(); i++) {

53 hssfRow = hssfSheetcreateRow(i+1);

54 User user = usersget(i);

55

56 // 第六步,创建单元格,并设置值

57 int userid = 0;

58 if(usergetId() != 0){

59 userid = usergetId();

60 }

61 hssfRowcreateCell(0)setCellValue(userid);

62 String username = "";

63 if(usergetName() != null){

64 username = usergetName();

65 }

66 hssfRowcreateCell(1)setCellValue(username);

67 String password = "";

68 if(usergetPassword() != null){

69 password = usergetPassword();

70 }

71 hssfRowcreateCell(2)setCellValue(password);

72 int age = 0;

73 if(usergetAge() != 0){

74 age = usergetAge();

75 }

76 hssfRowcreateCell(3)setCellValue(age);

77 }

78 }

79

80 // 第七步,将文件输出到客户端浏览器

81 try {

82 workbookwrite(out);

83 outflush();

84 outclose();

85

86 } catch (Exception e) {

87 eprintStackTrace();

88 }

89 }catch(Exception e){

90 eprintStackTrace();

91 throw new Exception("导出信息失败!");

92 }

93 }

94 }

5添加一个接口类UserDAO和实现类UserDAOImpl,类中内容如下:

1 package commvcdao;

2

3 import javautilList;

4 import commvcpoUser;

5

6 public interface UserDAO {

7 List query();

8 }

1 package commvcdaoimpl;

2

3 import javautilList;

4 import javasqlResultSet;

5 import javasqlSQLException;

6

7 import commvcdaoUserDAO;

8 import commvcpoUser;

9

10 import orgspringframeworkstereotypeRepository;

11 import orgspringframeworkbeansfactoryannotationAutowired;

12 import orgspringframeworkjdbccoreJdbcTemplate;

13 import orgspringframeworkjdbccoreRowMapper;

14

15 @Repository

16 public class UserDAOImpl implements UserDAO {

17

18 @Autowired

19 private JdbcTemplate jdbcTemplate;

20

21 public List query() {

22 return thisjdbcTemplatequery("select from student",

23 new RowMapper() {

24 public User mapRow(ResultSet rs, int arg1)

25 throws SQLException {

26 return new User(rsgetInt("sId"),

27 rsgetString("sName"), rsgetString("sPwd"), rs

28 getInt("sAge"));

29 }

30 });

31 }

32 }

这样就完成了excel导出至客户端浏览器,当然有时候也会用到导出excel至服务器上。只需要对本文步骤4中的第七步文件输出方式进行修改,如下:

1 // 第七步,将文件存到指定位置

2 try {

3 FileOutputStream fileOutputStream = new FileOutputStream("C:/userxls");//指定路径与名字和格式

4 workbookwrite(fileOutputStream);//讲数据写出去

5 fileOutputStreamclose();//关闭输出流

6 } catch (Exception e) {

7 eprintStackTrace();

8 }

然后去除controller类中的out参数设置就ok了。也可以看出其实两种方式只是最终保存方式不同,其他步骤是共通的。

public static void main(String[] args) throws IOException {

File file = new File("d:/testxls");

InputStream is = new FileInputStream(file);

Workbook wb = new HSSFWorkbook(is);

{

Systemoutprintln("读取成功");

return;

}

}

刚才写了个测试程序试了一下,也是2003格式的,里边只有一个下拉框

测试结果:无论点不点或者修改下拉框值,一切正常,workbook对象都能创建成功。

你看看是不是你导入的excel里存在 宏之类的 东西。

a标签点击请求后,在服务端根据excel对应的数据 利用poi生成一个workbook对象,

然后

OutputStream os = null;

responsesetContentType("application/vndopenxmlformats-officedocumentspreadsheetmlworksheet");

responsesetHeader("Content-Disposition","attachment;filename=" + URLEncoderencode("供应商信息"+new Date()toString(), "UTF-8") + "xslx"); //以下载形式,如果是直接在线打开

// responsesetHeader("Content-Disposition","inline;filename="

//中文文件名请适当转码,后缀名根据创建workbook时的版本决定(2003-HSSFWorkbook-xls;2007-XSSFWorkbook-xlsx)

os = responsegetOutputStream();

workbookwrite(os);

responseflushBuffer();

(io流的关闭和io异常扑捉自行处理,poi生成excel的过程参照poi文档,无非就是sheet,row,cell的操作)

表头 类中 文件 用户 内容
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » springmvc poi 导出word 复选框 怎么用

商业源码 钻石

分享到:
上一篇
英雄联盟各大区实力人数排行
下一篇
unraid可以连接硬盘柜吗

相关推荐

windows中后台启动服务是怎样设置的

windows中后台启动服务是怎样设置的

徐州经济技术开发区的空间格局

徐州经济技术开发区的空间格局

asp.net服务器控件输出有问题 这段代码输出的是那东西

asp.net服务器控件输出有问题 这段代码输出的是那东西

云服务器租用价格多少钱一年?

云服务器租用价格多少钱一年?

0条评论

发表评论 取消回复

要发表评论,您必须先登录。

提供最优质的资源集合

立即查看 了解详情
网站模板库

主题/付费下载/查看/余额管理/自定义积分,集成支付,卡密,推广奖励等。

本站导航
  • 链接标题
友情链接
  • 链接标题
快速搜索
本站由钛宇宙强力驱动
友情链接:
    商业源码网蜀ICP备2023005044号
    网站模板库
    • 登录
    • 注册
    网站模板库
    • 首页
    • web前端工具►
      • HTML/JS转换工具
      • JS/HTML格式化工具
      • 字母/英文大小写转换工具
      • robots.txt文件生成工具
      • Js压缩/格式化工具
      • Css在线压缩工具_代码格式化
    • 关于我们►
      • 免责声明
      • 联系我们
      • 广告服务
      • 服务项目
      • 关于我们
      • 网站轮播
      • 公告
      • 成都优优科技专用
      • 按行业分类
    • web学院►
      • 服务器教程
      • 学习资料►
        • 基础书籍
        • 交互书籍
        • 入门教程
        • 特效分类
      • 案例分享
      • web资讯
    • 网页特效►
      • 图片特效
      • 导航特效
      • 滑动按钮
      • 表单特效
      • 文字特效
      • 弹窗特效
      • 其他特效
    • 织梦模板►
      • 科技/电子/数码/通信
      • 文化/艺术/广告/传媒
      • 装修/设计/家居/家具
      • 基建/施工/地产/物业
      • 餐饮/酒店/旅游/票务
      • 食品/果蔬/饮料/日用
      • 服饰/珠宝/礼品/玩具
      • 摄影/婚庆/家政/生活
      • 运动/健身/体育/器材
      • 学校/教育/培训/科研
      • 美容/保健/医院/医疗
      • 金融/财税/咨询/法律
      • 政府/组织/集团/协会
      • 汽车/物流/交通/搬运
      • 机械/设备/制造/仪器
      • 化工/环保/能源/材料
      • 农业/畜牧/养殖/宠物
      • 其他模版
      • IT/软件/信息/互联网
    • 手机模板►
      • 手机APP模板
      • 微信小程序模板
      • wap
    • 网站模板►
      • joomla模板
      • Drupal模板
      • z-blog模板
      • EyouCms模板
      • Bootstrap模板
      • 帝国cms模板
      • CmsEasy模板
      • MetInfo模板
      • 购物商城模板►
        • Shopify主题
        • PrestaShop主题
      • 后台模板
      • 纯HTML模板
      • ecshop模板
      • phpwind模板
      • pbootcms模板
      • phpcms模板
      • wordpress模板
      • discuz模板
    • 教程►
      • 织梦教程
      • Discuz教程
      • WordPress教程
      • Phpcms教程
      • Phpwind教程
      • ECShop教程
      • Joomla教程
      • Drupal教程
      • zblog教程
      • EyouCMS教程
      • 帝国cms教程
      • MetInfo教程
      • CmsEasy教程

      弹窗标题

      这是一条网站公告,可在后台开启或关闭,可自定义背景颜色,标题,内容,用户首次打开关闭后不再重复弹出,此处可使用html标签...