从/JsonTest/OutJson中获取json包装的数据
index.jsp
<script>
$(function(){
$("#btn").click(function(){
var url="/JsonTest/OutJson";
$.ajax({
url:url,
type:"get",
dataType:"json",
success:function(d){
var $pro=$("#proId");
$(d).each(function(){
$pro.append($("<option val>"+this.name+"</option>"+"<option>"+this.password+"</option>"));
});
},
error:function(){},
});
});
})
</script>
<input type="button" id="btn" value=>
<select id="proId" name="province">
<option>账号与密码</option>
</select>
</body>
以下是定义一个Javabean的实体类; @WebServlet("/OutJson")给这个类命名一个访问的路径
public class UserBean {
private String name;
private String password;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
@Override
public String toString() {
return "UserBean [name=" + name + ", password=" + password + "]";
}
}
这个是index.jsp要跳转的界面
@WebServlet("/OutJson")
public class Userservice extends HttpServlet {
private static final long serialVersionUID = 1L;
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
UserBean user=new UserBean();
user.setName("小明");
user.setPassword("123546");
UserBean user1=new UserBean();
//user1.setName("小hua");
//PrintWriter out=response.getWriter();
//out.println(JsonUtil.objToJson(user));//以下将数据发送到前端用ajax接受
response.getWriter().print(JsonUtil.objToJson(user));
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
JsonUtil是一个定义的工具类,里面的JsonUtil.objToJson(user);就是将对象转化为String类型输出
public class JsonUtil {
/** * 对象转换成JSON字符串 * * @param obj * 需要转换的对象 * @return 对象的string字符 */
public static String objToJson(Object obj) {
JSONObject jSONObject = JSONObject.fromObject(obj);
return jSONObject.toString();
}
}