手机版

spring mvc组合框架框架实例详解

时间:2021-09-01 来源:互联网 编辑:宝哥软件园 浏览:

说明

本项目采用专家结构,主要演示了控制器获取数据后以数据格式返回数据。

项目结构

包依赖与说明

砰的一声文件:

项目xmlns=' http://aven。阿帕奇。org/POM/4。0 .0 ' xmlns : xsi=' http://www。w3。org/2001/XMLSchema-instance ' xsi 3360 schema location=' http://aven。阿帕奇。org/POM/4。0 .0 http://aven。阿帕奇。org/Maven-v4 _ 0 _ 0。xsd '型号版本4。0 .0-米巴蒂斯版本号-我的蜡染。版本3。2 .6我的蜡染。版本!- log4j日志文件管理包版本-slf4j。版本1。7 .7/slf4j。log4j版本。版本1。2 .17/log4j。版本/属性dependenciedependencygroupidjint/group idartifactidjunit/artifactidversion 3。8 .1/version scoept/scope/dependency dependency group IDG。spring框架/组idartifactidspring-web MVC/artifactidversion 4。1 .2 .发布/版本/依赖!-https://vnrepository。com/artifact/org。科德豪斯。杰克逊/杰克逊-映射器-ASL-dependencyGrouporg。科德豪斯。Jackson/Groupidartifactidjackson-mapper-ASL/artifactidversion 1。9 .2/版本/依赖!-https://vnrepository。com/artifact/org。科德豪斯。杰克逊/杰克逊-核心-ASL-dependencyGrouporg。科德豪斯。Jackson/Groupidartifactidjackson-core-ASL/artifactidversion 1。9 .13/版本/依赖!-https://vnrepository。com/artifact/com。fasterxml。杰克逊。core/Jackson-数据绑定-dependency roupidcom。fasterxml。杰克逊。核心/组idartifactidjackson-数据绑定/artifactidversion 2。9 .3/版本/依赖!- mybatis/spring包-dependencyGroupidorg。my batis/Groupidartifactidmybatis-spring/artifactidversion 1。3 .0/版本/依赖!-导入关系型数据库数据库链接冲突包-dependencygroupIdmysql/group idartifactidmysql-connector-Java/artifactidversion 5。1 .30/版本/依赖!- mybatis ORM框架-dependencygroupidg。my batis/group idartifactidmybatis/artifactidversion 3。4 .1/version/dependency dependency group IDG。spring框架/group idartifactidspring-tx/artifactidversion 4。1 .2 .版本/版本/dependencydependencygroupidg。spring框架/群组idartifactidspring-JDBC/artifactidversion 4。1 .2 .发布/版本/dependency builddfinanamemaven 01/最终名称/版本/项目配置说明

web.xml

!DOCTYPE Web-app PUBLIC '-//Sun Microsystems,Inc .//DTD Web Application 2.3//EN ' ' http://Java。星期日com/DTD/Web-app _ 2 _ 3。网络应用显示名称原型创建的网络应用/显示名称!-配置springmvcDispatcherServlet的设置并配置映射-servlet servlet-name spring MVC/servlet-name servlet-class org。弹簧框架。WEB。servlet。dispatcher vlet/servlet-class init-param-name contextconfiglocation/param-name param-value/WEB-INF/spring MVC-servlet。XML/param-value/init-param!-load-on-start 1/load-on-start/servlet servlet-mapping servlet-name spring MVC/servlet-name URL-pattern//URL-pattern/servlet-mapping/web-appspring MVC-servlet。可扩展置标语言

?可扩展标记语言版本='1.0 '编码='UTF-8 '?beans xmlns=' http://www。弹簧框架。org/schema/beans ' xmlns : xsi=' http://www .w3。org/2001/XMLSchema-instance ' xmlns : context=' http://www .弹簧框架。org/schema/context ' xmlns 3: MVC=' http://www .弹簧框架。org/schema/MVC ' xsi 3360 schema location=' 333http://www。-扫描包和子包-上下文:组件-扫描基本包=' com。马文01。*/!-不处理静态资源-MVC :默认-servlet-handler/!-如果使用注释,则必须配置以下设置-MVC :注释驱动/!-对静态资源的处理,不需要调度员服务让-MVC :资源映射='/static/** '位置='/static/' /!-配置InternalResourceViewResolver -!-如果使用注释,则必须配置以下设置-bean id=' mappingjacksontpmessageconverter ' class=' org。弹簧框架。http。转换器。JSON。mappingjacksontpmessageconverter ' property name=' supportedMediaTypes ' list value application/JSON;charset=UTF-8/值/列表/属性/bean class=' org。弹簧框架。网络。servlet。查看。internalResourceViewResolver ' id=' internalResourceViewResolver '!-前缀-属性名='前缀'值='/WEB-INF/view/' /!-后缀-属性名='后缀'值='。jsp' //bean!- mysql -!-引入外部数据源配置信息-bean class=' org。弹簧框架。豆子。工厂。配置。属性占位符configurer '属性名称=' locations '值类路径: JDBC。属性/值/属性/bean!-配置数据源-bean id='数据源' class=' org。弹簧框架。JDBC。数据源。' drivermanagerdatasource '属性名='driverClassName '值=' $ { JDBC。驱动程序} '/属性属性名称=' URL '值=' $ { JDBC。URL } '/property property name=' $ { JDBC。username } '/property property name=' password '值=' $ { JDBC。password } '/property/bean!春天和MyBatis完美整合,不需要框架的配置映射文件-bean id=' Slsessionfactory ' class=' org。我的巴蒂斯。春天。“Sqlsessionfactory bean”属性名称='数据源' ref='数据源'/!-自动扫描mapping.xml文件-属性名=“映射器位置”值=“类路径: com/maven 01/映射器/* .xml'/property/bean!- DAO接口所在包名春天,会自动查找其下的类比恩类=' org。我的巴蒂斯。春天。映射器。mapperscanerconfigurer '属性名='basePackage '值=' com。马文01。道“/属性名='sqlSessionFactoryBeanName '值=' sqlSessionFactory '/属性/比恩!-配置事务管理器-bean id=' TxManager ' class=' org。弹簧框架。JDBC。数据源。“数据源功能管理器”属性名称=“数据源”ref=“数据源”/属性/bean/beansjdbc。JDBC物业。driver=com。MySQL。JDBC。URL=JDBC : MySQL 3360//localhost 33603306/员工?使用unicode=true character encoding=UTF-8 JDBC。用户名=根JDBC。密码=sqlsambatis映射器文件的配置

?可扩展标记语言版本='1.0 '编码='UTF-8 '?DOCTYPE Mapper PUBLIC '-//我的蜡染。org//DTD Mapper 3.0//EN ' http://my batis。org/DTD/my batis-3-Mapper。' DTD '映射器命名空间=' com。马文01。刀。iemployeedao ' select id=' GetAll ' resultTYPe=' com。马文01。POJO。员工从员工中选择*限制1,10/选择/mapperdb结构

本项目采用了关系型数据库的示例雇员数据库,需要的朋友可以自行下载。

http://www . 3NTU。edu。SG/home/ehchua/编程/SQL/sampledatabases。超文本标记语言

代码说明

模型

打包。马文01。POJO公共类员工{ public int emp _ no公共字符串名字;public int getEmp _ no(){ return EMP _ no;} public void setEmp _ no(int EMP _ no){ this。EMP _ no=EMP _ no} public String getFirst _ name(){ return first _ name;} public void setFirst _ name(String first _ name){ this。名字=名字;}}dao

打包。马文01。道;导入Java。乌提尔。列表;导入组织。弹簧框架。刻板印象。存储库;导入com。马文01。POJO。员工;公共接口IEmployeeDao { public list employee getAll();}服务

打包。马文01。服务;导入Java。乌提尔。列表;导入com。马文01。POJO。员工;公共接口iemployeservice { public list employee GetAll();}serviceImpl

打包。马文01。服务。impl导入Java。乌提尔。列表;导入组织。弹簧框架。豆子。工厂。注释。自动连线;import org.springframework。刻板印象。服务;导入com。马文01。刀。iemployeedao导入com。马文01。POJO。员工;导入com。马文01。服务。*;导入javax。注释。资源;@Servicepublic类EmployeeServiceImpl实现iemployeservice { @ Autowiredprivate IEmployeeDao Dao;public EmployeeServiceImpl(){ } public list employee getAll(){ return Dao。getAll();} }控制器

打包。马文01。控制器;导入Java。乌提尔。ArrayList导入Java。乌提尔。列表;导入javax。注释。资源;导入组织。弹簧框架。刻板印象。控制器;导入组织。弹簧框架。网络。绑定。注释。请求映射;导入组织。弹簧框架。网络。绑定。注释。请求方法;导入组织。弹簧框架。网络。绑定。注释。反应体;导入com。马文01。dto。*;导入com。马文01。POJO。员工;导入com。马文01。服务。iemployeservice@ Controller @请求映射("/MVC ")公共类演示控制器{ @资源私有I employeeService;@RequestMapping(方法=RequestMethod .GET,值='/getEmployeeList ',产生=' application/JSON ')public @ response body list employeelist(){ return employeeservice。getall();}}运行结果

本项目代码已提交git,下载地址https://github.com/hbb0b0/springMyBatis.git

遇到的坑:

MapperScannerConfigurer配置为仅仅包含大刀层就可以了,千万不要配置问整个包扫描,不然会出现错误:未定义类型为[com。马文01。服务。电子商务服务]的合格bean :预期的单个匹配比恩,但找到了2: employeeServiceImpl,I employeeserviceservice

!- DAO接口所在包名春天,会自动查找其下的类比恩类=' org。我的巴蒂斯。春天。映射器。' cannerconfigurer '属性名='basePackage '值=' com。马文01。*/属性名='sqlSessionFactoryBeanName '值=' sqlSessionFactory '/属性/bean org。弹簧框架。豆子。工厂。nouniquebedefinitionexcept 3 3360未定义类型为[com。马文01。服务。iemployeservice]的合格bean :应为单个匹配比恩,但未找到- DAO接口所在包名春天,会自动查找其下的类比恩类=' org。我的巴蒂斯。春天。映射器。mapperscannerconfigurer '属性名='basePackage '值=' com。马文01。道“/属性名='sqlSessionFactoryBeanName '值=' sqlSessionFactory '/属性/bean注意框架包的匹配较低版本mybatis-spring与框架与春天结合会出现Java。朗。抽象方法错误: org。我的蜡染。春天。交易。springmanaged事务。gettimeout(L)

总结

以上所述是小编给大家介绍的拦截器组合框架框架实例详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

版权声明:spring mvc组合框架框架实例详解是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。