SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建

Posted 乐享诚美

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建相关的知识,希望对你有一定的参考价值。

1、首先右键点击项目区空白处,选择new-》other..在弹出框中输入maven,选择Maven Project。

SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建

默认next下一步

SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建

选中图片所选next下一步

SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建

输入其中所需参数点击Finish完成创建操作

SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建

2、标准的maven结构,但是还需要创建几个文件夹,右键点击src下的main-》new-》Folder填写java,右键点击src new-》Folder填写test,同理在test下创建java folder。

SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建

在src/main/java下创建基本的层级,如图:

SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建

 

上图中jsp的报错暂时不用管,具体原因尚不清楚,不过不影响项目开发启动,在pom.xml下添加框架必须的包:

SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建

  1 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    2   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">    3     4   <modelVersion>4.0.0</modelVersion>    5   <groupId>com.cjl.ssm</groupId>    6   <artifactId>SSM</artifactId>    7   <packaging>war</packaging>    8   <version>1.0-SNAPSHOT</version>    9   <name>SSM</name>   10    11   <!-- 编码 -->   12   <properties>   13     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>   14     <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>   15   </properties>   16    17   <!--Maven依赖 需要更换可以到http://mvnrepository.com进行查询-->   18   <dependencies>   19    20     <!--Spring-->   21     <dependency>   22       <groupId>org.springframework</groupId>   23       <artifactId>spring-core</artifactId>   24       <version>4.3.5.RELEASE</version>   25     </dependency>   26     <dependency>   27       <groupId>org.springframework</groupId>   28       <artifactId>spring-aop</artifactId>   29       <version>4.3.5.RELEASE</version>   30     </dependency>   31     <dependency>   32       <groupId>org.springframework</groupId>   33       <artifactId>spring-orm</artifactId>   34       <version>4.3.5.RELEASE</version>   35     </dependency>   36     <dependency>   37       <groupId>org.springframework</groupId>   38       <artifactId>spring-web</artifactId>   39       <version>4.3.5.RELEASE</version>   40     </dependency>   41     <dependency>   42       <groupId>org.springframework</groupId>   43       <artifactId>spring-webmvc</artifactId>   44       <version>4.3.5.RELEASE</version>   45     </dependency>   46     <dependency>   47       <groupId>org.springframework</groupId>   48       <artifactId>spring-tx</artifactId>   49       <version>4.3.5.RELEASE</version>   50     </dependency>   51     <dependency>   52       <groupId>org.springframework</groupId>   53       <artifactId>spring-test</artifactId>   54       <version>4.3.5.RELEASE</version>   55     </dependency>   56     <dependency>   57       <groupId>org.springframework</groupId>   58       <artifactId>spring-jdbc</artifactId>   59       <version>4.3.5.RELEASE</version>   60     </dependency>   61     <dependency>   62       <groupId>org.springframework</groupId>   63       <artifactId>spring-mock</artifactId>   64       <version>2.0.8</version>   65     </dependency>   66     <dependency>   67       <groupId>org.springframework</groupId>   68       <artifactId>spring-context</artifactId>   69       <version>4.3.5.RELEASE</version>   70     </dependency>   71     <dependency>   72       <groupId>org.springframework</groupId>   73       <artifactId>spring-expression</artifactId>   74       <version>4.3.5.RELEASE</version>   75     </dependency>   76     <dependency>   77       <groupId>org.springframework</groupId>   78       <artifactId>spring-context-support</artifactId>   79       <version>4.3.5.RELEASE</version>   80     </dependency>   81    82     <!-- mybatis-spring -->   83     <dependency>   84       <groupId>org.mybatis</groupId>   85       <artifactId>mybatis-spring</artifactId>   86       <version>1.3.1</version>   87     </dependency>   88    89     <!-- mybatis 出现分页使用异常,极有可能是版本问题-->   90     <dependency>   91       <groupId>org.mybatis</groupId>   92       <artifactId>mybatis</artifactId>   93       <version>3.2.8</version>   94     </dependency>   95     <!-- mybatis pagehelper -->   96     <dependency>   97       <groupId>com.github.pagehelper</groupId>   98       <artifactId>pagehelper</artifactId>   99       <version>3.7.3</version>  100     </dependency>  101     <dependency>  102       <groupId>com.github.jsqlparser</groupId>  103       <artifactId>jsqlparser</artifactId>  104       <version>0.9.1</version>  105     </dependency>  106   107     <!--servlet、基本包-->  108     <dependency>  109       <groupId>javax.servlet</groupId>  110       <artifactId>servlet-api</artifactId>  111       <version>3.0-alpha-1</version>  112     </dependency>  113     <dependency>  114       <groupId>javax.servlet</groupId>  115       <artifactId>jstl</artifactId>  116       <version>1.2</version>  117     </dependency>  118     <dependency>  119       <groupId>taglibs</groupId>  120       <artifactId>standard</artifactId>  121       <version>1.1.2</version>  122     </dependency>  123     <dependency>  124       <groupId>org.aspectj</groupId>  125       <artifactId>aspectjrt</artifactId>  126       <version>1.8.10</version>  127     </dependency>  128     <dependency>  129       <groupId>org.aspectj</groupId>  130       <artifactId>aspectjweaver</artifactId>  131       <version>1.8.10</version>  132     </dependency>  133     <dependency>  134       <groupId>commons-lang</groupId>  135       <artifactId>commons-lang</artifactId>  136       <version>2.6</version>  137     </dependency>  138     <dependency>  139       <groupId>dom4j</groupId>  140       <artifactId>dom4j</artifactId>  141       <version>1.6.1</version>  142     </dependency>  143   144     <!--mysql驱动包-->  145     <dependency>  146       <groupId>mysql</groupId>  147       <artifactId>mysql-connector-java</artifactId>  148       <version>5.1.40</version>  149     </dependency>  150     <!--dbcp连接池-->  151     <dependency>  152       <groupId>commons-dbcp</groupId>  153       <artifactId>commons-dbcp</artifactId>  154       <version>1.4</version>  155     </dependency>  156   157     <!--json、基本包-->  158     <dependency>  159       <groupId>com.alibaba</groupId>  160       <artifactId>fastjson</artifactId>  161       <version>1.2.23</version>  162     </dependency>  163     <dependency>  164       <groupId>xml-apis</groupId>  165       <artifactId>xml-apis</artifactId>  166       <version>2.0.2</version>  167     </dependency>  168     <dependency>  169       <groupId>commons-net</groupId>  170       <artifactId>commons-net</artifactId>  171       <version>3.5</version>  172     </dependency>  173   174     <!-- 日志文件管理包 -->  175     <dependency>  176       <groupId>org.slf4j</groupId>  177       <artifactId>slf4j-api</artifactId>  178       <version>1.7.22</version>  179     </dependency>  180     <dependency>  181       <groupId>org.slf4j</groupId>  182       <artifactId>slf4j-log4j12</artifactId>  183       <version>1.7.22</version>  184     </dependency>  185     <dependency>  186       <groupId>log4j</groupId>  187       <artifactId>log4j</artifactId>  188       <version>1.2.17</version>  189     </dependency>  190   191     <!-- junit4 -->  192     <dependency>  193       <groupId>junit</groupId>  194       <artifactId>junit</artifactId>  195       <version>4.12</version>  196       <scope>test</scope>  197     </dependency>  198   199   </dependencies>  200   201   <!--项目编译及其构建-->  202   <build>  203     <plugins>  204       <plugin>  205         <groupId>org.apache.maven.plugins</groupId>  206         <artifactId>maven-war-plugin</artifactId>  207         <version>2.4</version>  208         <configuration>  209           <warName>SSM</warName>  210           <!-- <packagingExcludes>  211           **/resources/**  212       </packagingExcludes> -->  213           <webResources>  214             <resource>  215               <directory>src/main/resources/resources/config</directory>  216               <targetPath>WEB-INF/classes/resources/config</targetPath>  217               <filtering>true</filtering>  218             </resource>  219             <resource>  220               <directory>src/main/java</directory>  221               <includes>  222                 <include>**/*.xml</include>  223               </includes>  224               <targetPath>WEB-INF/classes</targetPath>  225             </resource>  226           </webResources>  227         </configuration>  228       </plugin>  229   <plugin>  230       <groupId>org.mybatis.generator</groupId>  231       <artifactId>mybatis-generator-maven-plugin</artifactId>  232       <version>1.3.2</version>  233       <configuration>  234         <verbose>true</verbose>  235         <overwrite>true</overwrite>  236       </configuration>  237     </plugin>238       <plugin>  239         <groupId>org.apache.maven.plugins</groupId>  240         <artifactId>maven-resources-plugin</artifactId>  241         <version>2.4.3</version>  242         <configuration>  243           <encoding>UTF-8</encoding>  244         </configuration>  245       </plugin>  246       <plugin>  247         <groupId>org.apache.maven.plugins</groupId>  248         <artifactId>maven-compiler-plugin</artifactId>  249       </plugin>  250       <plugin>  251         <groupId>org.apache.felix</groupId>  252         <artifactId>maven-bundle-plugin</artifactId>  253         <inherited>true</inherited>  254         <extensions>true</extensions>  255       </plugin>  256       <plugin>  257         <groupId>org.apache.maven.plugins</groupId>  258         <artifactId>maven-surefire-plugin</artifactId>  259         <configuration>  260           <testFailureIgnore>true</testFailureIgnore>  261         </configuration>  262       </plugin>  263       <plugin>  264         <groupId>org.apache.maven.plugins</groupId>  265         <artifactId>maven-site-plugin</artifactId>  266         <!-- 此处由3.2升级为3.3.原因是maven版本3.1的,需要3,3才能兼容.否则会报错:java.lang.NoClassDefFoundError:  267             org/sonatype/aether/graph/DependencyFilter -->  268         <version>3.3</version>  269         <configuration>  270           <locales>zh_CN</locales>  271         </configuration>  272       </plugin>  273   274     </plugins>  275   </build>  276   277 </project> 

SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建

mavenjar包下载完成后需要在resources文件夹下添加几个配置文件

SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建

applicationContext-mybatis.xml

SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建

 1 <?xml version="1.0" encoding="UTF-8"?>   2 <beans xmlns="http://www.springframework.org/schema/beans"   3     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"   4     xmlns:context="http://www.springframework.org/schema/context"   5     xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:tx="http://www.springframework.org/schema/tx"   6     xsi:schemaLocation="http://www.springframework.org/schema/beans   
 7         http://www.springframework.org/schema/beans/spring-beans.xsd     8         http://www.springframework.org/schema/mvc   
 9         http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd    10         http://www.springframework.org/schema/context   
11         http://www.springframework.org/schema/context/spring-context.xsd  12         http://www.springframework.org/schema/tx    13         http://www.springframework.org/schema/tx/spring-tx-4.0.xsd">  14   15     <!-- Mybatis 和 Spring的整合 -->  16     <!-- 1.数据源:DriverManagerDataSource -->  17     <bean id="dataSource"  18         class="org.springframework.jdbc.datasource.DriverManagerDataSource">  19         <property name="driverClassName" value="com.mysql.jdbc.Driver"></property>  20         <property name="url" value="jdbc:mysql://localhost:3306/test"></property>  21         <property name="username" value="root"></property>  22         <property name="password" value="123456"></property>  23     </bean>  24   25     <!-- 2.Mybatis 的 SqlSession的工厂:SqlSessionFactoryBean dataSource引用数据源 Mybatis   
26         定义数据源,同意加载配置 -->  27     <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">  28         <property name="dataSource" ref="dataSource"></property>  29         <property name="configLocation" value="classpath:mybatis-config.xml"></property>  30     </bean>  31   32     <!-- 3. Mybatis自动扫描加载Sql映射文件/接口:MapperScannerConfigurer sqlSessionFactory   
33         basePackage:指定sql映射文件/接口所在的包(自动扫描) -->  34     <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">  35         <property name="basePackage" value="com.cjl.mapper"></property>  36         <property name="sqlSessionFactory" ref="sqlSessionFactory"></property>  37     </bean>  38   39     <!-- 4.事务管理:DataSourceTransactionManager dataSource 引用上面定义好的数据源 -->  40     <bean id="txManager"  41         class="org.springframework.jdbc.datasource.DataSourceTransactionManager">  42         <property name="dataSource" ref="dataSource"></property>  43     </bean>  44   45     <!-- 5.使用声明式事务: transaction-manager = "txManager" tx:advice 这种 是用 aop方式管理事物   
46         annotation-driven 这种是注解方式管理事物 第一种方式,需要在spring配置文件配置一些参数 第二种方式,需要在 类里 加一些注解进行事物管理   
47         用一种就行,没必须都用 -->  48     <tx:annotation-driven transaction-manager="txManager" />  49   50 </beans>  

SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建

generatorConfig.xml 这个xml主要是为了使用mybatis生成代码用

SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建

 1 <?xml version="1.0" encoding="UTF-8"?>   2 <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">   3 <generatorConfiguration>   4        5     <!-- <properties resource="init.properties"/> -->   6        7     <!-- 指定数据库连接驱动地址 -->   8     <classPathEntry   9         location="C:\Users\Administrator\.m2\repository\mysql\mysql-connector-java\5.1.40\mysql-connector-java-5.1.40.jar" />  10     <!-- 一个数据库一个 context -->  11     <context id="context1">  12       13         <commentGenerator>  14             <!-- 是否取消注释 -->  15             <property name="suppressAllComments" value="true"></property>  16             <!-- 是否生成注释代时间戳-->  17             <property name="suppressDate" value="true"></property>  18         </commentGenerator>  19         <!-- jdbc连接配置 -->  20         <jdbcConnection connectionURL="jdbc:mysql://localhost:3306/test" driverClass="com.mysql.jdbc.Driver" password="123456" userId="root"/>  21               22         <!-- 类型转换 -->    23         <javaTypeResolver>    24             <!-- 是否使用bigDecimal, false可自动转化以下类型(Long, Integer, Short, etc.) -->    25             <property name="forceBigDecimals" value="false"/>    26         </javaTypeResolver>    27           28         <!-- 生成实体类的地址 -->  29         <javaModelGenerator targetPackage="com.cjl.model"  30             targetProject="D:\eclipse-workspace_lt\ssm\src\main\java" />  31               32         <!-- 生成mapper.xml文件 -->  33         <sqlMapGenerator targetPackage="com.cjl.mapper"  34             targetProject="D:\eclipse-workspace_lt\ssm\src\main\resources" />  35           36         <!-- 生成mapxml对应的client 也就是接口dao -->  37         <javaClientGenerator targetPackage="com.cjl.mapper"  38             targetProject="D:\eclipse-workspace_lt\ssm\src\main\java" type="XMLMAPPER" />  39               40         <table schema="test" tableName="tb_department"  domainObjectName="Department" enableCountByExample="false"    41             enableDeleteByExample="false" enableSelectByExample="false"    42             enableUpdateByExample="false">  43             <!-- domainObjectName  指定生成的类的名字 -->  44         </table>  45     </context>  46 </generatorConfiguration>  

SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建

mybatis-config.xml

SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建

 1 <?xml version="1.0" encoding="UTF-8" ?>   2 <!DOCTYPE configuration   3   PUBLIC "-//mybatis.org//DTD Config 3.0//EN"   4   "http://mybatis.org/dtd/mybatis-3-config.dtd">   5 <configuration>   6     <!-- 配置打印 SQL 到控制台 以及懒加载 -->   7     <settings>   8         <setting name="logImpl" value="STDOUT_LOGGING" />   9         <!-- 打开延迟加载的全局开关 -->  10         <setting name="lazyLoadingEnabled" value="true" />  11         <setting name="aggressiveLazyLoading" value="false" />  12         <setting name="mapUnderscoreToCamelCase" value="true" />  13     </settings>  14     <!-- 为org.bb.ssm.mode.UserInfo 设置一个别名 UserInfo -->  15     <typeAliases>  16         <typeAlias type="com.cjl.model.User" alias="User"/>  17     </typeAliases>  18     <mappers>  19        <package name="com.cjl.mapper"/>20     </mappers>  21 </configuration> 

SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建

spring-MVC.xml

SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建

 1 <?xml version="1.0" encoding="UTF-8"?>   2 <beans xmlns="http://www.springframework.org/schema/beans"   3     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"   4     xmlns:context="http://www.springframework.org/schema/context"   5     xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:tx="http://www.springframework.org/schema/tx"   6     xsi:schemaLocation="http://www.springframework.org/schema/beans   
 7         http://www.springframework.org/schema/beans/spring-beans.xsd     8         http://www.springframework.org/schema/mvc   
 9         http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd    10         http://www.springframework.org/schema/context   
11         http://www.springframework.org/schema/context/spring-context.xsd  12         http://www.springframework.org/schema/tx    13         http://www.springframework.org/schema/tx/spring-tx-4.0.xsd">  14     <!-- 开启注解 -->  15     <mvc:annotation-driven/>  16     <!-- 配置自定扫描包 -->  17     <context:component-scan base-package="com.cjl.controller"/>  18     <context:component-scan base-package="com.cjl.service.Impl"/>  19       20     <!-- 配置视图解析器: 如何把 handler 方法返回值解析为实际的物理视图 -->  21     <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">  22         <property name="prefix" value="/WEB-INF/view/"></property>  23         <property name="suffix" value=".jsp"></property>  24     </bean>  25     <!-- 处理静态资源 -->  26     <!-- <mvc:default-servlet-handler/>  --> 27     <mvc:resources mapping="/vendor/**" location="/vendor/" />28     <mvc:resources mapping="/dist/**" location="/dist/" />29 </beans>

SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建

3、接下来创建一张表,已完成代码测试以及本次ssm框架搭建工作

SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建

1 CREATE TABLE `user` (2   `user_id` varchar(10) NOT NULL default '',3   `user_name` varchar(50) default NULL,4   `user_age` varchar(50) default NULL,5   `department_id` int(10) default NULL,6   PRIMARY KEY  (`user_id`)7 ) ENGINE=InnoDB DEFAULT CHARSET=latin1;

SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建

创建好后需要在generatorConfig.xml生成代码配置文件中修改好适合自己项目的配置方法,右键点击项目选择Run as->Maven Build..->在goals中填写:mybatis-generator:generate -e 点击run

SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建

当看到构建成功后即可刷新项目

SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建

可以看到代码已经生成完成!!将项目加入tomcat启动

可以看到项目部署已经完成!


以上是关于SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建的主要内容,如果未能解决你的问题,请参考以下文章

SSM框架整合

后端SSM(Spring + SpringMVC + Mybatis)框架整合

SSM(Spring + Springmvc + Mybatis)框架面试题

转SSM框架——详细整合教程(Spring+SpringMVC+MyBatis)

springmvc和ssh,ssm的区别

shiro整合SSM(spring_springmvc_mybatis)