使用Ajax接收和傳輸參數
1、Controller傳回的類型為text類型的方式.
@Controller
public class UserAnnotation {
@RequestMapping("info")
@ResponseBody
public String list(String name) {
System.out.println(name);
return "";
}
}
前台用下面的Jquery代碼調用
<script type="text/javascript">
$.get("info",{"name":"張三"},function(data){
alert(data);
})
</script>
2、 Controller傳回的類型為JSON對象的方式
2.1、首先要導入解析的jackson包
2.2、在響應的方法上加上@ResponseBody :把java對象轉化為json對象。
2.3、方法的傳回值可以是對象集合字元串。
代碼如下:
@Controller
public class UserAnnotation {
@RequestMapping("info")
@ResponseBody //把Java對象轉化為json對象,需要使用jackson的jar包
public User list() {
User user = new User("張三",18)
return user;
}
}
前台用下面的Jquery代碼調用
<script type="text/javascript">
$.get("info",function(data){
alert(data.uname+" "+data.age);
})
</script>
ajax傳回的為字元串,出現亂碼解決方法
出現亂碼的原因是,可以從下圖中看出,源碼中設定了編碼格式為ISO-8859-1
解決方法
第一種
在springmvc的配置檔案配置如下代碼:
<!--開啟注解驅動AnnotationHandlerMapping -->
<mvc:annotation-driven>
<mvc:message-converters>
<bean class="org.springframework.http.converter.StringHttpMessageConverter">
<constructor-arg index="0" value="utf-8"></constructor-arg>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>
第二種
在@RequestMapping中加入編碼設定,如下
@RequestMapping(value="info" ,produces="text/html;charset=UTF-8")
轉載于:https://www.cnblogs.com/zjc364259451/p/11456438.html