案例:以JSON格式把对象下载到tomcat下
结果:
UsersDAO:
public class UsersDAO {
//接口,创建一个方法用于添加数据并查询返回集合
public List<Users> findAll(){
List list =new ArrayList<Users>();
list.add(new Users(1,"hg","123456"));
list.add(new Users(2,"hg2","123456"));
return list;
}
}
创建项目和servlet:
public class JsonServlet extends HttpServlet {
public JsonServlet() {
super();
}
public void destroy() {
super.destroy(); // Just puts "destroy" string in log
// Put your code here
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
//URL的作用是把文件下载后保存的地址
File file =new File("D://apache-tomcat-7.0.90//webapps//Zhenai//Users.json");
//创建文件
file.createNewFile();
//使用StringBuffer拼接
StringBuffer sb = new StringBuffer();
//以JSON格式进行存储
sb.append("[");
//使用UserDAO查询并返回结果
UsersDAO gd = new UsersDAO();
List<Users> u = gd.findAll();
int i=0;
int leSize=u.size();
//循环遍历并以JSON格式拼接
for (Users u2:u) {
i++;
sb.append("{");
sb.append("\"id\":"+u2.getId()+",");
sb.append("\"name\":\""+u2.getName()+"\",");
sb.append("\"pwd\":\""+u2.getPwd()+"\"");
sb.append("}");
if (i<leSize) {
sb.append(",");
}
}
sb.append("]");
//通难过流的方式进行写入到file
OutputStream os = new FileOutputStream(file);
//转换为字节类型传输
os.write(sb.toString().getBytes());
//使用session进行存值
HttpSession session = request.getSession();
session.setAttribute("u1", u);
//跳转到项目下的某个jsp页面
response.sendRedirect("/Zhenai/login.jsp");
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
doGet(request,response);
}
public void init() throws ServletException {
// Put your code here
}
}