SpringMVC开发布置

来源:互联网 发布:稻草人旅行 知乎 编辑:程序博客网 时间:2024/05/18 03:46

开发步骤:

1、在 web.xml 中配置 DispatcherServlet

  (通过alt+/ 使用dispatcherservlet)

   DispatcherServlet 默认加载 /WEB- INF/<servletName-servlet>.xml 的 Spring 配置文件

2、在<servletName-servlet>.xml中配置自动扫描的包(base-package)

<context:component-scan base-package="com.ysu.controller"></context:component-scan>
3、在<servletName-servlet>.xml中配置视图解析器
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="prefix" value="/WEB-INF/view/"></property><property name="suffix" value=".jsp"></property></bean>
转发的页面为 prefix前缀+返回值+suffix

4、控制器类加上@Controller注解

@Controller 只是定义了一个控制器类,而使用@RequestMapping 注解的方法才是真正处理请求的处理器

5、@RequestMapping括号里指定请求url的请求路径

        ①value代表的就是请求路径

              Ant 风格资源地址

               (1)?:匹配文件名中的一个字符

               (2)*:匹配文件名中的任意多个任意字符[0个字符除外!]

               (3)**:** 匹配多层路径

        ②params代表携带参数,为一个数组params={}

        ③Method代表是哪种请求操作:method=RequestMethod.xxx

6、@PathVariable映射 URL 绑定的占位符

         假设@RequestMapping中的value指定的路径携带占位符参数value="/order/{id}",则@PathVariable中的value值要一致;

7、REST(Representational State Transfer) 如何使用put和delete请求?

1.在web.xml文件中配置

<filter><filter-name>hiddenHttpMethodFilter</filter-name><filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class></filter><filter-mapping><filter-name>hiddenHttpMethodFilter</filter-name><url-pattern>/*</url-pattern></filter-mapping>
2.在表单域中需要携带一个name值为_method,value值为put或者delete的参数

<form action="${pageContext.request.contextPath }/order/1" method="post"><input type="hidden" name="_method" value="put"/><input type="submit" value="Submit"/></form>

8、@RequestParam可以接收请求的参数,相当于Servlet的getParameter()方法!
    注意:要把@RequestParam和@PathVariable区分开:    
    三个默认属性:
     value:这个字段要与请求参数的name属性值一致!
     required:布尔值,默认是true,当指定为false的时候,说明这个参数不是必须的,可以不带!
     defaultValue:在我们不传值的时候,默认使用defaultValue的值,传递参数的时候,使用我们传递的参数值!0
9、@RequestHeader:获取请求头信息,默认属性:同上

10、POST请求乱码的处理

在web.xml文件中加上CharacterEncodingFilter

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


原创粉丝点击