对于springMVC处理方法支持支持一系列的返回方式:
- ModelAndView
- Model
- ModelMap
- Map
- View
- String
- Void
具体可参考链接:
http://my.oschina.net/bosscheng/blog/126941
以上是SpringMvc原生支持的返回类型,如果返回Json,可以用Json String或者Map,
还可以返回类,操作步骤见下面介绍。
需要注意的是,SpringMvc与Jackson结合使用时,如果返回的是一个Object、或者返回的Map中是Object型的,就需要对Object中的成员变量加注解,否则会报错:org.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptable representation,500 code error。
原因是 Jackson 默认情况下不知道怎么去序列化,方法有:
1.为成员变量增加getter、setter方法
2. 或者也可以给field加上 @JsonProperty 注解,(也可在getter上加) , 还能用它指定序列化时的属性名
@JsonProperty可以标注在field或者getter上,
Defines name of the logical property, i.e. Json object field name to use for the property(i.e. @JsonProperty("GID") ): if empty String (which is the default), will use name of the field that is annotated.
代码示例:
class ItemContent {
private int gid;
private int sid;
private Date createTime;
private String gname;
private String name;
private String nologinUrl;
@JsonProperty
int getGid() {
return gid;
}
void setGid(int gid) {
this.gid = gid;
}
@JsonProperty
int getSid() {
return sid;
}
.............................
@RequestMapping(value = "/dissert/getServerList.do")
@ResponseBody
public Object getServerList(HttpServletRequest request) {
Map<String, Object> resultMap = new HashMap<String, Object>();
..................................
List<ItemContent> tempList = new ArrayList<ItemContent>();
for (GameServer gameServer : listServers) {
......................
ItemContent item = new ItemContent();
item.setGid(gameServer.getGid());
item.setGname(gameServer.getGname());
item.setSid(gameServer.getSid());
item.setName(gameServer.getName());
item.setCreateTime(gameServer.getCreateTime());
}
tempList.add(item);
}
}
resultMap.put("open", tempList);
return resultMap;
}
关于Jackson介绍,可参考:
http://unmi.cc/jackson-java-object-json-string/
相关推荐
本文将详细介绍在SpringMVC的Controller方法中如何处理返回值为简单类型的数据,并与前端进行JSON数据交互。 首先,要了解SpringMVC中的@RequestBody注解。这个注解的作用是将HTTP请求体中的JSON数据绑定到相应的...
在Spring MVC框架中,Controller是处理HTTP请求的核心组件。它接收客户端发送的请求,并返回相应的视图或数据。本文将详细解析Spring MVC Controller支持的多种返回值类型,以及它们各自的用法。 1. ModelAndView `...
Spring MVC处理方法返回值过程解析 Spring MVC是 Java Web 应用程序框架,提供了灵活的处理方法返回值机制,支持多种返回值类型,包括ModelAndView、Model、ModelMap、Map、View、String、Void、Object等。本文将...
通过以上配置和代码,你应该能够成功地在SpringMVC中处理JSON格式的数据,从而避免406错误。确保所有依赖库都已引入,并正确配置SpringMVC,以实现后台与前台之间的顺利JSON数据交互。在实际项目中,还可能需要考虑...
1. 概念:HttpMessageConverter是Spring MVC中的一个核心组件,它负责将HTTP请求消息转换为处理方法的参数,以及将处理方法的返回值转换为HTTP响应消息。 2. 默认Converters:Spring MVC默认包含多种Converter,包括...
在SpringMVC中,控制器方法的返回值类型非常关键,因为它决定了如何处理请求并响应给客户端。接下来,我们将详细介绍几种常见的返回值类型: ### 1. `ModelAndView` `ModelAndView`是最基本也是最常用的返回类型之...
在Spring MVC框架中,拦截器(Interceptor)是一个强大的工具,它可以对HTTP请求进行预处理(preHandle)、后处理(postHandle)以及清理工作(afterCompletion)。在这个场景中,我们利用拦截器来控制Controller...
### SpringMVC 面试专题...- **返回类型**:SpringMVC 中控制器方法的返回值类型非常灵活,可以是字符串(视图名称)、`ModelAndView` 对象、`RedirectView` 对象等。这些返回类型可以根据不同的场景选择最合适的类型。
- 它可以用于方法参数,表示将Model中的对象绑定到方法参数,或者用于方法返回值,将结果对象添加到Model中。 5. **视图解析**: - 视图解析器负责将逻辑视图名转换为实际的物理视图,如JSP页面。 - 常见的视图...
通过这些实际操作,可以深入理解SpringMVC框架中如何处理请求、返回响应和与前端页面交互。 SpringMVC的架构理解也是学习的重要内容。需要了解框架默认加载的组件,如处理器映射器(Handler Mappers)与处理器...
4、SpringMVC中异常处理 5、图片上传处理 6、Json数据交互 7、SpringMVC实现RESTful 8、拦截器 2.Spring入门 2.1.Springmvc是什么 3.3.jdbc编程步骤: 1、加载数据库驱动 2、创建并获取数据库链接 3、创建jdbc ...
本实例代码着重讲解了SpringMVC中的四种映射方式以及拦截器的实现,这对于理解和掌握SpringMVC的请求处理机制至关重要。 1. **四种映射方式**: - **通配符映射**:`@RequestMapping("/path/*")`,星号(*)代表任意...
SpringMVC 提供了对 JSON 数据的生成功能,如使用 `@ResponseBody` 注解和 `Jackson` 库,可以将方法返回值直接转换成 JSON 字符串发送给客户端,方便前后端分离的开发模式。 **EasyUI** 是一个基于 jQuery 的 UI ...
HelloWorld细节: 一:运行流程;...SpringMVC认为这个返回值就是要去的页面地址 * 7)、拿到方法返回值以后;用视图解析器进行拼串得到完整的页面地址; * 8)、拿到页面地址,前端控制器帮我们转发到页面;
SpringMVC是Spring框架的一部分,专门用于处理Web应用程序的模型-视图-控制器(MVC)架构。这个框架使得开发者可以轻松地构建可维护、松耦合的Java Web应用。在SpringMVC中,控制器、模型、视图各自职责分明,从而...
7. **数据绑定**:SpringMVC自动将HTTP请求参数绑定到Controller方法的参数上,反之亦然,将Controller方法的返回值绑定到Model中,便于视图渲染。 8. **异常处理**:SpringMVC提供了一种优雅的方式处理程序中的...
* 作为 SpringMVC 框架的入口点,负责接收和处理请求 * 将请求交给 HandlerMapping 处理器映射器进行处理 HandlerMapping 处理器映射器 * 根据 URL 查找相应的 Handler 处理器 * 可以通过 XML 配置方式或注解方式...
在SpringMVC中,注解提供了一种更加简洁的方式来处理请求和参数绑定。常见的注解包括: - `@RequestMapping`:用于映射请求路径。 - `@ModelAttribute`:用于将模型属性自动绑定到方法参数或返回值。 - `@...
2. springmvc-servlet.xml配置文件说明:这个配置文件中需要定义组件扫描、静态资源处理、注解驱动以及视图解析器等信息。 - 组件扫描(component-scan):指定SpringMVC需要管理的包路径,它会自动扫描这些路径...
- `@ModelAttribute`:用于绑定方法返回值到Model中。 - `@PathVariable`:用于将URL中的变量映射到方法参数上。 - `@RequestParam`:用于绑定请求参数到方法参数上。 - `@ModelAttribute`:用于将方法参数绑定到...