首先需要在springmvc配置文件中增加对json格式的配置
<bean
class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver">
<property name="order" value="1" />
<property name="mediaTypes">
<map>
<entry key="json" value="application/json" />
<entry key="xml" value="application/xml" />
<entry key="htm" value="text/html" />
</map>
</property>
<property name="defaultViews">
<list>
<!-- JSON View -->
<bean
class="org.springframework.web.servlet.view.json.MappingJackson2JsonView">
</bean>
</list>
</property>
<property name="ignoreAcceptHeader" value="true" />
</bean>
然后在controller层通过@ResponseBody和ResponseEntity两种方式实现:
1、@ResponseBody 简单
@RequestMapping(value="/{stuId}",method=RequestMethod.GET)
public @ResponseBody Student getStudentInJson(@PathVariable Integer stuId){
return studentService.getStudentbyId(stuId);
}
2、ResponseEntity 泛型类,用以包裹我们的数据模型
@RequestMapping(value="/jsontype/{stuId}",method=RequestMethod.GET)
public ResponseEntity<Student> getStudentInJson2(@PathVariable Integer stuId){
Student student = studentService.getStudentbyId(stuId);
return new ResponseEntity<Student>(student, HttpStatus.OK);
}