SpringMVC4

问候 SpringMVC 他大爷

<<SpringMvc.rar>>

SpringMVC 简介

SpringMVC HelloWorld 实现

项目结构(lib中必须含有使用的jar包

配置web.xml

<servlet>

<servlet-name>springmvc</servlet-name>

<!-- 核心的Service类,负责所有请求的分发 -->

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

<init-param>

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

<!-- sprin-mvc.xml配置文件用来定义解析视图 -->

<param-value>classpath:spring-mvc.xml</param-value>

</init-param>

</servlet>

<servlet-mapping>

<servlet-name>springmvc</servlet-name>

<!-- 配置拦截所有的.do文件,*号为通配符 -->

<url-pattern>*.do</url-pattern>

</servlet-mapping>

配置Spring-mvc.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:p="http://www.springframework.org/schema/p"

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/context

http://www.springframework.org/schema/context/spring-context.xsd">

   

<!-- 使用注解的包,用来自动扫描包所包含的子集 -->

<context:component-scan base-package="com.java1234"/>

<!-- 视图解析器,配置jsp文件夹,匹配jsp文件 -->

<bean id="viewResolver"

class="org.springframework.web.servlet.view.InternalResourceViewResolver">

<property name="prefix" value="/WEB-INF/jsp/" />

<property name="suffix" value=".jsp"></property>

</bean>

   

</beans>

配置controller控制层

配置jsp(在WEB-INF/jsp文件夹下)

配置index.html

通过指定的url访问,获取到请求后,通过web.xml的配置分发给controller层处理请求,

通过返回的helloWorld,到springmvc.xml配置的指定路径查找jsp文件(文件名为helllWorld.jsp,jsp页面做出处理

SpringMVC 控制器

@RequestMapping 请求映射(使用注解配置请求时添加用来区分的url信息

配置Controller

@RequestParam 请求参数

配置Controller

ModelAndView 返回模型和视图

配置Controller

配置index.jsp文件

使用java代码跳转请求

配置list.jsp文件(由于访问的list.do,springmvc直接自动匹配jsp页面处理请求

配置头信息

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

配置

SpringMVC 对象属性自动封装

配置add.jsp页面(使用绝对路径不容易出错

${pageContext.request.contextPath}

   

SpringMVC POST 请求乱码解决

配置web.xml解决乱码问题

<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>*.do</url-pattern>

</filter-mapping>

Controller 内部转发和重定向

配置Controller

添加 修改 (带数据用转发,转发浏览器地址不变

删除

SpringMvc Servlet API 的支持

   

SpringMvc Json 的支持

添加jar

<<jackson.zip>>

把对象自动转化为json格式

配置spring-mvc.xml

配置头信息

<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:context="http://www.springframework.org/schema/context"

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/mvc

http://www.springframework.org/schema/mvc/spring-mvc.xsd

http://www.springframework.org/schema/context

http://www.springframework.org/schema/context/spring-context.xsd">

配置

<!-- 支持对象与json的转换。 -->

<mvc:annotation-driven/>

配置controller

SpringMVC处理json(实际开发使用Springmvcjson注解处理,不灵活

传统的json处理(实际开发使用自己封装的,Json处理使用JSON-lib框架

<<ResponseUtil.java>>

放在util包中

配置jsp(测试json)

Rest 风格的资源 URL

Restful 风格的资源 URL 简介

配置web.xml

配置Controller

不带参数的url请求

带参数的url请求

@PathVariable 获取 Url 变量

配置list.jsp页面Restful 风格的请求

浏览器url请求()

配置detail.jsp页面Restful 风格的请求

图片的请求(显示没有请求到图片,因为拦截了所有类型的请求

配置jsp

解决办法(将请求的文件路径,映射到静态资源路径处理)

SpringMvc Rest 风格的支持(路径映射)建议使用后缀为html风格避免不必要的操

SpringMvc 对静态资源的处理(css)

配置spring-mvc.xml

//注解驱动

<mvc:annotation-driven/>

//将resources路径映射到images路径

<mvc:resources mapping="/resources/**" location="/images/"/>

//将resources2路径映射到css路径

<mvc:resources mapping="/resources2/**" location="/css/"/>

重新配置jsp请求路径

   

SpringMvc 文件上传

配置spring-mvc.xml

<bean id="multipartResolver"

<!-- 加入的类 -->

class="org.springframework.web.multipart.commons.CommonsMultipartResolver">

<!-- 设置编码 -->

<property name="defaultEncoding" value="UTF-8"/>

<!-- 设置最大上传量10m -->

<property name="maxUploadSize" value="10000000"/>

</bean>

导入jar

<<com.springsource.org.apache.commons.io-1.4.0.jar>>

   

<<com.springsource.org.apache.commons.fileupload-1.2.0.jar>>

SpringMvc 单文件上传

配置controller

配置上传文件请求的页面

tmocat被springmvc认为是插件,文件被上传到plugln路径下,实际使用没有影响

   

SpringMvc 多文件上传

配置controller层(类似Struts2也是用数组存放

配置上传文件请求的页面

   

原文地址:https://www.cnblogs.com/ChengR/p/13047588.html