本文共 2507 字,大约阅读时间需要 8 分钟。
思想:
写一个抽象类继承HttpServlet,在这个类中加入通用功能。 以后所有的servlet类都继承自这个 类。 以达到扩展Servlet的功能.package com.yc.web.servlets;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import com.google.gson.Gson;import com.yc.bean.JsonModel;import com.yc.utils.CommonData;/** * 这个类是一个抽象类,主要用于增强Servlet的功能,在这个类中 所有的servlet都有的功能 * @author Administrator * 1.输出json数据的功能 * 设计模式 :适配器模式 * */public abstract class CommonServlet extends HttpServlet { protected int rows=10; protected int page=1; protected String sort; protected String order="asc"; @Override protected void service(HttpServletRequest arg0, HttpServletResponse arg1) throws ServletException, IOException { if(arg0.getParameter("rows")!=null){ rows=Integer.parseInt(arg0.getParameter("rows")); } if(arg0.getParameter("page")!=null){ page=Integer.parseInt(arg0.getParameter("page")); } if(arg0.getParameter("sort")!=null){ sort=arg0.getParameter("sort"); } if(arg0.getParameter("order")!=null){ order=arg0.getParameter("order"); } super.service(arg0, arg1); } public void outData(HttpServletResponse response ,JsonModel jm) { //通过 response对象获取输出流,将数据returnvalue输出到客户端 response.setContentType("text/plain;charset=utf-8");//plain 表示普通文本 PrintWriter out=null; try { out=response.getWriter(); Gson gson=new Gson(); String returnvalue=gson.toJson(jm); out.println(returnvalue); System.out.println(returnvalue); out.flush(); } catch (IOException e) { e.printStackTrace(); }finally{ out.close(); } } public void outData(HttpServletResponse response ,Object jm) { //通过 response对象获取输出流,将数据returnvalue输出到客户端 response.setContentType("text/plain;charset=utf-8");//plain 表示普通文本 PrintWriter out=null; try { out=response.getWriter(); Gson gson=new Gson(); String returnvalue=gson.toJson(jm); out.println(returnvalue); System.out.println(returnvalue); out.flush(); } catch (IOException e) { e.printStackTrace(); }finally{ out.close(); } }}
转载地址:http://ytenx.baihongyu.com/