【SpringMVC学习笔记】03 使用maven创建springMVC项目

2018.5.30
1.创建maven项目
项目结构:


第一个√为简单创建maven项目,可跳过选择是否为web项目的选项
    
2.因为不是web项目,所有pom.xml文件中,war包的标签会报错,报错原因如下。

解决办法


3.配置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/xsd/maven-4.0.0.xsd" >

< modelVersion > 4.0.0 </ modelVersion >

< groupId > com.lu </ groupId >

< artifactId > maventest3 </ artifactId >

< version > 0.0.1-SNAPSHOT </ version >

< packaging > war </ packaging >

< properties >



<!-- 引入 jar 包的版本名字随便起 -->

< spring.version > 4.3.2.RELEASE </ spring.version >

</ properties >

< dependencies >

< dependency >

     < groupId > org.springframework </ groupId >

  < artifactId > spring- webmvc </ artifactId >

  < version > ${spring.version} </ version >

   </ dependency >

   </ dependencies >

</ project >

4.配置springmvc.xml配置文件到如下路径

5.配置web.xml

<? xml version = "1.0" encoding = "UTF-8" ?>

< 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" >


< display-name > springmvc - maven </ display-name >

< welcome-file-list >

< welcome-file > / </ welcome-file >

</ welcome-file-list >

<!-- servlet 前端控制器 只有一个 servlet -->

< servlet >

< servlet-name > springMVC </ servlet-name >

< servlet-class > org.springframework.web.servlet.DispatcherServlet </ servlet-class >

<!-- springmvc 配置文件默认的名字  
<servlet-name>-servlet.xml-->

<!-- 初始化 xml 文件名字 -->


< init-param >

    < param-name > contextConfigLocation </ param-name >

    < param-value > classpath:springMVC-servlet.xml </ param-value > <!-- 如果放在 WEB-INF 文件夹下: /WEB-INF/**. xml
-->
</ init-param >

< load-on-startup > 1 </ load-on-startup > <!-- 一启动就初始化 -->

</ servlet >

< servlet-mapping >

< servlet-name > springMVC </ servlet-name >
 
< url-pattern > / </ url-pattern > <!-- 系统中所有的请求都走这个 servlet    有的是 *.do strust2 -->

</ servlet-mapping >




<!-- 解决 SpringMVC post 乱码 ( 字符编码过滤器 ) -->

< filter >

      < filter-name > characterEncodingFilter </ filter-name >

      < filter-class > org.springframework.web.filter.CharacterEncodingFilter </ filter-class >

      < init-param >

        < param-name > encoding </ param-name >

        < param-value > UTF-8 </ param-value >

      </ init-param >

      < init-param >

        < param-name > forceEncoding </ param-name >

        < param-value > true </ param-value >

      </ init-param >

   </ filter >

   < filter-mapping >

      < filter-name > characterEncodingFilter </ filter-name >

      < url-pattern > /* </ url-pattern >

   </ filter-mapping >

<!-- 相当于每一个 servlet 中的 request.setCharacterEncoding("UTF-8")
response.setCharacterEncoding("UTF-8") -->

</ web-app >

6.创建controller
@Controller
public class IndexController {
   /**
    * 主页设置 "/"的话默认情况下就访问
    * @return
    */
  @RequestMapping ( "/" )
public String home() {

      return "home" ;
   }
}
7.创建home.jsp
8.配置默认主页面
右键-run as
<welcome- file - list >
<welcome- file >/</welcome- file >
</welcome- file - list >
9.配置JDK插件
默认情况下eclipse的maven项目使用jdk1.5编译,需要添加maven的jdk编译插件
定义变量:非必须
<properties>
<!-- 定义变量 <encoding>$ {project.build.sourceEncoding} 改为UTF-8</encoding>-->
<project.build.sourceEncoding> UTF-8 </project.build.sourceEncoding>

<build>
<plugins>
<!-- java编译插件 --><!-- 解决每次更新maven项目,用于编译maven项目的jdk会变回1.5 -->
<plugin>
<groupId> org.apache.maven.plugins </groupId>
<artifactId> maven-compiler-plugin </artifactId>
<version> 3.6.0 </version>
<configuration>
<source> 1.8 </source>
<target> 1.8 </target>
<encoding> $ {project.build.sourceEncoding} </encoding>
</configuration>
</plugin>
</plugins>
</build>

10.也可以用maven的tomcat插件运行maven项目
(1)加入插件
<!-- 配置Tomcat插件 多个项目多个tomcat --><!-- 本地可以不安装tomcat和本地tomcat无关 -->
<plugin>
<groupId> org.apache.tomcat.maven </groupId>
<artifactId> tomcat7-maven-plugin </artifactId> <!-- tomcat版本 -->
<configuration>
<port> 8001 </port> <!-- 自定义端口号 -->
<path> /springmvc </path> <!-- 项目的路径 -->
</configuration>
</plugin>
(2)运行项目

配置name:起名字随意
Goals:tomcatX:run 大小写严格区分

插件执行:





在web.xml依赖注入时会报错。Caused by: org.apache.catalina.LifecycleException: A child container failed during start

原因:网速慢,下载jar包出错,可以用maventest检测jar包是否安装成功,
也可去maven的本地仓库查看是否有如下格式的文件,为未下载成功
解决方案:删除jar包文件夹下所有文件,重新maven install下载新jar包
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值