json预习与自学

今天下午由于参加学校的奖学金颁发仪式没有去上实训课 ,拉下了一下午 ,听老师说今天讲的json的知识,

我也不知道什么是json估计跟js有关 现在开始整理一下资料 自学一下。

首先先看一下上次讲的通过filter过滤器控制request的CharacterEncoding,在页面访问服务器资源之前我们都可以给我们的资源或者代码加上过滤器,

通过在过滤器中的代码可以实现对session内的登录信息的判断,判断提交的请求是否有登录信息或者有权限,没有登录信息或者权限的话我们可以用重定向的方式response.sendRedirect()以页面跳转的登录页面,  所以如果我们设置一个匹配项目中所有路径的过滤器,我们就可一在过滤器代码中实现一些初始化操作,比如说 request.setCharacterEncoding("utf-8");

新建过滤器

 

在RequestFilter 类中实现Filter接口并在doFilter中填写代码

下面进入正题test一下json 导入json的包(文件已上传)、、

新建一个Student 类 和StudentServlet类 实现后台的json传输;


package com.jreehedu.servlet;


import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;


import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


import net.sf.json.JSONArray;


import com.jreehedu.java.Student;


public class StudentServlet extends HttpServlet {


/**

*/
private static final long serialVersionUID = 1L;


@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
doPost(req, resp);
}


@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
      ArrayList<Student> list =new ArrayList<Student>();
 list.add(new Student("张三",20,"男")); //先用arraylist存放几个测试
 list.add(new Student("李四",20,"男"));
 resp.setContentType("text/html;charset=utf-8");//设置输出模式
 PrintWriter out =resp.getWriter(); //resp向页面输出
 JSONArray  jsonList =JSONArray.fromObject(list);
 out.write(jsonList.toString());
 //将arraylist封装成jsonlist 
}


编写json接收的前端html

<!DOCTYPE html>
<!--
To change this license header, choose License Headers in Project Properties.
To change this template file, choose Tools | Templates
and open the template in the editor.
-->
<html>
    <head>
<title>测试JSON回调</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<script src="js/jquery-1.10.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
   $(document).ready(function () {
$("input[type='button']").bind("click",function () {
   $.get("StudentServlet",function (data) {
$.each(data,function (i,d) {
   var str="";
str+="<tr>";
str+="<td>";
str+=d.name;
str+="</td>";
str+="<td>";
str+=d.sex;
str+="</td>";
str+="<td>";
str+=d.age;
str+="</td>";
str+="</tr>";
$("#s").append(str);
});
   },"json");
});
   });
</script>
    </head>
    <body>
<div>测试JSON回调</div>
<input type="button" value="查询" />
<table id="s">
   <tr>
   <td>姓名</td>
   <td>性别</td>
   <td>年龄</td>
   </tr>
</table>
    </body>
</html>

在web.xml中配置StudentServlet路径

运行效果


点击查询以后


这样就用json传输了存放student类的list集合






声明这只是本人在学习过程中的一点个人笔记,哪里有错误感谢指正!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值