8.21 SpringMVC快速如门

 controller中的代码 1 package com.neuedu.controller;
 2
 3 import org.springframework.stereotype.Controller;
 4 import org.springframework.web.bind.annotation.PathVariable;
 5 import org.springframework.web.bind.annotation.RequestMapping;
 6 import org.springframework.web.bind.annotation.RequestMethod;
 7 import org.springframework.web.bind.annotation.RequestParam;
 8 import org.springframework.web.bind.annotation.ResponseBody;
 9
10 @Controller
11 public class AController {
12     private static String SUCCESS="success";
13
14     用于测试是否能正常运行
15     @RequestMapping("/sayHello")
16     public String sayHello(){
17         return SUCCESS;
18     }
19     测试get请求
20     @RequestMapping(value="/order/{id}" ,method=RequestMethod.GET)
21     public String getOrderById1(@PathVariable(value="id") Integer id){
22         System.out.println(id);
23         return SUCCESS;
24     }
25     测试post请求
26     @RequestMapping(value="/order/{id}" ,method=RequestMethod.POST)
27     public String getOrderById2(@PathVariable(value="id") Integer id){
28         System.out.println(id);
29         return SUCCESS;
30     }
31     测试put
32     @RequestMapping(value="/order/{id}" ,method=RequestMethod.PUT)
33     @ResponseBody()
34     public String getOrderById3(@PathVariable(value="id") Integer id){
35         System.out.println(id);
36         return SUCCESS;
37     }
38     测试delete
39     @RequestMapping(value="/order/{id}" ,method=RequestMethod.DELETE)
40     @ResponseBody()
41     public String getOrderById4(@PathVariable(value="id") Integer id){
42         System.out.println(id);
43         return SUCCESS;
44     }
45     测试@RequestParam得到jsp中的值
46     @RequestMapping(value="/testRequstPamarm" ,method=RequestMethod.POST)
47     public String testRequstPamarm(@RequestParam("username") String name,@RequestParam("pwd") String pwd){
48         System.out.println("用户名:"+name);
49         System.out.println("密码:"+pwd);
50         return SUCCESS;
51     }
53 }

jsp代码 1 <body>


 2     <a href="${pageContext.request.contextPath}/sayHello">Hello!</a>
 3     <br>测试get
 4     <a href="${pageContext.request.contextPath}/order/1">测试GET</a>
 5     <br>测试post请求
 6     <form action="${pageContext.request.contextPath}/order/2" method="post">
 7         <input type="submit" value="提交">
 8     </form>
 9     <br>测试put
10     <form action="${pageContext.request.contextPath}/order/3" method="post">
11         <input type="hidden" name="_method" value="put">
12         <input type="submit" value="提交">
13     </form>
14     <br>测试delete
15     <form action="${pageContext.request.contextPath}/order/4" method="post">
16         <input type="hidden" name="_method" value="DELETE">
17         <input type="submit" value="提交">
18     </form>
19     <br>测试@RequestParam得到表单中的值
20     <form action="${pageContext.request.contextPath}/testRequstPamarm" method="post">
21         用户名:<input type="text" name="username">
22         <br>
23         密  码:<input type="text" name="pwd">
24         <br>
25         <input type="submit" value="提交">
26     </form>
27 </body>

   get可以用超链接,post只能用from表单,put和delete要在post基础上加上<input name="_method" value="">还要注意put和delete还需要在web.xml中配置过滤器filter,代码如下:
1 <filter>
2         <filter-name>hiddenHttpMethodFilter</filter-name>
3         <filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class>
4     </filter>
5     <filter-mapping>
6         <filter-name>hiddenHttpMethodFilter</filter-name>
7         <url-pattern>/*</url-pattern>
8     </filter-mapping>
用@RequestParam得到表单中的值编码问题需要在web-xml中加入下面代码:(注意此代码要放在过滤器上面)
 1 <filter>
 2         <filter-name>CharacterEncodingFilter</filter-name>
 3         <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
 4         <init-param>
 5             <param-name>encoding</param-name>
 6             <param-value>utf-8</param-value>
 7         </init-param>
 8     </filter>
 9     <filter-mapping>
10         <filter-name>CharacterEncodingFilter</filter-name>
11         <url-pattern>/*</url-pattern>
12     </filter-mapping>

web-xml中的其他配置:

 1 <!-- The front controller of this Spring Web application, responsible for handling all application requests -->
 2     <servlet>
 3         <servlet-name>springDispatcherServlet</servlet-name>
 4         <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
 5         <!-- <init-param>
 6             <param-name>contextConfigLocation</param-name>
 7             <param-value>classpath:springmvc.xml</param-value>
 8         </init-param> -->
 9         <load-on-startup>1</load-on-startup>
10     </servlet>
11
12     <!-- Map all requests to the DispatcherServlet for handling -->
13     <servlet-mapping>
14         <servlet-name>springDispatcherServlet</servlet-name>
15         <url-pattern>/</url-pattern>
16     </servlet-mapping>

springDispatcherServlet-servlet.xml中的配置:

1 <context:component-scan base-package="com.neuedu.controller"></context:component-scan>
2         <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
3             <property name="prefix" value="/WEB-INF/views/"></property>
4             <property name="suffix" value=".jsp"></property>
5         </bean>
时间: 2024-08-05 02:53:38

8.21 SpringMVC快速如门的相关文章

Spring MVC系列:(1)SpringMVC快速入门

回顾一下struts2,struts2框架有如下特点: struts.xml配置文件,必须以struts.xml命名,且放在src目录下[配置] 每次请求action时,都创建action实例[单例/多例] action类一成不变的直接或间接继续ActionSupport类[类层面] action类中的业务控制方法总是相类似的签名且无参[方法层面] action类中,接收参数要用成员变量和对应的set方法或set/get方法[成员变量层面] 1.什么是springmvc,它与spring有什么关

Bootstrap 快速人门案例——前端最火的插件

今天,我给小白们分享一下比较流行的Bootstrap框架,它在工作中得到许多公司的青睐,因此对于升职和加薪很重要.同时,我们可以快速完成开发任务,减少发开周期,有不对的地方望大家指正. 如果你想走的更远,那么请勤劳一点,多看看代码,多多练习代码,如果你仔细研究代码,自己也可以写出一部分的css比较好的插件. 一.Bootstrap简介 详见官网: http://www.bootcss.com/ http://v3.bootcss.com/ 1.练习准备资源准备: 下载bootstrap资源: h

SpringMVC快速入门

目录 一.前言 二.spring mvc 核心类与接口 三.spring mvc 核心流程图 四.spring mvc DispatcherServlet说明 五.spring mvc 父子上下文的说明 六.springMVC-mvc.xml 配置文件片段讲解 七.spring mvc 如何访问到静态的文件,如jpg,js,css 八.spring mvc 请求如何映射到具体的Action中的方法 九. spring mvc 中的拦截器: 十. spring mvc 如何使用拦截器 十一. sp

Spring MVC系列:(7)SpringMVC快速入门(注解版本)

1.引入jar包 spring-core commons-logging-1.2.jar spring-beans-3.2.5.RELEASE.jar spring-context-3.2.5.RELEASE.jar spring-core-3.2.5.RELEASE.jar spring-expression-3.2.5.RELEASE.jar spring-web spring-web-3.2.5.RELEASE.jar spring-webmvc spring-webmvc-3.2.5.R

11.如何快速进门新技术

在app后端的工作中,经常会接触到新的技术.作为一名后端人员,面对开发的压力,快速地入门新的技术,融入到项目当中,这已经成了一个后端人员的必备技能.在这篇文章,根据总结出来的一个核心思维模式,介绍4种快速入门新技术的方法. 1. 思维模式 app后端的技术是十分复杂和多种多样的,要快速入门,必须要有清晰的思维模式帮助我们拨开云雾.探知问题的本根,不然就很容易在纷繁复杂的技术中迷失. 曾经有个开发者在qq上问我:"openfire的群聊是怎么实现?"在我和开发者的沟通的过程中,发现他连o

springmvc+mybatis学习笔记(汇总)

springmvc+mybatis学习笔记(汇总) 标签 : springmvc mybaits springmvcmybatis学习笔记汇总 目录 联系作者 笔记分为两大部分:mybatis和springmvc mybatis springmvc 笔记内容主要是mybatis和springmvc的一些基本概念和使用方法,涉及概念介绍.环境搭建.编程细节.运行调试等方面. 这套笔记整体偏入门和应用,适合快速上手,对底层实现和机理并未做过多分析.我后续会研读spring源码,并把学习的收获写成博客

基于Maven构建整合SpringMVC+Mybtis+Druid

前几天趁空闲时间整合了下SpringMVC+Mybatis+Druid,这里小记录下,这个Demo是基于Maven构建的,数据源用的是阿里巴巴温少的开源项目Druid,数据库用的是Mysql. 由于eclipse去安装Maven很不方便,也老出错,这里我使用的是Spring Tool Suite(STS,基于 Spring IDE ,提供了其它的一些特性,如 基于 Spring dm Server 的osgi 开发,及其它一些 Spring 项目的支持,如 Spring Roo , Spring

告别1人年,教你21天搭建推荐系统!

免费开通大数据服务:https://www.aliyun.com/product/odps 活动预告:为了让大家更好的了解如何在21天快速搭建推荐系统,特邀请本文作者.阿里云技术专家郑重(卢梭)开展一场线上课程,报名地址:https://yq.aliyun.com/webinar/join/14,时间6月16日晚20点直播. 本文作者为阿里云技术专家郑重(卢梭),主要分享内容是如何在21天内快速搭建推荐系统.推荐系统的搭建是个复杂工程,涉及到实时计算.离线计算,以及各种数据采集.流转等,对自建推

31、springmvc(注解)

回顾什么是springmvc,它与spring有什么关系 springmvc属于spring框架的后续产品,用在基于MVC的表现层开发,类似于struts2框架 参见<<springmvc与spring的关系.JPG>> 回顾springmvc工作流程 参见<< springmvc工作流.JPG>> 第十四章 springmvc快速入门(注解版本) 1)springmvc快速入门(传统版) 步一:创建springmvc-day02这么一个web应用 步二:导