SpringMvc完成ajax功能

1.加入jackson的jar包

2.在响应的方法上加上@ResponseBody:把java对象转化为json对象

3.方法的返回值可以是对象集合字符串

 1 @Controller
 2 @RequestMapping("ajax")
 3 public class Ajaxcontroller {
 4     @RequestMapping("Ajax1")
 5     @ResponseBody
 6     public String example(String name) {
 7         System.out.println(name);        
 8         return "你好";
 9     }
10     
11     @RequestMapping("Ajax2")
12     @ResponseBody
13     public Users example2(String name) {
14         System.out.println(name);
15         Users user = new Users("张三","man",23);
16         return user;
17     }
18     
19     @RequestMapping("Ajax3")
20     @ResponseBody
21     public List<Users> example3(String name) {
22         System.out.println(name);
23         List<Users> list=new ArrayList<Users>();
24         Users user1 = new Users("张三1","man",23);
25         Users user2 = new Users("张三2","man",23);
26         Users user3 = new Users("张三3","man",23);
27         Users user4 = new Users("张三4","man",23);
28         list.add(user1);
29         list.add(user2);
30         list.add(user3);
31         list.add(user4);
32         return list;
33     }

4.返回字符串时会有乱码,解决办法

第一种:在@RequestMapping后写入(value="Ajax1",produces="text/html;charset=UTF-8")。代码如下:

1 @RequestMapping(value="Ajax1",produces="text/html;charset=UTF-8")
2     @ResponseBody
3     public String example(String name) {
4         System.out.println(name);        
5         return "你好";
6     }

第二种:在springMVC配置文件中通过org.springframework.web.servlet.view.InternalResourceViewResolver类重写代码编码。代码如下:

1     <mvc:annotation-driven>
2         <mvc:message-converters>
3             <bean class="org.springframework.http.converter.StringHttpMessageConverter">
4                 <constructor-arg index="0" value="utf-8"></constructor-arg>
5             </bean>
6         </mvc:message-converters>
7     </mvc:annotation-driven>

猜你喜欢

转载自www.cnblogs.com/mcl2238973568/p/11455679.html