基于maven创建spring-mvc项目

步骤

  • 通过idea创建项目
  • 集成spring-mvc
  • 集成spring
  • 集成c3p0
  • 配置spring声明式事务管理
  • 集成Mybatis

一、创建项目

  1. 选择maven-archetype-webapp:


    create_project_01.png
  2. 填写GroupId和ArtifactId,一路next-->finish即可


    create_project_02.png
  3. src目录下创建java包并设置为source root,同样resources也要设置为resource root


    图片.png
  4. 创建项目结构包:


    图片.png
  5. 打开webapp下WEB-INF的web.xml可以看到idea自动生成的dtd是比较老的版本,需要改为3.0版本
    可以打开apache下的conf\web.xml文件复制

  1. 修改默认的字节码编译版本,在.idea下的compiler.xml可以查看,默认是1.5修改为1.8:


    图片.png

    并且在pom.xml下修改


    example
    
      
        org.apache.maven.plugins
        maven-compiler-plugin
        2.3.2
        
          1.8
          1.8
        
      
    
  

到此就项目创建就完成了

二、集成spring-mvc

打开:mvnrepository.com

  1. 搜索org.springframework的Spring Web MVC
          
org.springframework
            spring-webmvc
            ${spring.version}

复制进 pom.xml文件中 标签中,并且将version提取到标签中,便于以后维护时管理版本:

    
        4.3.3.RELEASE
        3.4.1
        1.3.0
        3.2.2
    
  1. 依赖servlet和jstl,因为tomcat也有,所以定义一下作用域scope,容器提供:

            javax.servlet
            javax.servlet-api
            3.1.0
            provided
        
        
            javax.servlet
            jstl
            1.2
        
  1. 配置spring-mvc
    在resources目录下创建spring-mvc.xml,配置等会再写,在这之前需要初始化spring-mvc配置到web.xml中。
    web.xml:先定义一个servlet和servlet-mapping,
 
    spring-mvc
    org.springframework.web.servlet.DispatcherServlet
    
    
      contextConfigLocation
      classpath:spring-mvc.xml
    
  
    1
  
  
  
    spring-mvc
    *.do
  

spring-mvc.xml:

    
    
    
    
        
        
        
        
    

    
    

web.xml中配置请求和应答字符编码处理过滤器CharacterEncodingFilter,要配置在前面

    
        请求和应答字符编码过滤器
        encoding-filter
        org.springframework.web.filter.CharacterEncodingFilter
    
    
        encoding-filter
        spring-mvc
    
  1. 验证spring-mvc可用:
@Controller
public class LoginHandler {
   
    @RequestMapping("/login.do")
    public String login(String account, String password, HttpServletRequest httpRequest){
        System.out.printf("我进来了");
        return "index";
    }
}

启动tomcat,访问 http://localhost/login.do,看到index.jsp界面即说明配置成功。

三、集成spring

由于集成spring-mvc时spring的基础包都已经导入进来不需额外依赖,只需配置一下,在resources目录下创建spring-context.xml文件进行配置:
首先在web.xml下配置spring监听器

    
        启动spring容器
        org.springframework.web.context.ContextLoaderListener
    
    
        contextConfigLocation
        classpath:spring-context.xml
    

spring-context:

 
    

四、集成c3p0

  1. 添加依赖c3p0和jdbc-mysql
 
        
            com.mchange
            c3p0
            0.9.5.2
        
        
        
            mysql
            mysql-connector-java
            5.1.39
        
  1. 在spring-context中定义c3p数据源ComboPooledDataSource
  
    
        
        
        
        
        
        
        
        
        
        
        
    

五、配置spring声明式事务管理

  1. 依赖
        
            org.springframework
            spring-tx
            ${spring.version}
        
        
            org.springframework
            spring-jdbc
            ${spring.version}
        
  1. spring-context中配置事务管理器:
    
    
        
    

    
    

六、集成mybatis

1.添加依赖:mybatis、mybatis-spring、pagehelper、cglib:

 
            org.mybatis
            mybatis
            ${mybatis.version}
        
        
            org.mybatis
            mybatis-spring
            ${mybatis.spring.version}
        
        
            cglib
            cglib-nodep
            ${cglib.version}
        
        
        
            com.github.pagehelper
            pagehelper
            4.1.6
        
  1. 配置:创建mybatis-config.xml





    
        
        
        
        
    

    
        
            
            
            
            
        
    


  1. spring-context.xml配置SqlSessionFactoryBean
    指定数据源和mybatis配置文件路径和mapper文件路径(mapper为在resources下创建的包)
    
        
        
        
            
                classpath:mapper/*.xml
            
        
    
  1. 在spring-context.xml配置扫描mapper生成dao(MapperScannerConfigurer)指定SqlSessionFactoryBean,指定要扫描的包


        
        
    

到此,集成完成。

你可能感兴趣的:(基于maven创建spring-mvc项目)