Xml配置helloworld

  1. maven创建war项目

  1. 添加java和resources目录,并修改类型

  1. 修改web.xml配置文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1">

</web-app>

  1. 通过maven添加依赖

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

<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.henu</groupId>
  <artifactId>springmvc_helloword_xml</artifactId>
  <version>1.0-SNAPSHOT</version>
  <packaging>war</packaging>

<name>springmvc_helloword_xml Maven Webapp</name>
  <!-- FIXME change it to the project's website -->
  <url>http://www.example.com</url>

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
  </properties>

<dependencies>
    <!-- https://mvnrepository.com/artifact/org.springframework/spring-web -->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-web</artifactId>
      <version>4.3.20.RELEASE</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-webmvc</artifactId>
      <version>4.3.20.RELEASE</version>
    </dependency>
    <!-- 配置servlet -->
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>4.0.1</version>
      <scope>provided</scope>
    </dependency>

<!-- 配置jsp -->
    <dependency>
      <groupId>javax.servlet.jsp</groupId>
      <artifactId>javax.servlet.jsp-api</artifactId>
      <version>2.3.3</version>
      <scope>provided</scope>
    </dependency>

</dependencies>

</project>

  1. 创建控制器

package com.henu.controller;

import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * @author George
 * @description
 **/

public class UserController implements Controller {

/**
     * 处理器方法
     *
     * @param httpServletRequest
     * @param httpServletResponse
     * @return
     * @throws Exception
     */
    @Override
    public ModelAndView handleRequest(HttpServletRequest httpServletRequest,
          HttpServletResponse httpServletResponse) throws Exception {

//创建模型视图对象
        ModelAndView mav = new ModelAndView();
        //把数据绑定到模型对象
        mav.addObject("name","admin");
        //设置跳转的试图对象
        mav.setViewName("success");
        return mav;
    }
}

  1. 在web.xml中加载springMVC配置文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1">
    <!--配置前端控制器-->
    <servlet>
        <servlet-name>DispatcherServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <!--加载自定义springmvc配置文件-->
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:springMVC.xml</param-value>
        </init-param>
        <!--配置自启动-->
        <!-- 配置springmvc什么时候启动,参数必须为整数 -->
        <!-- 如果为0或者大于0,则springMVC随着容器启动而启动 -->
        <!-- 如果小于0,则在第一次请求进来的时候启动 -->
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>DispatcherServlet</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

</web-app>

<!-- 配置springmvc什么时候启动,参数必须为整数 -->
        <!-- 如果为0或者大于0,则springMVC随着容器启动而启动 -->
        <!-- 如果小于0,则在第一次请求进来的时候启动 -->
        <load-on-startup>1</load-on-startup>

<!--DispatcherServlet-servlet.xml-->
<!-- 服务器启动创建servlet对象 ,同时加载springmvc配置文件,默认是在WEB-INF下加载一个叫[servlet-name]-servlet.xml-->

  1. 自定义springMVC配置文件

<?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:p="http://www.springframework.org/schema/p"
       xmlns:aop="http://www.springframework.org/schema/aop"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">
    <!--配置控制器-->
    <bean name="/login" class="com.henu.controller.UserController"></bean>
    <!--映射处理器 -->
    <bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"/>
    <!--处理器适配器-->
    <bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter"/>
    <!--视图解析器-->
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <!--指定跳转位置 /success.jsp-->
        <property name="prefix" value="/"/>
        <property name="suffix" value=".jsp"/>
    </bean>
</beans>

  1. idea配置tomcat
  2. 创建success.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
Hello World<br>
${name}<br>
${requestScope.name}<br>
</body>
</html>

  1. 测试

根据自己的配置,然后在浏览器中输入路径:

http://localhost:9999/springmvc_helloword_xml_war_exploded/login

  1. 使用springmvc自带的过滤器解救post乱码

<!-- 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>
</filter>

<filter-mapping>
    <filter-name>CharacterEncodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

  1. maven中使用tomcat插件运行web项目

pom.xml文件中配置tomcat插件:

<build>
  <!-- 配置tomcat插件,web -->
  <plugins>
    <plugin>
      <groupId>org.apache.tomcat.maven</groupId>
      <artifactId>tomcat7-maven-plugin</artifactId>
      <version>2.2</version>
      <configuration>
        <!-- 配置项目的请求路径 -->
        <path>/mvc</path>
        <!-- 配置服务器端口号 -->
        <port>9091</port>
      </configuration>
    </plugin>
  </plugins>
</build>

springMVC——Xml配置方式实现Helloworld相关推荐

  1. springMVC——注解配置方式实现Helloworld

    基于注解helloworld 只需根据基于xml的项目文件进行改变. 改变1:springMVC.xml <?xml version="1.0" encoding=" ...

  2. 转载 - Struts2基于XML配置方式实现对action的所有方法进行输入校验

    出处:http://www.cnblogs.com/Laupaul/archive/2012/03/15/2398360.html http://www.blogjava.net/focusJ/arc ...

  3. Dubbo(四)之xml配置方式

    转载自  Dubbo xml配置方式 以 XML 配置的方式来配置你的 Dubbo 应用 有关 XML 的详细配置项,请参见:配置参考手册.如果不想使用 Spring 配置,而希望通过 API 的方式 ...

  4. Spring框架学习笔记09:基于XML配置方式搭建SSM框架实现用户登录

    文章目录 一.采用MVC架构 二.用户登录运行效果 三.基于XML配置方式搭建SSM框架实现用户登录 (一)创建数据库与表 - simonshop (t_user) 1.创建数据库 - simonsh ...

  5. SSM框架笔记15:SSM框架西蒙购物网(XML配置方式)

      SSM框架西蒙购物网(XML配置方式) 功能需求: 1.只有注册用户成功登录之后才可查看商品类别,查看商品,选购商品,生成订单.查看订单. 2.只有管理员才有权限进行购物网后台管理(用户管理+类别 ...

  6. SSM框架笔记06:初探Spring——采用XML配置方式

    初探Spring--采用XML配置方式   Spring框架是一个轻量级的企业级开发的一站式解决方案.所谓解决方案就是可以基于Spring解决Java EE开发的所有问题.Spring框架主要提供了I ...

  7. 基于XML配置方式实现对action的所有方法进行校验

    基于XML配置方式实现 对action的所有方法进行校验或者对Action的指定方法进行校验 Action也要继承ActionSupport,并且提供校验文件,校验文件和action类放在同一个包下 ...

  8. SpringMVC、SpringMVC XML配置(纯XML方式)

    1.引入SrpingMVC所使用的Java包: cglib-nodep-2.1_3.jar.commons-logging.jar.spring-aspects-4.1.7.RELEASE.jar.s ...

  9. ssm整合(基于xml配置方式)

    本文是基于xml配置的方式来整合SpringMVC.Spring和Mybatis(基于注解的方式会再写一篇文章),步骤如下: (1)首先自然是依赖包的配置文件 pom.xml <project ...

最新文章

  1. 微信小程序云开发,使用阿里云短信服务,搜索员工生日定期发送短信。
  2. bootstrap fileinput上传返回400,404,500 等错误替换
  3. [原]ubuntu14.04 网卡逻辑修改没有文件/etc/udev/rules.d/70-persistent-net.rules
  4. nginx+keepalived双master负载均衡配置
  5. Python工程能力进阶、数学基础、经典机器学习模型实战、深度学习理论基础和模型调优技巧……胜任机器学习工程师岗位需要学习什么?...
  6. ubuntu linux下面用wine运行大航海时代4和最新版的QQ
  7. gcc编译流程及中间表示层RTL的探索
  8. android防谷歌滑动效果,谷歌是如何做到这一点的?在Android应用程序中滑动ActionBar...
  9. 23种设计模式之原型模式
  10. 信息学奥赛一本通(1011:甲流疫情死亡率)
  11. SpringCloud集成Security安全(Config配置中心)
  12. python输出print(x+y)_Python语句序列“x='car';y=2;print(x+y)”的输出结果是() (2.0分)_学小易找答案...
  13. 靠模仿就能建立第二个“Google”?
  14. springboot报错Table 'wechat.hibernate_sequence' doesn't exist
  15. 基于 python + WebDriverAgent 的“跳一跳”小程序高分教程 1
  16. AD中批量导入域用户的命令
  17. 【君思智慧园区】智慧能源综合管理平台,智慧能源管理云平台建设方案!
  18. Tbschedule源码通读
  19. c语言画简谐振动图像,[求助] 实心小球沿正弦曲线运动
  20. 七夕节微信表白墙小程序源码/基于Laravel的表白墙微信小程序源码

热门文章

  1. CodeForces - 1476E Pattern Matching(字典树+拓扑)
  2. POJ - 3254 Corn Fields(状压dp)
  3. python的映射_Python学习:映射函数(map)和函数式编程工具(filter和reduce)
  4. 实例演示使用HiBench对Hadoop集群进行基准测试
  5. 数据结构实验二:迷宫的求解
  6. Adobe Media Server 5(AMS)的安装及使用
  7. 多进程和多线程的优缺点
  8. 性能优化实战|使用eBPF代替iptables优化服务网格数据面性能
  9. 闻茂泉:系统性能监控与分析的工程化实践之路
  10. 为什么我建议你现在学Vue3?