SSM项目搭建

SSM项目搭建

方式一:父子模块

第一步,新建项目

1.新建maven项目(父模块,只要有pom.xml就行其他无所谓,都可以删掉)
2.新建maven子项目

主要包括以下五部分:

  1. dao模块
  2. service模块
  3. controller模块
  4. webapp模块
  5. domain模块
    右键项目名称–new–module–maven(webapp需要选择webapp骨架,其他模块都不需要骨架)
    SSM项目搭建_第1张图片
    项目创建完毕目录结构如下:
    SSM项目搭建_第2张图片

第二步,pom.xml中导入项目需要的依赖

1.在父模块的pom.xml中导入项目需要的依赖

需要导入的jar包依赖:
spring (7个包)

  1. spring-aop
  2. spring-context
  3. spring-web
  4. spring-webmvc
  5. spring-test
  6. spring-tx
  7. spring-jdbc

mybatis(2个包)

  1. mybatis
  2. mybatis-spring
  3. mybatis-generator-core(逆向工程)

基本包

  1. junit
  2. servlet-api
  3. jsp-api
  4. jstl
  5. mysql-connector-java
  6. log4j
  7. slf4j-api
  8. slf4j-log4j12
  9. c3p0

aspectjweaver包–解析切入点表达式
父模块pom.xml文件:



    4.0.0

    org.example
    ssm_ManageSystemTest
    1.0-SNAPSHOT
    
        ssm_ManageSystemWebapp
        ssm_ManageSystemDao
        ssm_MavenSystemDomain
        ssm_ManageSystemController
        ssm_ManageSystemService
    
    pom
    

        
        
            log4j
            log4j
            1.2.14
        
        
        
            org.slf4j
            slf4j-api
            1.7.25
        
        
        
            org.slf4j
            slf4j-log4j12
            1.7.25
            
        


        
        
            org.springframework
            spring-context
            4.3.7.RELEASE
        
        
            org.springframework
            spring-web
            4.3.7.RELEASE
        
        
        
            org.springframework
            spring-webmvc
            4.3.7.RELEASE
        
        
        
            org.springframework
            spring-jdbc
            4.3.7.RELEASE
        
        
        
            org.springframework
            spring-aspects
            4.3.7.RELEASE
        
        
        
            org.springframework
            spring-test
            4.3.7.RELEASE
            test
        
        
        
            org.springframework
            spring-tx
            4.3.7.RELEASE
        
        
        
            org.aspectj
            aspectjweaver
            1.9.5
        


        
        
            org.mybatis
            mybatis
            3.4.2
        
        
        
            org.mybatis
            mybatis-spring
            1.3.1
        
        
        
            org.mybatis.generator
            mybatis-generator-core
            1.3.2
        


        
            javax.servlet
            javax.servlet-api
            3.0.1
            test
        
        
        
            javax.servlet
            jstl
            1.2
        
        
            javax.servlet.jsp
            jsp-api
            2.2
            provided
        

        
            junit
            junit
            4.11
            test
        

        
        
            com.mchange
            c3p0
            0.9.5.2
        

        
        
            mysql
            mysql-connector-java
            5.1.35
        

  com.fasterxml.jackson.core

  jackson-core
  2.8.7



  com.fasterxml.jackson.core
  jackson-databind
  2.8.7

    

2.在子模块之间互相导入需要的子模块

ps:每个子模块里都有各自的pom.xml,子模块自动继承父模块导入的依赖,父子模块之间不需要再导入依赖。但是不同的子模块之间是独立的,如果想使用其他子模块的内容,需要导入该模块的依赖。
各子模块依赖关系如图所示:
SSM项目搭建_第3张图片
webapp模块要引入dao/service/controller的依赖;
dao/service/controller三个模块都需要引入domain的依赖;
service需要引入dao的依赖;
controller需要引入service的依赖;
SSM项目搭建_第4张图片
要想把子模块导入其他子模块,要先到该模块的pom.xml中找到上图左半部分将相应的信息对应填到要导的子模块的pom中。

第三步,书写xml配置文件(这一步都是在webapp模块下的resources里操作的)

1.配置spring配置文件applicationContext.xml

在webapp模块中创建applicationContext.xml文件,并复制下列内容






    
    
        
    



    
    
    
    
    
    
    
        
        
        
        
    
    
    
        
        
        
    
    
    
        
        
        
    


    
    
        
    




    
        
    

    
        
        
    

    
        
            
            
            
            
        
    





jdbc.properties文件

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/xjjdb1?useUnicode=true&characterEncoding=UTF-8&useSSL=false
username=root
password=1234

mybatis配置被并入applicationContext中了,但是别名等配置依旧需要在mybatis的配置文件中配置,applicationContext引用。
mybatis-config.xml文件




    
        
        
        
    

    
    
        
    


在applicationContext.xml中下面的配置必须引入了dao/service/controller模块的依赖之后才能用,这就是webapp需要引入dao/service/controller模块的依赖的原因。

 
    
        
    

2.springMVC配置文件springMVC.xml


    
               

    
    
        
        
    
    
    
        
        
            
                
            
            
                
                    
                        
                    
                
            
        
    
    
    
    
    
    
    
    
    
    


springmvc.xml文件中下面的配置也必须引入dao/service/controller的依赖才能使用


               
3.添加log4j.xml文件

要使用log4j查看日志除了导入依赖以外,还需要如下配置文件。





    
    
        
        
            
        
        
            
            
            
            
            
            
        
    

    
    
        
        
        
        
        
        
        
        
        
        
        
        
        
        
            
        
    

    
        
        
        
        
        
        
        
            
        
    

    
    
        
        
        
        
        
        
        
            
        
    

    
    
        
        
        
        
        
    

第四步,配置web.xml文件(webapp模块WEB-INF下)




  Archetype Created Web Application
  
  
  
    org.springframework.web.context.ContextLoaderListener
  
  
  
    contextConfigLocation
    classpath:applicationContext.xml
  


  
  
    dispatcherServlet
    org.springframework.web.servlet.DispatcherServlet
    
    
      contextConfigLocation
      classpath:springMVC.xml
    
    1
  
  
    dispatcherServlet
    /
  

  
  
    log4jConfigLocation
    
      classpath:log4j.xml
    
  



  
  
    CharacterEncodingFilter
    org.springframework.web.filter.CharacterEncodingFilter
    
      encoding
      utf-8
    
    
      forceRequestEncoding
      true
    
    
      forceResponseEncoding
      true
    
  
  
    CharacterEncodingFilter
    /*
  


  
  
    HiddenHttpMethodFilter
    org.springframework.web.filter.HiddenHttpMethodFilter
  
  
    HiddenHttpMethodFilter
    /*
  
  
    HttpPutFormContentFilter
    org.springframework.web.filter.HttpPutFormContentFilter
  
  
    HttpPutFormContentFilter
    /*
  


你可能感兴趣的:(SSM项目搭建)