Spring MVC中Controller如何将数据返回给页面
要实现Controller返回数据给页面,Spring MVC 提供了以下几种途径:
- ModelAndView:将视图和数据封装成ModelAndView对象,作为方法的返回值,数据最终会存到HttpServletRequest对象中!
- Model对象:通过给方法添加引用Model对象入参,直接往Model对象添加属性值。那么哪些类型的入参才能够引用Model对象,有三种类型,分别是 org.springframework.ui.Model、org.springframework.ui.ModelMap 或 java.uti.Map。只要是这些类型的入参,都是指向Model对象的,而且不管定义多少个这些类型的入参都是指向同一个Model对象!
- @SessionAttributes:通过给Controller类添加@SessionAttributes注解,该注解的name和value属性值都是Model的key值,意思是指Model中这些key对应的数据也会存到HttpSession,不仅仅存到HttpServletRequest对象中!这样页面可以共享HttpSession中存的数据了!
- @ModelAttribute:使用@ModelAttribute注解的方法会在此Controller每个方法执行前被执行,指定@ModelAttribute的name或value都是一样的功能,都是作为key,将注解的方法返回的对象作为value存放到Model中,不指定name和value的话,则以注解的方法返回的类型名称首字母小写作为key。
当然,除了上述的途径,也可以使用传统的方式,那就是直接使用HttpServletRequest或HttpSession对象来存数据,页面上再去取。
注意:Model中存的数据,最终都会存放到HttpServletRequest对象中,页面上可以通过HttpServletRequest对象获取数据。
接下来,我们就看看demo,通过demo来理解如何通过这几种方式实现将数据返回给页面。
demo场景:通过ResetFul风格的URL路径传递用户ID给Controller,Controller查询出对应的用户信息返回给页面。
Spring MVC配置的视图解析器:
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/jsp/" />
<property name="suffix" value=".jsp" />
</bean>
ReturnModelDataController1.java:
package edu.mvcdemo.controller; import java.util.Map; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
import edu.mvcdemo.model.User;
import edu.mvcdemo.service.IUserService; /**
* @编写人: yh.zeng
* @编写时间:2017-7-10 下午9:16:54
* @文件描述: Controller中如何将model数据返回给页面的demo1
*/
@Controller
@Scope(value="singleton") //只实例化一个bean对象(即每次请求都使用同一个bean对象),默认是singleton
@RequestMapping("users")
public class ReturnModelDataController1 { @Autowired
@Qualifier("userService")
private IUserService userService; /**
* 方式一,通过ModelAndView返回用户信息数据到页面
* @return
*/
@RequestMapping(value="/view/{userId}/use/ModelAndView", method=RequestMethod.GET)
private ModelAndView getUserInfo(@PathVariable("userId") Integer userId){
User user = userService.getUserById(userId);
return new ModelAndView("userinfo", "user", user);
} /**
* 方式二,通过Model返回用户信息数据到页面
* @return
*/
@RequestMapping(value="/view/{userId}/use/Model", method=RequestMethod.GET)
private String getUserInfo(@PathVariable("userId") Integer userId, Model model){
User user = userService.getUserById(userId);
model.addAttribute("user", user);
return "userinfo";
} /**
* 方式三,通过ModelMap返回用户信息数据到页面
* @return
*/
@RequestMapping(value="/view/{userId}/use/ModelMap", method=RequestMethod.GET)
private String getUserInfo(@PathVariable("userId") Integer userId, ModelMap model){
User user = userService.getUserById(userId);
model.addAttribute("user", user);
return "userinfo";
} /**
* 方式四,通过Map返回用户信息数据到页面
* @return
*/
@RequestMapping(value="/view/{userId}/use/Map", method=RequestMethod.GET)
private String getUserInfo(@PathVariable("userId") Integer userId, Map<String,Object> model){
User user = userService.getUserById(userId);
model.put("user", user);
return "userinfo";
} }
RetunnModelDataController2.java:
package edu.mvcdemo.controller; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.SessionAttributes;
import org.springframework.web.servlet.ModelAndView;
import edu.mvcdemo.model.User;
import edu.mvcdemo.service.IUserService; /**
* @编写人: yh.zeng
* @编写时间:2017-7-11 下午9:09:03
* @文件描述: Controller中如何将model数据返回给页面的demo2
*/
@Controller
@Scope(value="singleton") //只实例化一个bean对象(即每次请求都使用同一个bean对象),默认是singleton
@RequestMapping("users")
@SessionAttributes({"user"}) //Model中key=user的数据也会存到HttpSession
public class RetunnModelDataController2 { @Autowired
@Qualifier("userService")
private IUserService userService; /**
* 方式五,通过@SessionAttributes将指定key的模型数据存到HttpSession,让页面可以获取
* @return
*/
@RequestMapping(value="/view/{userId}/use/SessionAttributes", method=RequestMethod.GET)
private ModelAndView getUserInfo(@PathVariable("userId") Integer userId){
User user = userService.getUserById(userId);
return new ModelAndView("userinfo", "user", user);
} }
RetunnModelDataController3.java:
package edu.mvcdemo.controller; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import edu.mvcdemo.model.User;
import edu.mvcdemo.service.IUserService; /**
* @编写人: yh.zeng
* @编写时间:2017-7-11 下午9:09:03
* @文件描述: Controller中如何将model数据返回给页面的demo3
*/
@Controller
@Scope(value="singleton") //只实例化一个bean对象(即每次请求都使用同一个bean对象),默认是singleton
@RequestMapping("users")
public class RetunnModelDataController3 { @Autowired
@Qualifier("userService")
private IUserService userService; /**
* 注解@ModelAttribute用法一:
* 使用@ModelAttribute注解的方法会在此Controller每个方法执行前被执行,
* 指定@ModelAttribute的name或value都是一样的功能,都是作为key,将注解的方法返回的对象作为value存放到Model中,
* 不指定name和value的话,则以注解的方法返回的类型名称首字母小写作为key。
* @param userId ResetFul路径的请求参数
* @return
*/
@ModelAttribute(name="user")
public User addAccount(@PathVariable("userId") Integer userId) {
return userService.getUserById(userId);
} /**
* 注解@ModelAttribute用法二:
* 使用@ModelAttribute注解的方法会在此Controller每个方法执行前被执行
* @param userId ResetFul路径的请求参数
* @param model 模型对象,可以使用org.springframework.ui.Model、org.springframework.ui.ModelMap
* 或 java.uti.Map 作为入参类型,以引用模型对象
*/
/*@ModelAttribute
public void addAccount(@PathVariable("userId") Integer userId, Model model) {
User user = userService.getUserById(userId);
model.addAttribute("user", user);
}*/ /**
* 方式六,通过@SessionAttributes将指定key的模型数据存到HttpSession,让页面可以获取
* @return
*/
@RequestMapping(value="/view/{userId}/use/ModelAttribute", method=RequestMethod.GET)
private String getUserInfo(@PathVariable("userId") Integer userId){
return "userinfo";
} }
RetunnModelDataController4.java:
package edu.mvcdemo.controller; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import edu.mvcdemo.model.User;
import edu.mvcdemo.service.IUserService; /**
* @编写人: yh.zeng
* @编写时间:2017-7-11 下午9:09:03
* @文件描述: Controller中如何将model数据返回给页面的demo2
*/
@Controller
@Scope(value="singleton") //只实例化一个bean对象(即每次请求都使用同一个bean对象),默认是singleton
@RequestMapping("users")
public class RetunnModelDataController4 { @Autowired
@Qualifier("userService")
private IUserService userService; /**
* 方式七,直接将数据存到HttpSession,让页面可以获取
* @param userId
* @param session
* @return
*/
@RequestMapping(value="/view/{userId}/use/HttpSession", method=RequestMethod.GET)
private String getUserInfo(@PathVariable("userId") Integer userId, HttpSession session){
User user = userService.getUserById(userId);
session.setAttribute("user", user);
return "userinfo";
} /**
* 方式八,直接将数据存到HttpServletRequest,让页面可以获取
* @param userId
* @param session
* @return
*/
@RequestMapping(value="/view/{userId}/use/HttpServletRequest", method=RequestMethod.GET)
private String getUserInfo(@PathVariable("userId") Integer userId, HttpServletRequest request){
User user = userService.getUserById(userId);
request.setAttribute("user", user);
return "userinfo";
} }
用户信息页面userinfo.jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>userinfo.jsp</title>
</head>
<body>
<c:if test="${sessionScope.user != null}">
<h3>HttpSession对象中也存了用户信息!用户信息如下:</h3>
用户编号:${sessionScope.user.no}
<br>
用户名:${sessionScope.user.userName}
<br>
年龄:${sessionScope.user.age}
</c:if>
<c:if test="${requestScope.user != null}">
<h3>HttpServletRequest对象中存的用户信息如下:</h3>
用户编号:${requestScope.user.no}
<br>
用户名:${requestScope.user.userName}
<br>
年龄:${requestScope.user.age}
</c:if>
</body>
</html>
效果:
方式一:通过org.springframework.web.servlet.ModelAndView实现
方式二:通过org.springframework.ui.Model实现
方式三:通过org.springframework.ui.ModelMap实现
方式四:通过java.util.Map实现
方式五:通过org.springframework.web.bind.annotation.SessionAttributes标注指定Model中的某些数据也存储到HttpSession中
方式六:通过org.springframework.web.bind.annotation.ModelAttribute实现
方式七:直接将数据存到HttpSession,让页面可以获取
方式八:直接将数据存到HttpServletRequest,让页面可以获取
项目demo见https://github.com/zengyh/MavenSpringMvcDemo.git
要实现Controller返回数据给页面,Spring MVC 提供了以下几种途径:
- ModelAndView:将视图和数据封装成ModelAndView对象,作为方法的返回值,数据最终会存到HttpServletRequest对象中!
- Model对象:通过给方法添加引用Model对象入参,直接往Model对象添加属性值。那么哪些类型的入参才能够引用Model对象,有三种类型,分别是 org.springframework.ui.Model、org.springframework.ui.ModelMap 或 java.uti.Map。只要是这些类型的入参,都是指向Model对象的,而且不管定义多少个这些类型的入参都是指向同一个Model对象!
- @SessionAttributes:通过给Controller类添加@SessionAttributes注解,该注解的name和value属性值都是Model的key值,意思是指Model中这些key对应的数据也会存到HttpSession,不仅仅存到HttpServletRequest对象中!这样页面可以共享HttpSession中存的数据了!
- @ModelAttribute:使用@ModelAttribute注解的方法会在此Controller每个方法执行前被执行,指定@ModelAttribute的name或value都是一样的功能,都是作为key,将注解的方法返回的对象作为value存放到Model中,不指定name和value的话,则以注解的方法返回的类型名称首字母小写作为key。
当然,除了上述的途径,也可以使用传统的方式,那就是直接使用HttpServletRequest或HttpSession对象来存数据,页面上再去取。
注意:Model中存的数据,最终都会存放到HttpServletRequest对象中,页面上可以通过HttpServletRequest对象获取数据。
接下来,我们就看看demo,通过demo来理解如何通过这几种方式实现将数据返回给页面。
demo场景:通过ResetFul风格的URL路径传递用户ID给Controller,Controller查询出对应的用户信息返回给页面。
Spring MVC配置的视图解析器:
- <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
- <property name="prefix" value="/jsp/" />
- <property name="suffix" value=".jsp" />
- </bean>
ReturnModelDataController1.java:
- package edu.mvcdemo.controller;
- import java.util.Map;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.beans.factory.annotation.Qualifier;
- import org.springframework.context.annotation.Scope;
- import org.springframework.stereotype.Controller;
- import org.springframework.ui.Model;
- import org.springframework.ui.ModelMap;
- import org.springframework.web.bind.annotation.PathVariable;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RequestMethod;
- import org.springframework.web.servlet.ModelAndView;
- import edu.mvcdemo.model.User;
- import edu.mvcdemo.service.IUserService;
- /**
- * @编写人: yh.zeng
- * @编写时间:2017-7-10 下午9:16:54
- * @文件描述: Controller中如何将model数据返回给页面的demo1
- */
- @Controller
- @Scope(value="singleton") //只实例化一个bean对象(即每次请求都使用同一个bean对象),默认是singleton
- @RequestMapping("users")
- public class ReturnModelDataController1 {
- @Autowired
- @Qualifier("userService")
- private IUserService userService;
- /**
- * 方式一,通过ModelAndView返回用户信息数据到页面
- * @return
- */
- @RequestMapping(value="/view/{userId}/use/ModelAndView", method=RequestMethod.GET)
- private ModelAndView getUserInfo(@PathVariable("userId") Integer userId){
- User user = userService.getUserById(userId);
- return new ModelAndView("userinfo", "user", user);
- }
- /**
- * 方式二,通过Model返回用户信息数据到页面
- * @return
- */
- @RequestMapping(value="/view/{userId}/use/Model", method=RequestMethod.GET)
- private String getUserInfo(@PathVariable("userId") Integer userId, Model model){
- User user = userService.getUserById(userId);
- model.addAttribute("user", user);
- return "userinfo";
- }
- /**
- * 方式三,通过ModelMap返回用户信息数据到页面
- * @return
- */
- @RequestMapping(value="/view/{userId}/use/ModelMap", method=RequestMethod.GET)
- private String getUserInfo(@PathVariable("userId") Integer userId, ModelMap model){
- User user = userService.getUserById(userId);
- model.addAttribute("user", user);
- return "userinfo";
- }
- /**
- * 方式四,通过Map返回用户信息数据到页面
- * @return
- */
- @RequestMapping(value="/view/{userId}/use/Map", method=RequestMethod.GET)
- private String getUserInfo(@PathVariable("userId") Integer userId, Map<String,Object> model){
- User user = userService.getUserById(userId);
- model.put("user", user);
- return "userinfo";
- }
- }
RetunnModelDataController2.java:
- package edu.mvcdemo.controller;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.beans.factory.annotation.Qualifier;
- import org.springframework.context.annotation.Scope;
- import org.springframework.stereotype.Controller;
- import org.springframework.web.bind.annotation.PathVariable;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RequestMethod;
- import org.springframework.web.bind.annotation.SessionAttributes;
- import org.springframework.web.servlet.ModelAndView;
- import edu.mvcdemo.model.User;
- import edu.mvcdemo.service.IUserService;
- /**
- * @编写人: yh.zeng
- * @编写时间:2017-7-11 下午9:09:03
- * @文件描述: Controller中如何将model数据返回给页面的demo2
- */
- @Controller
- @Scope(value="singleton") //只实例化一个bean对象(即每次请求都使用同一个bean对象),默认是singleton
- @RequestMapping("users")
- @SessionAttributes({"user"}) //Model中key=user的数据也会存到HttpSession
- public class RetunnModelDataController2 {
- @Autowired
- @Qualifier("userService")
- private IUserService userService;
- /**
- * 方式五,通过@SessionAttributes将指定key的模型数据存到HttpSession,让页面可以获取
- * @return
- */
- @RequestMapping(value="/view/{userId}/use/SessionAttributes", method=RequestMethod.GET)
- private ModelAndView getUserInfo(@PathVariable("userId") Integer userId){
- User user = userService.getUserById(userId);
- return new ModelAndView("userinfo", "user", user);
- }
- }
RetunnModelDataController3.java:
- package edu.mvcdemo.controller;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.beans.factory.annotation.Qualifier;
- import org.springframework.context.annotation.Scope;
- import org.springframework.stereotype.Controller;
- import org.springframework.ui.Model;
- import org.springframework.web.bind.annotation.ModelAttribute;
- import org.springframework.web.bind.annotation.PathVariable;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RequestMethod;
- import edu.mvcdemo.model.User;
- import edu.mvcdemo.service.IUserService;
- /**
- * @编写人: yh.zeng
- * @编写时间:2017-7-11 下午9:09:03
- * @文件描述: Controller中如何将model数据返回给页面的demo3
- */
- @Controller
- @Scope(value="singleton") //只实例化一个bean对象(即每次请求都使用同一个bean对象),默认是singleton
- @RequestMapping("users")
- public class RetunnModelDataController3 {
- @Autowired
- @Qualifier("userService")
- private IUserService userService;
- /**
- * 注解@ModelAttribute用法一:
- * 使用@ModelAttribute注解的方法会在此Controller每个方法执行前被执行,
- * 指定@ModelAttribute的name或value都是一样的功能,都是作为key,将注解的方法返回的对象作为value存放到Model中,
- * 不指定name和value的话,则以注解的方法返回的类型名称首字母小写作为key。
- * @param userId ResetFul路径的请求参数
- * @return
- */
- @ModelAttribute(name="user")
- public User addAccount(@PathVariable("userId") Integer userId) {
- return userService.getUserById(userId);
- }
- /**
- * 注解@ModelAttribute用法二:
- * 使用@ModelAttribute注解的方法会在此Controller每个方法执行前被执行
- * @param userId ResetFul路径的请求参数
- * @param model 模型对象,可以使用org.springframework.ui.Model、org.springframework.ui.ModelMap
- * 或 java.uti.Map 作为入参类型,以引用模型对象
- */
- /*@ModelAttribute
- public void addAccount(@PathVariable("userId") Integer userId, Model model) {
- User user = userService.getUserById(userId);
- model.addAttribute("user", user);
- }*/
- /**
- * 方式六,通过@SessionAttributes将指定key的模型数据存到HttpSession,让页面可以获取
- * @return
- */
- @RequestMapping(value="/view/{userId}/use/ModelAttribute", method=RequestMethod.GET)
- private String getUserInfo(@PathVariable("userId") Integer userId){
- return "userinfo";
- }
- }
RetunnModelDataController4.java:
- package edu.mvcdemo.controller;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpSession;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.beans.factory.annotation.Qualifier;
- import org.springframework.context.annotation.Scope;
- import org.springframework.stereotype.Controller;
- import org.springframework.web.bind.annotation.PathVariable;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RequestMethod;
- import edu.mvcdemo.model.User;
- import edu.mvcdemo.service.IUserService;
- /**
- * @编写人: yh.zeng
- * @编写时间:2017-7-11 下午9:09:03
- * @文件描述: Controller中如何将model数据返回给页面的demo2
- */
- @Controller
- @Scope(value="singleton") //只实例化一个bean对象(即每次请求都使用同一个bean对象),默认是singleton
- @RequestMapping("users")
- public class RetunnModelDataController4 {
- @Autowired
- @Qualifier("userService")
- private IUserService userService;
- /**
- * 方式七,直接将数据存到HttpSession,让页面可以获取
- * @param userId
- * @param session
- * @return
- */
- @RequestMapping(value="/view/{userId}/use/HttpSession", method=RequestMethod.GET)
- private String getUserInfo(@PathVariable("userId") Integer userId, HttpSession session){
- User user = userService.getUserById(userId);
- session.setAttribute("user", user);
- return "userinfo";
- }
- /**
- * 方式八,直接将数据存到HttpServletRequest,让页面可以获取
- * @param userId
- * @param session
- * @return
- */
- @RequestMapping(value="/view/{userId}/use/HttpServletRequest", method=RequestMethod.GET)
- private String getUserInfo(@PathVariable("userId") Integer userId, HttpServletRequest request){
- User user = userService.getUserById(userId);
- request.setAttribute("user", user);
- return "userinfo";
- }
- }
用户信息页面userinfo.jsp:
- <%@ page language="java" contentType="text/html; charset=UTF-8"
- pageEncoding="UTF-8"%>
- <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
- <title>userinfo.jsp</title>
- </head>
- <body>
- <c:if test="${sessionScope.user != null}">
- <h3>HttpSession对象中也存了用户信息!用户信息如下:</h3>
- 用户编号:${sessionScope.user.no}
- <br>
- 用户名:${sessionScope.user.userName}
- <br>
- 年龄:${sessionScope.user.age}
- </c:if>
- <c:if test="${requestScope.user != null}">
- <h3>HttpServletRequest对象中存的用户信息如下:</h3>
- 用户编号:${requestScope.user.no}
- <br>
- 用户名:${requestScope.user.userName}
- <br>
- 年龄:${requestScope.user.age}
- </c:if>
- </body>
- </html>
效果:
方式一:通过org.springframework.web.servlet.ModelAndView实现
方式二:通过org.springframework.ui.Model实现
方式三:通过org.springframework.ui.ModelMap实现
方式四:通过java.util.Map实现
方式五:通过org.springframework.web.bind.annotation.SessionAttributes标注指定Model中的某些数据也存储到HttpSession中
方式六:通过org.springframework.web.bind.annotation.ModelAttribute实现
方式七:直接将数据存到HttpSession,让页面可以获取
方式八:直接将数据存到HttpServletRequest,让页面可以获取
项目demo见https://github.com/zengyh/MavenSpringMvcDemo.git
Spring MVC中Controller如何将数据返回给页面的更多相关文章
- Spring MVC中 controller方法返回值
1.返回ModelAndView 定义ModelAndView对象并返回,对象中可添加model数据.指定view 2.返回String 1.表示返回逻辑视图名 model对象通过 model.add ...
- 通过拦截器Interceptor实现Spring MVC中Controller接口访问信息的记录
java web工程项目使用了Spring+Spring MVC+Hibernate的结构,在Controller中的方法都是用于处理前端的访问信息,Controller通过调用Service进行业务 ...
- 【Spring MVC】spring mvc中相同的url请求返回不同的结果
在项目中凡是使用Spring MVC这种控制器的,大多都是返回JSON数据对象,或者JSP页面. 但是相同的URL请求如何让他自动的选择放回的是什么? 在这里有由于鄙人没有亲自测试过,就不敢乱贴代码, ...
- Spring MVC中Controller返回值void时报错
Controller如下: 当使用url访问该处理器方法时,报错如下: 26-Jan-2019 21:16:28.105 警告 [http-nio-8080-exec-39] org.springfr ...
- 【spring boot】在Spring mvc中controller中可以拿到对象信息,但是返回给前台却是什么也没有,解决方案
如图所示: 最后: 问题解决: 这个原因是因为,User类并未给字段提供get/set方法,所以给前台传递过去的值是空的. 解决方案: 为User类添lombok的注解@Data,为实体类提供get/ ...
- spring mvc 中 controller 路径配置
下图中,由于红色部分(value="/")的存在,导致 host:port/项目/dimlist 无法被映射到dimList方法,解决办法是将其去掉. package cn.bgo ...
- Spring MVC中返回JSON数据的几种方式
我们都知道Spring MVC 的Controller方法中默认可以返回ModeAndView 和String 类型,返回的这两种类型数据是被DispatcherServlet拿来给到视图解析器进行继 ...
- Spring MVC 中的基于注解的 Controller【转】
原文地址:http://my.oschina.net/abian/blog/128028 终于来到了基于注解的 Spring MVC 了.之前我们所讲到的 handler,需要根据 url 并通过 H ...
- Spring MVC中基于注解的 Controller
终于来到了基于注解的 Spring MVC 了.之前我们所讲到的 handler,需要根据 url 并通过 HandlerMapping 来映射出相应的 handler 并调用相应的方法以响 ...
随机推荐
- linux 除了某个文件或某个文件夹以外全部删除
比如一个目录下有1,2,3,4,5这五个文件,现在我需要删除除了2以外的所有文件,那么我可以使用 find . ! -name 2 -exec rm -f {} \; 当然你还可以配合着 -maxde ...
- WordPress主题开发:加载脚本和样式
如果只引入style.css,我把这个放头顶就可以了 <link rel="stylesheet" href="<?php echo get_styleshe ...
- ArrayList 排序方法的性能对比
20000=>ZXP 二分法 getSeriesMinSort2(list) Time is 67000 20000=>循环 getSeriesMinSortFor(list) Time ...
- JAVA8-让代码更优雅之List排序
先定义一个实体类 @Data @AllArgsConstructor @NoArgsConstructor public class Human { private String name; priv ...
- 疑犯追踪第一季/全集Person Of Interest迅雷下载
本季Person of Interest Season 1 第一季(2011)看点:如今,<疑犯追踪>正在纽约热拍,在11月1日的片场,刚刚完成了一场爆炸的戏.另外,<探索者传说第一 ...
- Android Lint简介
Android Lint是SDK Tools 16 (ADT 16)之后才引入的工具,通过它对Android工程源代码进行扫描和检查,可发现潜在的问题,以便程序员及早修正这个问题.Android Li ...
- 自动移动的ImageView
图片会慢慢的向左移动,到头了后,再循环 其实这个效果和屏幕背景图片的效果差不多,屏幕背景图是随着滑动来慢慢的滚动,这是自己每个n秒开始动.实现方式自然是用自定的控件了.这次继承的是ImageView ...
- android BitmapDrawable的使用
<span style="font-size:18px;"> //功能:显示缩略图,大小为40*40 //通过openRawResource获取一个inputStrea ...
- Dapper,大规模分布式系统的跟踪系统
概述 当代的互联网的服务,通常都是用复杂的.大规模分布式集群来实现的.互联网应用构建在不同的软件模块集上,这些软件模块,有可能是由不同的团队开发.可能使用不同的编程语言来实现.有可能布在了几千台服务器 ...
- Mysql学习笔记之常用数据类型
数据类型是定义列中可以存储什么数据以及该数据实际怎么存储的基本规则.Mysql的常用数据类型主要有: 串数据类型:最常用的数据类型,有两种基本的串类型:分别为定长串和不定长串.定长串结束长度固定的字符 ...