超级详细的新手在Idea中使用maven配置Spring+springmvc+mybatis(SSM)框架步骤

首先呢我们需要准备一些东西:tomact建议用最新的,当然没有最新的也用tomact8以上。jdk:1.8,idea2018年版,maven是用的3.0以上。
下面开始详细描述步骤:
一:创建maven-web项目
1.点击新建一个project,idea的project是一个很大的范畴。
超级详细的新手在Idea中使用maven配置Spring+springmvc+mybatis(SSM)框架步骤_第1张图片

2.选择创建一个maven项目;
记住把那个create from arch type打上勾,然后使用系统提供的骨架,选择maven-arch type-web app这一个骨架。点击next
超级详细的新手在Idea中使用maven配置Spring+springmvc+mybatis(SSM)框架步骤_第2张图片

3.填写好grouple和artifactld,.就是自己取个名字就行。当然惯例呢是项目分组分类,然后后面就是自己域名倒置(我自己就是自己的博客名了)
超级详细的新手在Idea中使用maven配置Spring+springmvc+mybatis(SSM)框架步骤_第3张图片
4.使用默认的就行,也可以选用自己安装的maven,点击next
超级详细的新手在Idea中使用maven配置Spring+springmvc+mybatis(SSM)框架步骤_第4张图片
5.填写项目名:(红点1处),选择存储地址(红点2处),书写模块名(红点3处),如果用惯了eclipse的人可能习惯workspace,这里的module就相当于eclipse里面的一个项目。一般操作都是以模块为单位的,至于本身project只是一个说明,这是一个组里面的,没有什么实际意义。最后点击finish完成。此时我们需要等待一会,等待maven下载骨架。
超级详细的新手在Idea中使用maven配置Spring+springmvc+mybatis(SSM)框架步骤_第5张图片
6.骨架创建完毕:下面的build success 显示创建成功。
超级详细的新手在Idea中使用maven配置Spring+springmvc+mybatis(SSM)框架步骤_第6张图片
二进行pom.xml的一些设置和配置相应文件信息。
1、引入项目依赖的jar包
(1)spring的jar包
(2)springmvc的jar包
(3)mybatis的jar包
(4)数据库连接池,驱动包
(5)其他(jstl,servlet-api,junit)(先引入必须的jar包,后面的jar包需要的时候再引入)
自己需要的jar包就去里面引用,搜索就好。自己选择的版本尽量一样。如果不知道jar包的可以直接复制我的jar包代码。当让我的也只是包含了一些基本的东西而已,具体代码需要的需要大家自己去添加。
Maven的网站:http://mvnrepository.com/

超级详细的新手在Idea中使用maven配置Spring+springmvc+mybatis(SSM)框架步骤_第7张图片
pom.xml文件

<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0modelVersion>
  <groupId>ssmgroupId>
  <artifactId>com.liuyuneiartifactId>
  <packaging>warpackaging>
  <version>1.0-SNAPSHOTversion>
  <name>com.liuyunei Maven Webappname>
  <url>http://maven.apache.orgurl>
  
  
  
  <dependencies>
    
    <dependency>
      <groupId>com.github.pagehelpergroupId>
      <artifactId>pagehelperartifactId>
      <version>5.0.0version>
    dependency>
    
    
    <dependency>
      <groupId>org.mybatis.generatorgroupId>
      <artifactId>mybatis-generator-coreartifactId>
      <version>1.3.5version>
    dependency>
    <dependency>
      <groupId>org.springframeworkgroupId>
      <artifactId>spring-webmvcartifactId>
      <version>4.3.7.RELEASEversion>
    dependency>

    
    
    <dependency>
      <groupId>com.fasterxml.jackson.coregroupId>
      <artifactId>jackson-databindartifactId>
      <version>2.8.8version>
    dependency>
    
    
    <dependency>
      <groupId>org.hibernategroupId>
      <artifactId>hibernate-validatorartifactId>
      <version>5.4.1.Finalversion>
    dependency>
    
    
    <dependency>
      <groupId>org.springframeworkgroupId>
      <artifactId>spring-jdbcartifactId>
      <version>4.3.7.RELEASEversion>
    dependency>

    
    
    <dependency>
      <groupId>org.springframeworkgroupId>
      <artifactId>spring-testartifactId>
      <version>4.3.7.RELEASEversion>
    dependency>
    
    
    <dependency>
      <groupId>org.springframeworkgroupId>
      <artifactId>spring-aspectsartifactId>
      <version>4.3.7.RELEASEversion>
    dependency>
    
    
    <dependency>
      <groupId>org.mybatisgroupId>
      <artifactId>mybatisartifactId>
      <version>3.4.2version>
    dependency>
    
    
    <dependency>
      <groupId>org.mybatisgroupId>
      <artifactId>mybatis-springartifactId>
      <version>1.3.1version>
    dependency>
    
    
    <dependency>
      <groupId>c3p0groupId>
      <artifactId>c3p0artifactId>
      <version>0.9.1version>
    dependency>
    
    <dependency>
      <groupId>mysqlgroupId>
      <artifactId>mysql-connector-javaartifactId>
      <version>5.1.41version>
    dependency>
    
    
    <dependency>
      <groupId>jstlgroupId>
      <artifactId>jstlartifactId>
      <version>1.2version>
    dependency>
    
    <dependency>
      <groupId>javax.servletgroupId>
      <artifactId>javax.servlet-apiartifactId>
      <version>3.0.1version>
      <scope>providedscope>
    dependency>
    
    
    <dependency>
      <groupId>junitgroupId>
      <artifactId>junitartifactId>
      <version>4.12version>
    dependency>
  dependencies>
  <build>
    <finalName>com.liuyuneifinalName>
  build>
project>

2.这个时候maven在下载对应的jar包,所以大家就去搭建目录结构,按照下图搭建。那个小图片说明mbg的位置。
超级详细的新手在Idea中使用maven配置Spring+springmvc+mybatis(SSM)框架步骤_第8张图片
超级详细的新手在Idea中使用maven配置Spring+springmvc+mybatis(SSM)框架步骤_第9张图片
3.配置相应的文件信息
(1)jdbc.properties文件:

jdbc.jdbcUrl=jdbc:mysql://localhost:3306/ssm_crud
jdbc.driverClass=com.mysql.jdbc.Driver
jdbc.user=root
jdbc.password=root

(2)mybatis-config.xml文件



<configuration>
   <settings>
      <setting name="mapUnderscoreToCamelCase" value="true"/>
   settings>

   <typeAliases>
      <package name="com.atguigu.crud.bean"/>
   typeAliases>

   <plugins>
      <plugin interceptor="com.github.pagehelper.PageInterceptor">
         
         <property name="reasonable" value="true"/>
      plugin>
   plugins>

configuration>

(3)applicationContext.xml文件


<beans xmlns="http://www.springframework.org/schema/beans"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns:context="http://www.springframework.org/schema/context"
   xmlns:aop="http://www.springframework.org/schema/aop"
   xmlns:tx="http://www.springframework.org/schema/tx"
   xsi:schemaLocation="http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.3.xsd
      http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
      http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.3.xsd
      http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd">

   <context:component-scan base-package="com.atguigu">
      <context:exclude-filter type="annotation"
         expression="org.springframework.stereotype.Controller" />
   context:component-scan>

   
   
   <context:property-placeholder location="classpath:dbconfig.properties" />
   <bean id="pooledDataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
      <property name="jdbcUrl" value="${jdbc.jdbcUrl}">property>
      <property name="driverClass" value="${jdbc.driverClass}">property>
      <property name="user" value="${jdbc.user}">property>
      <property name="password" value="${jdbc.password}">property>
   bean>

   
   <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
      
      <property name="configLocation" value="classpath:mybatis-config.xml">property>
      <property name="dataSource" ref="pooledDataSource">property>
      
      <property name="mapperLocations" value="classpath:mapper/*.xml">property>
   bean>

   
   <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
      
      <property name="basePackage" value="com.atguigu.crud.dao">property>
   bean>

   
   <bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate">
      <constructor-arg name="sqlSessionFactory" ref="sqlSessionFactory">constructor-arg>
      <constructor-arg name="executorType" value="BATCH">constructor-arg>
   bean>
   

   
   <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
      
      <property name="dataSource" ref="pooledDataSource">property>
   bean>
   
   <aop:config>
      
      <aop:pointcut expression="execution(* com.atguigu.crud.service..*(..))" id="txPoint"/>
      
      <aop:advisor advice-ref="txAdvice" pointcut-ref="txPoint"/>
   aop:config>

   
   <tx:advice id="txAdvice" transaction-manager="transactionManager">
      <tx:attributes>
         
         <tx:method name="*"/>
         
         <tx:method name="get*" read-only="true"/>
      tx:attributes>
   tx:advice>

   

beans>

(4)dispatcherServlet-servlet.xml文件


<beans xmlns="http://www.springframework.org/schema/beans"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns:context="http://www.springframework.org/schema/context"
   xmlns:mvc="http://www.springframework.org/schema/mvc"
   xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd
      http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
      http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd">

   
   <context:component-scan base-package="com.atguigu" use-default-filters="false">
      
      <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
   context:component-scan>

   
   <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
      <property name="prefix" value="/WEB-INF/views/">property>
      <property name="suffix" value=".jsp">property>
   bean>

   
   
   <mvc:default-servlet-handler/>
   
   <mvc:annotation-driven/>

beans>

(5)web.xml文件


<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns="http://java.sun.com/xml/ns/javaee"
   xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
   id="WebApp_ID" version="2.5">

   
   
   <context-param>
      <param-name>contextConfigLocationparam-name>
      <param-value>classpath:applicationContext.xmlparam-value>
   context-param>

   
   <listener>
      <listener-class>org.springframework.web.context.ContextLoaderListenerlistener-class>
   listener>

   
   
   <servlet>
      <servlet-name>dispatcherServletservlet-name>
      <servlet-class>org.springframework.web.servlet.DispatcherServletservlet-class>
      <load-on-startup>1load-on-startup>
   servlet>

   
   <servlet-mapping>
      <servlet-name>dispatcherServletservlet-name>
      <url-pattern>/url-pattern>
   servlet-mapping>

   
   <filter>
      <filter-name>CharacterEncodingFilterfilter-name>
      <filter-class>org.springframework.web.filter.CharacterEncodingFilterfilter-class>
      <init-param>
         <param-name>encodingparam-name>
         <param-value>utf-8param-value>
      init-param>
      <init-param>
         <param-name>forceRequestEncodingparam-name>
         <param-value>trueparam-value>
      init-param>
      <init-param>
         <param-name>forceResponseEncodingparam-name>
         <param-value>trueparam-value>
      init-param>
   filter>
   <filter-mapping>
      <filter-name>CharacterEncodingFilterfilter-name>
      <url-pattern>/*url-pattern>
   filter-mapping>

   
   <filter>
      <filter-name>HiddenHttpMethodFilterfilter-name>
      <filter-class>org.springframework.web.filter.HiddenHttpMethodFilterfilter-class>
   filter>
   <filter-mapping>
      <filter-name>HiddenHttpMethodFilterfilter-name>
      <url-pattern>/*url-pattern>
   filter-mapping>
   <filter>
      <filter-name>HttpPutFormContentFilterfilter-name>
      <filter-class>org.springframework.web.filter.HttpPutFormContentFilterfilter-class>
   filter>
   <filter-mapping>
      <filter-name>HttpPutFormContentFilterfilter-name>
      <url-pattern>/*url-pattern>
   filter-mapping>


web-app>

(6)mbg.xml文件



<generatorConfiguration>

    <context id="DB2Tables" targetRuntime="MyBatis3">
        <commentGenerator>
            <property name="suppressAllComments" value="true" />
        commentGenerator>
        
        <jdbcConnection driverClass="com.mysql.jdbc.Driver"
                        connectionURL="jdbc:mysql://localhost:3306/ssm_crud" userId="root"
                        password="root">
        jdbcConnection>

        <javaTypeResolver>
            <property name="forceBigDecimals" value="false" />
        javaTypeResolver>

        
        <javaModelGenerator targetPackage="com.atguigu.crud.bean"
                            targetProject=".\src\main\java">
            <property name="enableSubPackages" value="true" />
            <property name="trimStrings" value="true" />
        javaModelGenerator>

        
        <sqlMapGenerator targetPackage="mapper" targetProject=".\src\main\resources">
            <property name="enableSubPackages" value="true" />
        sqlMapGenerator>

        
        <javaClientGenerator type="XMLMAPPER"
                             targetPackage="com.atguigu.crud.dao" targetProject=".\src\main\java">
            <property name="enableSubPackages" value="true" />
        javaClientGenerator>


        
        <table tableName="tbl_emp" domainObjectName="Employee">table>
        <table tableName="tbl_dept" domainObjectName="Department">table>
    context>
generatorConfiguration>

到此配置完毕,然后大家自己去模块里面添加Tom act,再把项目加上去就可以运行了。

你可能感兴趣的:(SSM框架)