适配器模式

思想:
写一个抽象类继承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();
        }
    }






}

你可能感兴趣的:(servlet)