Intellij-IDEA-maven+springMVC+mybatis整合

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

GitHub地址

https://github.com/Ethel731/WebProjectDemo

前言

之前都是在已经建立好的项目基础上开发,没有自己建立过IDEA的maven+springMVC+Mybatis项目,今天刚好学习一下。

maven的本地安装自行度娘~

步骤

新建项目

首先,打开IDEA后新建一个project:

选择maven项目和JDK版本后,勾选Create from archetype创建原型,因为我们这是一个web项目,因此选择maven-archetype-webapp,点击“next”:

此时跳出的窗口是对maven仓库的基本配置,groupID中填写本项目仓库路径(默认小写),artifactID为项目名称。Version一般分两种,SNAPSHOT为快照版本,RELEASE为最终发布版本,前面的编号为版本号:

接下来进入maven配置阶段,我的本地安装路径为D:\apache-maven-3.5.0,接下来两个分别是maven配置文件地址和本地仓库地址:

最后审查一下我们的配置,点击"finish":

添加源码文件夹

IDEA生成的项目目录src下并没有源码文件夹,需要在main下新建一个Java文件夹:

新建文件夹后,IDEA仍然不能识别源码和resources文件地址,需要我们手动设置一下。

设置Source Root和Resource Root

右键新建的Java文件夹,mark directory as sources root:

对同目录下的resources文件夹也是同样的操作,mark directory as resources root:

完成后项目目录是这样的:

配置web.xml

web.xml为JavaWEB核心配置文件,也是程序的入口,因此我们首要配置它。IDEA自动生成的web.xml并不是规范的,是DOCTYPE规范,而我们WEB-INF下的web.xml是XML文件。这里需要清空后全部覆盖,此处贴上我的一个初始配置:




  
  
contextConfigLocation
classpath:applicationContext.xml
  
  
org.springframework.web.context.ContextLoaderListener
  


  
  
CharacterEncodingFilter
org.springframework.web.filter.CharacterEncodingFilter

  encoding
  utf-8

  
  
CharacterEncodingFilter
/*
  

  
  

  html encoding
  JSPConfiguration
  *.html
  true
  UTF-8
  false
  
  

  

  
  
springmvc
org.springframework.web.servlet.DispatcherServlet

  contextConfigLocation
  classpath:springmvc.xml

1
  
  
springmvc
/
  

pom.xml

配置完web.xml之后,紧接着就是项目根目录下的pom文件,该文件用于管理源代码、配置文件、开发者的信息和角色、问题追踪系统、组织信息、项目授权、项目的url、项目的依赖关系等等。

配置pom前,首先是技术选型,也就是这个项目所需要用到哪些技术栈。如果不知道自己dependency怎么写,可以直接去https://mvnrepository.com/中搜索。eg:搜索mybatis弹出mybatis相关,点击mybatis后进入版本列表,点击其中一个版本,出现其配置方法:

现在贴入本DEMO的pom.xml(注意MyBatis Generator的配置,下面会讲到):


  4.0.0
  com.zyx.freemarkerworddemo
  FreemarkerWordDemo
  war
  1.0-SNAPSHOT
  FreemarkerWordDemo Maven Webapp
  http://maven.apache.org

  
  
4.1.3.RELEASE
3.2.8
1.2.2
1.3.5
5.1.32
1.0.9
1.6.4
1.2
2.5
2.0
3.3.2
2.5
3.3
2.3.23
UTF-8
  

  


  org.apache.commons
  commons-lang3
  ${commons-lang3.version}


  commons-io
  commons-io
  ${commons-io.version}


  commons-net
  commons-net
  ${commons-net.version}



  org.slf4j
  slf4j-log4j12
  ${slf4j.version}



  org.mybatis
  mybatis
  ${mybatis.version}


  org.mybatis
  mybatis-spring
  ${mybatis.spring.version}



  mysql
  mysql-connector-java
  ${mysql.version}



  com.alibaba
  druid
  ${druid.version}




  org.springframework
  spring-context
  ${spring.version}


  org.springframework
  spring-beans
  ${spring.version}


  org.springframework
  spring-webmvc
  ${spring.version}


  org.springframework
  spring-jdbc
  ${spring.version}


  org.springframework
  spring-aspects
  ${spring.version}


  org.springframework
  spring-test
  ${spring.version}



  org.springframework
  spring-context-support
  ${spring.version}



  jstl
  jstl
  ${jstl.version}


  javax.servlet
  servlet-api
  ${servlet-api.version}
  provided


  javax.servlet
  jsp-api
  ${jsp-api.version}
  provided


  org.freemarker
  freemarker
  ${freemarker.version}




  org.mybatis.generator
  mybatis-generator-core
  ${mybatis-generator.version}



  junit
  junit
  3.8.1
  test

  
  
FreemarkerWordDemo

  


  org.apache.tomcat.maven
  tomcat7-maven-plugin
  2.2
  
80
  



  org.mybatis.generator
  mybatis-generator-maven-plugin
  1.3.2

  




  
src/main/java

  **/*.properties
  **/*.xml

false
  
  
src/main/resources

  **/*.properties
  **/*.xml


  generatorConfig.xml

false
  

  

resources资源目录

一般resources文件夹下存放的都是我们项目集成的配置文件,springMVC、Mybatis等文件配置都放在这里。本DEMO中的配置文件目录如下:

首先是spring配置文件applicationContext.xml,此处有两个地方需要注意,一个是阿里的druid数据库连接池,我们的jdbc.properties在这里被加载;一个是整合mybatis和spring,需要在MapperScannerConfigurer中配置DAO路径以便创建MapperFactoryBean

jdbc.properties:

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/demofreeword?characterEncoding=utf-8
jdbc.username=root
jdbc.password=123456

applicationContext.xml

    
    
    
    	
    	 
    	
    	
    		
    		
    		
    		
    		
    		
    			1
    		
    		
    			5
    		
    		
    			1
    		
    		
    		
    			60000
    		
    		
    		
    			stat
    		
    		
    		
    			60000
    		
    		
    		
    			300000
    		
    	
    
    	
    	
    		
    		
    		
    		
    	
    	
    		
    	
    
    	
    	
    

其余配置文件大同小异,在此就不一一列举了。详情可下载源码。

源码文件夹下的项目目录

配置文件完成后就是建立J2EE的项目目录了,源码文件都在Java文件夹下,具体目录见下图:

到此,项目目录已完成。

mybatis-genterator插件配置:

mybatis-generator是mybatis的一个插件,用于自动生成model及DAO(mapper)层的代码,需要开发者事前在数据库中设置好数据库表及其字段、属性等,以便自动映射JAVA对象。此处只写其配置及使用。

先在pom.xml文件中配置Tomcat插件和MyBatis Generator(上文pom.xml已给出),并定义generatorConfig.xml(打包时不打入war包,只在创建DAO,model层时用到),此处直接贴入generatorConfiguration:

generatorConfig.xml

















在generatorConfiguration中:

  • location为本地MySQL包的地址
  • jdbcConnection配置数据库连接
  • javaModelGenerator targetPackage配置需要生成model文件的地址
  • sqlMapGenerator targetPackage配置需要生成的mapper.xml文件地址
  • javaClientGenerator targetPackage配置需要生成的DAO文件地址

配置完成后,点击右上角

,

点击“+”添加一个新的configuration,选择“maven”:

在弹出的对话框Name填写插件的名字mybatis-generator(这里是自己定义的,最好写上插件的名字),command line中填写mybatis-generator:generate -e(这里**-e后面不能出现空格**,-e表示在控制台显示错误信息):

点击确定后,可看出右上角已显示配置好的mybatis-generator,先点击右侧的maven project弹出maven相关操作按钮,进入run configurations,选择mybatis-generator。双击运行或者右键run:

出现下图结果后,表示项目建成:

备注:在上述生成文件中,dao目录下接口文件会以Mapper为后缀,可选择手动更改为DAO文件。当rename文件成功后,mapper.xml中namespace将自动更改,无需更多操作。

部署项目

项目生成后,部署到Tomcat。窗口右上角处点击“Edit Configurations...”,在弹出窗口左上角点击“+”号选择Tomcat Server——本地Tomcat:

填写所用服务名称(自定义),在server选项下,选择默认开启的浏览器,点击下图“+”号创建Artifacts,选择war exploded:

  • war模式:将WEB工程以包的形式上传到服务器 ;
  • war exploded模式:将WEB工程以当前文件夹的位置关系上传到服务器;

详情参见:http://blog.csdn.net/xlgen157387/article/details/56498938

创建号创建Artifacts:

选择打包方式为war exploded模式:

服务器设置完成之后,切换选项卡到部署(deployment),选择Artifacts:

再次选择war exploded:

一切做完了,点击Apply无报错表示部署成功,OK退出。

运行项目

选择已部署的项目,点击右边绿色三角即为run:

转载于:https://my.oschina.net/u/2427564/blog/1475729

你可能感兴趣的:(Intellij-IDEA-maven+springMVC+mybatis整合)