目录
三、通过数据库生成实体类entity、持久层mapper、编写sql语句的mapper下的.xml文件
前言:小伙伴们在学习完Spring、SpringMVC、MyBatis后,对于各个框架都有了系统的认知,对各个分工也有了初步的了解,但是在进行企业级项目开发时,我们需要将Spring、SpringMVC、MyBatis框架整合起来,共同完成开发工作。这是必须的,也是需要强制熟练运用并掌握的。
一、SSM分工
Spring 作为基础框架,整合其他框架
SpringMVC 作为Web开发框架,提供服务器开发支持
MyBatis 作为ORM框架,提供数据库开发支持
二、整合配置
2.1 添加依赖(直接复制粘贴,无脑用)
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.16</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.mchange/c3p0 -->
<dependency>
<groupId>com.mchange</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.5.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.taglibs</groupId>
<artifactId>taglibs-standard-impl</artifactId>
<version>1.2.5</version>
</dependency>
<dependency>
<groupId>org.apache.taglibs</groupId>
<artifactId>taglibs-standard-compat</artifactId>
<version>1.2.5</version>
</dependency>
<dependency>
<groupId>org.apache.taglibs</groupId>
<artifactId>taglibs-standard-jstlel</artifactId>
<version>1.2.5</version>
</dependency>
<dependency>
<groupId>org.apache.taglibs</groupId>
<artifactId>taglibs-standard-spec</artifactId>
<version>1.2.5</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.2.8.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.2.8.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>5.2.8.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>5.2.8.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.5</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>2.0.5</version>
</dependency>
补充: 上面的依赖是ssm的一些基本依赖,但是在后续开发时还会需要JSON格式的对象返回给ajax,文件的上传与下载功能,所以还需要额外导入这些的依赖jar包。
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.9.5</version>
</dependency>
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.4</version>
</dependency>
2.2 SpringMVC的配置 spring-mvc.xml
2.3 MyBatis基础设置 mybatis-config.xml
2.4 Spring整合MyBatis配置 spring-mybatis.xml
2.5 Spring配置文件,导入SpringMVC和MyBatis配置
2.6 web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
id="WebApp_ID" version="3.1">
<display-name>Archetype Created Web Application</display-name>
<servlet>
<servlet-name>dispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcherServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
注意:首先读取的是 web.xml,读取到spring.xml,再在spring.xml读取到spring-mvc.xml和
spring-mybatis.xml,最后在spring-mybatis.xml读取到mybatis-config.xml。
三、通过数据库生成实体类entity、持久层mapper、编写sql语句的mapper下的.xml文件
当我们根据数据库的表编写实体类时,如果表的字段过多的话,会非常麻烦且浪费时间,那有没有一个工具来自动帮我们生成实体类呢?答案是肯定的。
我们可以在idea中的下载一个插件MyBatisX,可以帮我们自动生成实体类,初次以外,还可以生成配置文件中映射的持久层mapper和编写sql语句的.xml文件,并且在.xml文件中根据表自动生成了基本的sql增删改查。由此,极大的加快了我们的开发效率,让我们有更多的时间放在业务的逻辑处理上。
四、项目包结构
最后,框架搭建好以后,大家可以随意连接自己的数据库进行简单的测试,一来查看框架的通道是否打通,二来也是可以加深自己对ssm的理解。这里小编就不演示了,根据自己的数据库进行测试即可。
五、总结
以上就是ssm整合的内容,小编介绍了ssm整合的步骤,能使我们快速便捷地处理数据和页面跳转。搭建好之后,即可开始我们的项目业务处理,剩下的事就交由我们的脑子来运转了。