![7ae74b0d919449f108393e231003105e.png](https://i-blog.csdnimg.cn/blog_migrate/12a96d015892566d8b85c98ef4abdc90.jpeg)
业务背景:在JavaWeb应用开发中,经常需要将应用系统中某些业务数据导出到Excel中,又或者需要将这些业务数据先收集到Excel然后一键导入到系统。
业务需求:如何用Java实现导入导出Excel。
需求分析:目前流行的Java导入导出Excel的框架有POI跟JXL,这两者的优缺点在这里我就不作比较了,感兴趣的童鞋可以自行搜索了解一下。
从本文开始,我将分享一下如何基于SSM框架+POI实现Java应用导入导出Excel,数据库采用mysql5.6,应用服务器采用tomcat7。
工具选型:Eclipse-Luna,Navicat,Postman。
作用:在后续介绍整个项目各个功能期间,不管是写代码前的业务分析、思路的介绍还是开发时所采用的技术点,我觉得还是挺不错的(至少让诸位童鞋知道我是如何实现的:“实现方式是次要的,实现思路那才是最重要的”),特别是对于初学者、职场萌新、学习了很多知识点但急需实战的童鞋来说都是很有用的!它基本上涵盖了目前企业级应用中或者springmvc应用三层开发模式的要点,如果你仔细去观察企业中后端应用的大部分业务模块,会发现其实实现思路跟我是八九不离十的!
工欲善其事,必先利其器。在开始POI导入导出Excel之前,我将整合一套完整的SSM应用(目的是为了接近实际的企业级应用),而这套SSM应用的整合,除了可以用于实现POI导入导出Excel的业务,其实也可以用于实战第三方框架或者其他任何JavaWeb应用的业务模块,比如可以基于此实现用户角色权限管理平台,个人博客系统等应用!
下面是整合SSM框架的核心步骤
![8ef5a096d40edbfc5646092c70c1e89a.png](https://i-blog.csdnimg.cn/blog_migrate/8ae7ccc48d58ecb26d969b3dd11abb25.jpeg)
1.首先当然是建立dynamic-web-project,命名为ssm_poi,然后往lib添加jar包,其中jar包的下载地址:
下载地址:http://down.51cto.com/data/2449557
2.配置web.xml:充当整个web应用的部署描述文件,其中将进行spring、springMVC以及编码过滤器的配置
![5f21d531e85cf54025191dc335c409c1.png](https://i-blog.csdnimg.cn/blog_migrate/5ae217f32338248dbf10b26a17493393.jpeg)
3.在项目下新建一个folder,命名为conf,用于存放整个项目的配置文件,对于本项目而言,将有spring,springmvc,mybatis,log4j以及数据源等的配置
4.spring配置文件applicationContext.xml:具体的作用已在配置文件里做了相应的注释
![cf2973b6e5ed7cc0b6077979949e6217.png](https://i-blog.csdnimg.cn/blog_migrate/7349181882159f12d984c68e9c8074f9.jpeg)
5.根据上面的配置文件,我们需要创建com.debug.steadyjack.xxx的包目录
6.数据源jdbc.properties的配置
![3f73bf47bb6d972f955584b86965d733.png](https://i-blog.csdnimg.cn/blog_migrate/79c2785ce2617b1a41351df9fed8fa2c.jpeg)
7.Mybatis的配置mybatis-config.xml
![0f9cab41bd34810b98dd0a6707ac3a75.png](https://i-blog.csdnimg.cn/blog_migrate/0a876365407b79707682b916633d284f.jpeg)
8.然后是springmvc的配置springmvc.xml:充当控制层控制转发的作用
![bd22fa1dfdfd2ee7233cefb9515e6acc.png](https://i-blog.csdnimg.cn/blog_migrate/d22e51dc98f3e0f49709e5ef10795b7c.jpeg)
9. 最后是日志的简单配置log4j.properties:
![d530152a8abad32f67cc2883c76a69ee.png](https://i-blog.csdnimg.cn/blog_migrate/69d73b1bd84f54bfdf2e820eb188ba82.jpeg)
10.整个项目的目录结构如下图所示:
![096c2ed32bdaa42de494ed0a2bb78946.png](https://i-blog.csdnimg.cn/blog_migrate/2552be33af06f56bd60430243e1d1322.jpeg)
想要完整代码的童鞋可以联系小编~