Spring4 MVC Hello World – XML实例
使用Spring MVC XML配置的简单 HelloWorld Web应用程序。
1、准备环境
本教程是基于以下工具写的:
MyEclipse 10
Spring 4.0.3.RELEASE
控制器和方法
1- HttpServletRequest & HttpServletResponse
可以使用 HttpServletRequest, HttpServletResponse 在控制器的方法中
package com.yiibai.springmvc;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
@Controller
public class OtherExampleController {
......
@RequestMapping("/somePath")
public String requestResponseExample(HttpServletRequest request,
HttpServletResponse reponses, Model model) {
// Todo something here
return "someView";
}
......
}
2- 控制器中的重定向
使用前缀 "redirect:" ,该方法返回字符串,可以重定向到另一页面
package com.yiibai.springmvc;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@Controller
public class RedirectExampleController {
@RequestMapping(value = "/redirect", method = RequestMethod.GET)
public String authorInfo(Model model) {
// Do somethong here
return "redirect:/hello";
}
}
3- @RequestParam示例
使用@RequestParam 注解将请求参数绑定到你的控制器方法参数
package com.yiibai.springmvc;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
@Controller
public class RequestParamExampleController {
@RequestMapping("/user")
public String userInfo(Model model,
@RequestParam(value = "name", defaultValue = "Guest") String name) {
model.addAttribute("name", name);
if("admin".equals(name)) {
model.addAttribute("email", "[email protected]");
} else{
model.addAttribute("email", "Not set");
}
return "userInfo";
}
}
4- @PathVariable示例
在Spring MVC中,可以使用@PathVariable注释将一个方法参数绑定到一个URI模板变量的值:
例如,这是一个模板的URI:
/web/fe/{sitePrefix}/{language}/document/{id}/{naturalText}
而下面的 URI 模板匹配上面:
/web/fe/default/en/document/8108/spring-mvc-for-beginners
/web/fe/default/vi/document/8108/spring-mvc-cho-nguoi-moi-bat-dau
5- @ResponseBody示例
如果您使用 @ResponseBody 注释到方法, spring 将尝试转换它的返回值,并自动写入到HTTP响应。在这种情况下,并不需要一个特定的视图。
package com.yiibai.springmvc;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class ResponseBodyExample1Controller {
// Simple example, method returns String.
@RequestMapping(value = "/saveResult")
@ResponseBody
publicString authorInfo(Model model) {
return "saved";
}
}
1、Spring4 MVC Hello World – XML实例
猜你喜欢
转载自chentian114.iteye.com/blog/2294444
今日推荐
周排行