工程内容:写日志,以及使用controller处理映射。

1,新建maven工程,参考:http://www.cnblogs.com/HZDX-2017/p/7182661.html

2,引入spingmvc需要的jar包:添加依赖   pom.xml

(1)可以直接输入代码:

<!-- springmvc start-->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>4.1.3.RELEASE</version>
    </dependency>
  <!-- springmvc end-->

<!-- log4j start -->
  <dependency>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
      <version>1.2.17</version>
  </dependency>
  <!-- log4j end -->

配置日志:在log4j.properties中配置具体的日志输出位置。

# This is the configuring for logging displayed in the Application Server
log4j.rootCategory=DEBUG, stdout, rollFile

#\u63A7\u5236\u53F0\u8F93\u51FA
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d %t [%5p] %l - <%m> %n

#\u6587\u4EF6\u8F93\u51FA
log4j.appender.rollFile=org.apache.log4j.RollingFileAppender
log4j.appender.rollFile.layout=org.apache.log4j.PatternLayout
log4j.appender.rollFile.layout.ConversionPattern=%d %t [%5p] %l - <%m> %n
log4j.appender.rollFile.File=C:\\Users\\Administrator.GZLX-20170214LZ\\Desktop/war.log
log4j.appender.rollFile.MaxFileSize=50MB
log4j.appender.rollFile.MaxBackupIndex=20

#\u65E5\u5FD7
log4j.logger.org.springframework.web=DEBUG
log4j.logger.java.sql.ResultSet=DEBUG  
log4j.logger.java.sql.Connection=DEBUG  
log4j.logger.java.sql.Statement=DEBUG  
log4j.logger.java.sql.PreparedStatement=DEBUG

(2)工程右键--maven--Add Dependency

2,web.xml中添加前端控制器DispatcherServlet

<web-app>
  <display-name>Archetype Created Web Application</display-name>
  <!-- 配置前端控制器 -->
  <servlet>
        <servlet-name>springmvc</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <!--加载前端控制器配置文件 上下文配置位置-->
        <init-param>
             <!-- contextConfigLocation:指定springmvc配置的加载位置,如果不指定则默认加载WEB-INF/[DispatcherServlet的Servlet名字]-servlet.xml(例如springmvc-servlet.xml)。 -->
             <param-name>contextConfigLocation</param-name>
             <param-value>classpath:springmvc-servlet.xml</param-value>
        </init-param>
        <!-- 表示随WEB服务器启动 -->
        <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
       <servlet-name>springmvc</servlet-name>
        <!-- 备注:可以拦截三种请求
         第一种:拦截固定后缀的url,比如设置为 *.do、*.action,例如:/user/add.action 此方法最简单,不会导致静态资源(jpg,js,css)被拦截.
         第二种:拦截所有,设置为/,例如:/user/add /user/add.action此方法可以实现REST风格的url,
                  很多互联网类型的应用使用这种方式.但是此方法会导致静态文件(jpg,js,css)被拦截后不能正常显示.需要特殊处理.
         第三种:拦截所有,设置为/*,此设置方法错误,因为请求到Action,当action转到jsp时再次被拦截,提示不能根据jsp路径mapping成功. -->
       <url-pattern>/</url-pattern>
  </servlet-mapping>
</web-app>

注意:名称一致。

3,springmvc-servlet.xml中添加:

<?xml version="1.0" encoding="UTF-8"?>
<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:tx="http://www.springframework.org/schema/tx" xmlns:mvc="http://www.springframework.org/schema/mvc"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans.xsd
       http://www.springframework.org/schema/context
       http://www.springframework.org/schema/context/spring-context.xsd
       http://www.springframework.org/schema/tx
       http://www.springframework.org/schema/tx/spring-tx.xsd
          http://www.springframework.org/schema/mvc
       http://www.springframework.org/schema/mvc/spring-mvc.xsd">
    <!-- 配置扫描的包 -->
    <context:component-scan base-package="com.lizj" />

<!-- 注册HandlerMapper、HandlerAdapter两个映射类 无需配置,默认使用默认的处理    -->
    <!-- 扩充了注解驱动,可以将请求参数绑定到控制器参数 -->
    <mvc:annotation-driven />

<!-- 访问静态资源 -->
    <mvc:default-servlet-handler />
    
    <!-- 视图解析器   <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/> -->
    <bean
        class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/view/"></property>
        <property name="suffix" value=".jsp"></property>
    </bean>
       
</beans>

注意几点:

(1)扫描包时容易写错,<context:component-scan base-package="com.lizj.*" />,没有.*。不然就会报404.

(2)视图解析器中的view配置,路径一定也要写对。不然,也是报404.

4,controller;

(1)若之前配置的扫描位置错误,则启动日志log(1中配置的位置)里面就未能找到对应的处理url地址的controller。

(2)若使用地址访问,则会报404.

(3)若地址未错,仍然是404.则需要将项目clean all后重新编译即可。

工程:链接:http://pan.baidu.com/s/1o771CwE 密码:576a

转载于:https://www.cnblogs.com/HZDX-2017/p/7182900.html

maven-springmvc工程相关推荐

  1. 学习日记--JAVA篇--搭建maven SpringMVC工程

    继初步建立maven工程之后. 初建maven传送门:https://blog.csdn.net/weixin_38310965/article/details/80729656 步骤: 1,添加po ...

  2. 1.Maven+SpringMVC+Eclipse软件安装配置,Maven报插件错误,Eclipse总是卡死的解决办法,导入一个maven工程后 一直显示importing maven project

     使用Maven+SpringMVC+Eclipse软件安装配置过程中的问题: 1.Eclipse总是卡死的解决办法: 一:内存不足所以会卡死,配置一下eclipse.ini修改这几个值就好了-X ...

  3. Maven多工程的创建

    元旦过去的第六天,天气很凉爽,躲在室内.其实我也不是宅,关键这个天气出去一个小伙子瞎逛,人家多半或认为我有点傻.所以想想部署一个maven多工程的项目.所谓的多工程,其实也是称为微服务.就是我们把ap ...

  4. maven+springmvc+dubbo+zookeeper

    为什么要用dubbo? 还是让官方来解释吧: http://dubbo.io/User+Guide-zh.htm   http://dubbo.io/ 一般 nginx+tomcat | ----&g ...

  5. sonarqube中,分析maven聚合工程时,不必分析parent工程,只需分析下面的module子工程即可

    sonarqube中,分析maven聚合工程时,不必分析parent工程,只需分析下面的module子工程即可 cd ../../xxx-sms # mvn clean org.jacoco:jaco ...

  6. 解决导入的maven聚合工程中子模块项目不显示

    导入的maven聚合工程中没有子模块,最主要的原因是没有选择正确的导入方式.应该选择maven projects来导入.

  7. Eclipse——Maven项目工程无法编译但可以运行解决方案

    问题描述 Maven项目工程无法编译但可以运行. 只能运行上一次成功的版本. 问题分析 pom.xml文件错误. 解决方案 方案一:选中项目 --> 右键 --> Maven --> ...

  8. idea maven web工程明明添加了maven lib的依赖,但启动web容器时始终报No Class Found?...

    idea maven web工程明明添加了maven lib的依赖,但启动web容器时始终报No Class Found? 很久没用idea搭新工程,最近自己想做个东西,冲心搭个web工程,jar包都 ...

  9. maven+springmvc下载excle文件——ie8可用

    maven+springmvc下载excle文件--ie8可用 转载于:https://www.cnblogs.com/zhujiabin/p/5866535.html

  10. maven 聚合工程 用spring boot 搭建 spring cloud 微服务 模块式开发项目

    项目的简单介绍: 项目采用maven聚合工程 用spring boot 搭建 spring cloud的微服务 模块式开发 项目的截图: 搭建开始: 能上图 我少打字 1.首先搭建maven的聚合工程 ...

最新文章

  1. SCCM 2012系列11 补丁分发下
  2. 28条有关人工智能的名言,靠不靠谱你来看!
  3. 入门设计模式之建造者模式
  4. C语言单片机中延时程序的实现
  5. Xcode4.5编译ffmpeg成功,过程说明
  6. LeetCode 1464. 数组中两元素的最大乘积
  7. mo汇编指令_汇编指令大全
  8. 提高软件开发、软件维护的效率和质量的利器
  9. 存档:命令行程序的路径参数不能有空格
  10. 十步轻松搞定IIS+PHP环境搭建
  11. 从数据仓库到大数据平台再到数据中台(内附13张架构图)
  12. Redis报错#MISCONF Redis is configured to save RDB snapshots, but is currently not
  13. 盘点2022年最受欢迎的6大前端框架
  14. 关于Pascal和二项式系数
  15. 网站api自己怎么写_短视频文案怎么写?看这4个素材网站就够了
  16. 如何对接身份证实名认证?
  17. CF 1646D Weight the Tree 树形dp
  18. ISO26262 功能安全(1)--概览学习
  19. Unity使用Newtonsoft.Json插件实现XML与JSON数据的互转
  20. Postman+Newman执行自动化测试

热门文章

  1. 植物大战僵尸2 服务器维护时间,植物大战僵尸2:老玩家给平民党的7点忠告,不氪金也能玩到通关!...
  2. javaweb 文件上传
  3. 中小学教师MOOC课程资源媒体技术要求
  4. 联想 thindBook 13s G2 ITL笔记本开不了机问题
  5. Flutter 里的语法糖解析,知其所然方能潇洒舞剑 | 开发者说·DTalk
  6. 如何聪明的提问(职场的必踩坑)
  7. java双人俄罗斯方块_双人版俄罗斯方块
  8. 使用MSXML2解析XML文件
  9. HDU 2681 MM Programming Club(miaos的线段树维护+ycy的暴力贪心)
  10. 右下角自动弹出广告的删除