1.创建maven结构web程序
    先实现2个小处理:
    ①更换更高版本的web.xml
    ②引入servlet依赖https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api/4.0.1
    2.创建包目录
    3.引入整合需要的jar文件
    *spring-context(aop、bean、core)、aspectjweaver
    *spring-web、spring-webmvc、apache-commons-fileupload、jackson
    *mybatis、mysql
    *mybatis-spring,spring-jdbc、spring-tx、druid(dbcp、c3p0)
    *servlet、jstl、poi……
    pom.xml

    1. <?xml version="1.0" encoding="UTF-8"?>
    2. <project xmlns="http://maven.apache.org/POM/4.0.0"
    3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    4. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    5. <modelVersion>4.0.0</modelVersion>
    6. <groupId>com.duyi</groupId>
    7. <artifactId>SSMIntegrate</artifactId>
    8. <version>1.0-SNAPSHOT</version>
    9. <properties>
    10. <maven.compiler.source>8</maven.compiler.source>
    11. <maven.compiler.target>8</maven.compiler.target>
    12. </properties>
    13. <dependencies>
    14. <!-- https://mvnrepository.com/artifact/com.google.guava/guava -->
    15. <dependency>
    16. <groupId>com.google.guava</groupId>
    17. <artifactId>guava</artifactId>
    18. <version>30.1-jre</version>
    19. </dependency>
    20. <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
    21. <dependency>
    22. <groupId>javax.servlet</groupId>
    23. <artifactId>javax.servlet-api</artifactId>
    24. <version>4.0.1</version>
    25. <scope>provided</scope>
    26. </dependency>
    27. <!--spring-->
    28. <!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->
    29. <dependency>
    30. <groupId>org.springframework</groupId>
    31. <artifactId>spring-context</artifactId>
    32. <version>5.2.12.RELEASE</version>
    33. </dependency>
    34. <!-- https://mvnrepository.com/artifact/org.aspectj/aspectjweaver -->
    35. <dependency>
    36. <groupId>org.aspectj</groupId>
    37. <artifactId>aspectjweaver</artifactId>
    38. <version>1.9.6</version>
    39. <scope>runtime</scope>
    40. </dependency>
    41. <!--springmvc-->
    42. <dependency>
    43. <groupId>org.springframework</groupId>
    44. <artifactId>spring-web</artifactId>
    45. <version>5.2.12.RELEASE</version>
    46. </dependency>
    47. <dependency>
    48. <groupId>org.springframework</groupId>
    49. <artifactId>spring-webmvc</artifactId>
    50. <version>5.2.12.RELEASE</version>
    51. </dependency>
    52. <!-- https://mvnrepository.com/artifact/commons-fileupload/commons-fileupload -->
    53. <dependency>
    54. <groupId>commons-fileupload</groupId>
    55. <artifactId>commons-fileupload</artifactId>
    56. <version>1.4</version>
    57. </dependency>
    58. <!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
    59. <dependency>
    60. <groupId>com.fasterxml.jackson.core</groupId>
    61. <artifactId>jackson-databind</artifactId>
    62. <version>2.12.1</version>
    63. </dependency>
    64. <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
    65. <dependency>
    66. <groupId>org.mybatis</groupId>
    67. <artifactId>mybatis</artifactId>
    68. <version>3.5.6</version>
    69. </dependency>
    70. <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
    71. <dependency>
    72. <groupId>mysql</groupId>
    73. <artifactId>mysql-connector-java</artifactId>
    74. <version>8.0.23</version>
    75. </dependency>
    76. <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis-spring -->
    77. <dependency>
    78. <groupId>org.mybatis</groupId>
    79. <artifactId>mybatis-spring</artifactId>
    80. <version>2.0.6</version>
    81. </dependency>
    82. <!-- https://mvnrepository.com/artifact/org.springframework/spring-jdbc -->
    83. <dependency>
    84. <groupId>org.springframework</groupId>
    85. <artifactId>spring-jdbc</artifactId>
    86. <version>5.2.12.RELEASE</version>
    87. </dependency>
    88. <!-- https://mvnrepository.com/artifact/org.springframework/spring-tx -->
    89. <dependency>
    90. <groupId>org.springframework</groupId>
    91. <artifactId>spring-tx</artifactId>
    92. <version>5.2.12.RELEASE</version>
    93. </dependency>
    94. <!-- https://mvnrepository.com/artifact/org.apache.poi/poi -->
    95. <dependency>
    96. <groupId>org.apache.poi</groupId>
    97. <artifactId>poi</artifactId>
    98. <version>4.1.2</version>
    99. </dependency>
    100. <!-- https://mvnrepository.com/artifact/org.apache.poi/poi-ooxml -->
    101. <dependency>
    102. <groupId>org.apache.poi</groupId>
    103. <artifactId>poi-ooxml</artifactId>
    104. <version>4.1.2</version>
    105. </dependency>
    106. </dependencies>
    107. </project>

    4.搭建springmvc(spring,ss整合)
    引入jar文件(之前引入过了)
    配置web.xml
    配置监听,服务器启动时,就启动spring容器(启动spring框架)
    配置servlet核心入口,启动springmvc框架
    web.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
             version="4.0">
    
        <listener>
            <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
        </listener>
    
        <context-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:spring.xml</param-value>
        </context-param>
    
        <servlet>
            <servlet-name>mvc</servlet-name>
            <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
            <init-param>
                <param-name>contextConfigLocation</param-name>
                <param-value>classpath:mvc.xml</param-value>
            </init-param>
            <load-on-startup>0</load-on-startup>
        </servlet>
        <servlet-mapping>
            <servlet-name>mvc</servlet-name>
            <url-pattern>/</url-pattern>
        </servlet-mapping>
    
    </web-app>
    

    image.png
    根据web.xml的配置,创建两个配置文件spring.xml、mvc.xml
    spring.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:context="http://www.springframework.org/schema/context"
           xmlns:mvc="http://www.springframework.org/schema/mvc"
           xmlns:aop="http://www.springframework.org/schema/aop"
           xmlns:tx="http://www.springframework.org/schema/tx"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation=
                   "http://www.springframework.org/schema/beans
            https://www.springframework.org/schema/beans/spring-beans.xsd
            http://www.springframework.org/schema/context
            https://www.springframework.org/schema/context/spring-context.xsd
            http://www.springframework.org/schema/aop
            https://www.springframework.org/schema/aop/spring-aop.xsd
            http://www.springframework.org/schema/tx
            https://www.springframework.org/schema/tx/spring-tx.xsd
            http://www.springframework.org/schema/mvc
            https://www.springframework.org/schema/mvc/spring-mvc.xsd">
    
        <!--开启IOC,DI注解编程(@Controller、@Autowire)-->
        <context:component-scan base-package="com.duyi"></context:component-scan>
        <!--开启aop注解编程-->
        <aop:aspectj-autoproxy></aop:aspectj-autoproxy>
    
    </beans>
    

    mvc.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:context="http://www.springframework.org/schema/context"
           xmlns:mvc="http://www.springframework.org/schema/mvc"
           xmlns:aop="http://www.springframework.org/schema/aop"
           xmlns:tx="http://www.springframework.org/schema/tx"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation=
            "http://www.springframework.org/schema/beans
            https://www.springframework.org/schema/beans/spring-beans.xsd
            http://www.springframework.org/schema/context
            https://www.springframework.org/schema/context/spring-context.xsd
            http://www.springframework.org/schema/aop
            https://www.springframework.org/schema/aop/spring-aop.xsd
            http://www.springframework.org/schema/tx
            https://www.springframework.org/schema/tx/spring-tx.xsd
            http://www.springframework.org/schema/mvc
            https://www.springframework.org/schema/mvc/spring-mvc.xsd">
    
        <!--controller包中的类可能会处理请求-->
        <context:component-scan base-package="com.duyi.controller"></context:component-scan>
        <!--开启请求响应注解编程-->
        <mvc:annotation-driven></mvc:annotation-driven>
        <!--处理静态资源 html、js、css、jpg......-->
        <mvc:default-servlet-handler></mvc:default-servlet-handler>
    
    </beans>
    

    5.搭建mybatis框架
    引入jar(之前引入过了)
    创建核心配置文件
    原来主要配置数据库连接信息(数据源),sql关联信息
    未来sm整合后,数据源信息就由spring管理,mybatis中就不需要配置