今天给各位分享ssm网站源码分享百度云盘的知识,其中也会对基于ssm的视频网站的实现进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
之前整理了一下新版本的SSM三大框架,这篇文章是关于它的整合过程和项目源码,版本号分别为:Spring5.2.2.RELEASE、SpringMVC5.2.2.RELEASE、MyBatis3.5.2。
背景介绍
ssm-demo是我发布到GitHub上的第一个开源项目,该项目开发时应该是2016年底的时候,之后是选择将这个项目开源到GitHub开源平台上。
2016年那个时间点在JavaWeb项目开发时使用Spring4.X版本是一个比较普遍的现象,并不会让人觉得版本落后,但是现在已经是2020年了,所以在源代码的基础上进行了Spring相关框架的升级,因此整理了这个Spring5版本相关的SSM三大框架整合教程。
Spring5来了
Spring5是一个非常重要的版本更新,在它的开源仓库中也可以看到这个版本的更新频率很高,大家应该都会相信这个版本在企业开发中会逐渐的占到越来越大的份额。
简单地说一下本篇教程所选择的版本号:
Spring版本是选择了比较新的版本,由原来的4.2.4.RELEASE升级到5.2.2.RELEASE,这个版本是在2019年10月3日正式发布,版本更新日志为v5.2.2.RELEASE。SpringMVC的版本也随着Spring的版本而更新,也是5.2.2.RELEASE。MyBatis的版本升级到3.5.2,MyBatis3.5以上版本对应的就是Spring5以上版本,Spring4不支持MyBatis3.5以上版本,对应的mybatis-spring的版本也需要升级到2.0以上的版本,我选择的是2.0.1。
以上是SSM三大框架的版本选择,版本号是我自己选择和整合的,你可以进行微调,但是一定要注意测试,不要报错。
主要的代码整合
源码的目录结构如下:
pom依赖
SpringSpringMVCMyBatis三大框架主要的版本号已经介绍,这里我直接给出pom.xml文件:
<?xmlversion=&34;encoding=&34;?>\n<projectxmlns=&34;xmlns:xsi=&34;\nxsi:schemaLocation=&34;>\n<modelVersion>4.0.0</modelVersion>\n<groupId>com.ssm.demo</groupId>\n<artifactId>ssm-demo</artifactId>\n<packaging>war</packaging>\n<version>1.0-SNAPSHOT</version>\n<name>ssm-demo</name>\n<url>http://maven.apache.org</url>\n\n<properties>\n<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>\n<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>\n<spring.version>5.2.2.RELEASE</spring.version>\n<java.version>1.8</java.version>\n<jdbc.driver.version>8.0.16</jdbc.driver.version>\n<aspectj.version>1.9.5</aspectj.version>\n<javax.servlet-api.version>3.1.0</javax.servlet-api.version>\n<jsp-api.version>2.2</jsp-api.version>\n<jstl.version>1.2</jstl.version>\n<mybatis.version>3.5.2</mybatis.version>\n<mybatis-spring.version>2.0.1</mybatis-spring.version>\n<maven.test.skip>true</maven.test.skip>\n</properties>\n\n<dependencies>\n<!–Begin:spring依赖–>\n<dependency>\n<groupId>org.springframework</groupId>\n<artifactId>spring-context-support</artifactId>\n<version>${spring.version}</version>\n</dependency>\n<dependency>\n<groupId>org.springframework</groupId>\n<artifactId>spring-jdbc</artifactId>\n<version>${spring.version}</version>\n</dependency>\n<dependency>\n<groupId>org.springframework</groupId>\n<artifactId>spring-tx</artifactId>\n<version>${spring.version}</version>\n</dependency>\n<!–End:spring依赖–>\n\n<!–Begin:springmvc依赖–>\n<dependency>\n<groupId>org.springframework</groupId>\n<artifactId>spring-webmvc</artifactId>\n<version>${spring.version}</version>\n</dependency>\n<!–End:springmvc依赖–>\n\n<!–Begin:mybatis依赖–>\n<dependency>\n<groupId>org.mybatis</groupId>\n<artifactId>mybatis</artifactId>\n<version>${mybatis.version}</version>\n</dependency>\n<dependency>\n<groupId>org.mybatis</groupId>\n<artifactId>mybatis-spring</artifactId>\n<version>${mybatis-spring.version}</version>\n</dependency>\n<!–End:mybatis依赖–>\n\n<!–Begin:数据库依赖包–>\n<dependency>\n<groupId>mysql</groupId>\n<artifactId>mysql-connector-java</artifactId>\n<version>${jdbc.driver.version}</version>\n<scope>runtime</scope>\n</dependency>\n<!–End:数据库依赖包–>\n\n<!–Begin:aspectj相关jar包–>\n<dependency>\n<groupId>org.aspectj</groupId>\n<artifactId>aspectjrt</artifactId>\n<version>${aspectj.version}</version>\n</dependency>\n<dependency>\n<groupId>org.aspectj</groupId>\n<artifactId>aspectjweaver</artifactId>\n<version>${aspectj.version}</version>\n</dependency>\n<!–End:aspectj相关jar包–>\n\n<!–Begin:Servlet相关依赖包–>\n<dependency>\n<groupId>javax.servlet</groupId>\n<artifactId>javax.servlet-api</artifactId>\n<version>${javax.servlet-api.version}</version>\n<scope>provided</scope>\n</dependency>\n<dependency>\n<groupId>javax.servlet.jsp</groupId>\n<artifactId>jsp-api</artifactId>\n<version>${jsp-api.version}</version>\n</dependency>\n<dependency>\n<groupId>javax.servlet</groupId>\n<artifactId>jstl</artifactId>\n<version>${jstl.version}</version>\n</dependency>\n<!–End:Servlet相关依赖包–>\n</dependencies>\n\n<build>\n<finalName>ssm-demo</finalName>\n<plugins>\n\n<plugin>\n<groupId>org.apache.maven.plugins</groupId>\n<artifactId>maven-compiler-plugin</artifactId>\n<version>3.2</version>\n<configuration>\n<source>1.8</source>\n<target>1.8</target>\n</configuration>\n</plugin>\n\n</plugins>\n</build>\n</project>\n
耐心等待jar包下载完成即可。
Spring配置文件
applicationContext.xml配置文件如下:
开启包扫描配置数据源MyBatis配置事务管理配置事务切面配置
<?xmlversion=&34;encoding=&34;?>\n<beansxmlns=&34;\nxmlns:xsi=&34;\nxmlns:aop=&34;\nxmlns:context=&34;\nxmlns:tx=&34;\nxsi:schemaLocation=&34;>\n\n<!–自动扫描–>\n<context:component-scanbase-package=&34;/>\n<context:component-scanbase-package=&34;/>\n\n<!–配置数据源–>\n<beanid=&34;\nclass=&34;>\n<propertyname=&34;value=&34;/>\n<propertyname=&34;\nvalue=&34;/>\n<!–改为你的地址即可–>\n<propertyname=&34;value=&34;/>\n<propertyname=&34;value=&34;/>\n</bean>\n\n\n<!–配置mybatis的sqlSessionFactory–>\n<beanid=&34;class=&34;>\n<propertyname=&34;ref=&34;/>\n<!–自动扫描mappers.xml文件–>\n<!–<propertyname=&34;value=&34;></property>–>\n<!–mybatis配置文件–>\n<propertyname=&34;value=&34;></property>\n</bean>\n\n<!–DAO接口所在包名,Spring会自动查找其下的类–>\n<beanclass=&34;>\n<propertyname=&34;value=&34;/>\n<propertyname=&34;value=&34;></property>\n</bean>\n\n<!–(事务管理)transactionmanager,useJtaTransactionManagerforglobaltx–>\n<beanid=&34;\nclass=&34;>\n<propertyname=&34;ref=&34;/>\n</bean>\n\n<!–配置事务通知属性–>\n<tx:adviceid=&34;transaction-manager=&34;>\n<!–定义事务传播属性–>\n<tx:attributes>\n<tx:methodname=&34;propagation=&34;/>\n<tx:methodname=&34;propagation=&34;/>\n<tx:methodname=&34;propagation=&34;/>\n<tx:methodname=&34;propagation=&34;/>\n<tx:methodname=&34;propagation=&34;/>\n<tx:methodname=&34;propagation=&34;/>\n<tx:methodname=&34;propagation=&34;/>\n<tx:methodname=&34;propagation=&34;/>\n<tx:methodname=&34;propagation=&34;/>\n<tx:methodname=&34;propagation=&34;/>\n<tx:methodname=&34;propagation=&34;/>\n<tx:methodname=&34;propagation=&34;/>\n<tx:methodname=&34;propagation=&34;/>\n<tx:methodname=&34;propagation=&34;read-only=&34;/>\n<tx:methodname=&34;propagation=&34;read-only=&34;/>\n<tx:methodname=&34;propagation=&34;read-only=&34;/>\n<tx:methodname=&34;propagation=&34;read-only=&34;/>\n<tx:methodname=&34;propagation=&34;read-only=&34;/>\n</tx:attributes>\n</tx:advice>\n\n<!–配置事务切面–>\n<aop:config>\n<aop:pointcutid=&34;\nexpression=&34;/>\n<aop:advisoradvice-ref=&34;pointcut-ref=&34;/>\n</aop:config>\n\n</beans>\n
SpringMVC配置
spring-mvc.xml文件如下:
<?xmlversion=&34;encoding=&34;?>\n<beansxmlns=&34;\nxmlns:xsi=&34;\nxmlns:context=&34;\nxsi:schemaLocation=&34;>\n\n<!–使用注解的包,包括子集–>\n<context:component-scanbase-package=&34;/>\n\n<!–视图解析器–>\n<beanid=&34;\nclass=&34;>\n<propertyname=&34;value=&34;/>\n<propertyname=&34;value=&34;></property>\n</bean>\n\n</beans>\n
开启Controller包扫描以及视图解析器配置。
MyBatis配置
mybatis-config.xml配置文件如下:
<?xmlversion=&34;encoding=&34;?>\n<!DOCTYPEconfiguration\nPUBLIC&34;\n&34;>\n<configuration>\n<typeAliases>\n<packagename=&34;/>\n</typeAliases>\n</configuration>\n
web.xml配置
最后是JavaWeb项目中最重要的一个配置文件:web.xml,在这里我们将加载Spring的相关配置并启动Spring容器,同时配置SpringMVC,将所有请求交给前端控制器DispatcherServlet来处理。
web.xml配置文件如下:
<?xmlversion=&34;encoding=&34;?>\n<web-appxmlns:xsi=&34;xmlns=&34;\nxsi:schemaLocation=&34;\nid=&34;version=&34;>\n<display-name>ssm-demo</display-name>\n\n<!–Start欢迎页–>\n<welcome-file-list>\n<welcome-file>index.jsp</welcome-file>\n</welcome-file-list>\n<!–End欢迎页–>\n\n<context-param>\n<param-name>contextConfigLocation</param-name>\n<param-value>classpath:applicationContext.xml</param-value>\n</context-param>\n\n<!–Start编码过滤器解决乱码问题–>\n<filter>\n<filter-name>encodingFilter</filter-name>\n<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>\n<init-param>\n<param-name>encoding</param-name>\n<param-value>UTF-8</param-value>\n</init-param>\n</filter>\n<filter-mapping>\n<filter-name>encodingFilter</filter-name>\n<url-pattern>/*</url-pattern>\n</filter-mapping>\n<!–End编码过滤器解决乱码问题–>\n\n<!–Startspring监听器–>\n<listener>\n<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>\n</listener>\n<!–EndStartspring监听器–>\n\n<!–Startspringmvcservlet–>\n<servlet>\n<servlet-name>springMVC</servlet-name>\n<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>\n<init-param>\n<param-name>contextConfigLocation</param-name>\n<param-value>classpath:spring-mvc.xml</param-value>\n</init-param>\n<load-on-startup>1</load-on-startup>\n</servlet>\n<!–Endspringmvcservlet–>\n\n<!–Startservlet-mapping–>\n<servlet-mapping>\n<servlet-name>springMVC</servlet-name>\n<url-pattern>*.do</url-pattern>\n</servlet-mapping>\n<!–Endservlet-mapping–>\n\n</web-app>\n
JSP页面
最后是一个JSP页面用于测试,在webapp目录下新建index.jsp,代码如下:
<%@pagecontentType=&34;language=&34;%>\n<html>\n<head>\n<title>ssmdemo</title>\n</head>\n<body>\n\nHelloSSM(Spring5.2+MyBatis3.5)!\n\n</body>\n</html>\n
项目启动和预览
源码我已经测试了,部署到Tomcat并启动后可以看到如下页面:
Spring5版本的SSM三大框架整合成功!
这是一篇Spring5+SpringMVC5+MyBatis3.5的整合教程,仅仅是整合,供大家在升级Spring5时做参考,其他功能自行实现,也可以结合我之前写过的开源项目进行拓展。
注意事项
请求后缀
这里设置的是拦截.do结尾的请求,你自己根据需求自行修改。
Mapper文件
由于项目中并没有添加Mapper文件,所以这一行配置我注释掉了,后面你添加了Mapper文件后需要将这行注释去掉。
源码下载
下载链接如下:
https://download.csdn.net/download/ZHENFENGSHISAN/12201778
在上传时我设置了不需要下载积分,如果后期需要下载积分,应该是CSDN平台设置的。
我曾七次鄙视自己的灵魂:第一次,当它本可进取时,却故作谦卑;第二次,当它空虚时,用爱欲来填充;第三次,在困难和容易之间,它选择了容易;第四次,它犯了错,却借由别人也会犯错来宽慰自己;第五次,它自由软弱,却把它认为是生命的坚韧;第六次,当它鄙夷一张丑恶的嘴脸时,却不知那正是自己面具中的一副;第七次,它侧身于生活的污泥中虽不甘心,却又畏首畏尾。
关于ssm网站源码分享百度云盘和基于ssm的视频网站的实现的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。