JSONServlet 过滤器
来源:互联网 发布:淘宝女装店铺起名 编辑:程序博客网 时间:2024/05/21 15:04
package com.xxx.core.filter;import java.io.BufferedReader;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.RequestDispatcher;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.json.JSONObject;public class JsonFilter extends HttpServlet {private static final long serialVersionUID = 8713394123750996128L;@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {String requestJSON = "";// 获取前台JSON参数串requestJSON = this.getRequestJSONStr(req);// 获取接口参数String action = this.getRequestParams(requestJSON, "action");req.setAttribute("action", action);RequestDispatcher dispatcher = req.getRequestDispatcher("/index.html");dispatcher.forward(req, resp);}@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {// 设置返回的数据MIME类型resp.setContentType("text/json; charset=utf-8");PrintWriter out = resp.getWriter();JSONObject resultJSON = new JSONObject();resultJSON.put("status", "失败,请使用 POST 方法");String jsonResultStr = JSONObject.valueToString(resultJSON);out.println(jsonResultStr);out.flush();out.close();}/** * 读取request的JSON串 * * @param req * @return */public String getRequestJSONStr(HttpServletRequest req) {BufferedReader sis;StringBuffer sb = new StringBuffer();try {sis = req.getReader();char[] buf = new char[req.getContentLength()];int len = 0;while ((len = sis.read(buf)) != -1) {sb.append(buf, 0, len);}} catch (IOException e) {e.printStackTrace();}String requestJson = sb.toString();return requestJson;}/** * 根据参数名称获取参数值 * * @param req * @param key * @return */public String getRequestParams(String requestJson, String key) {String paramValue = "";try {JSONObject jobj = new JSONObject(requestJson);// 根据 JSON 键获取值paramValue = jobj.getString(key);} catch (Exception e) {e.printStackTrace();}return paramValue;}}
<servlet><servlet-name>jsonFilter</servlet-name><servlet-class>com.xxx.core.filter.JsonFilter</servlet-class></servlet><servlet-mapping><servlet-name>jsonFilter</servlet-name><url-pattern>/json/*</url-pattern></servlet-mapping>
0 0
- JSONServlet 过滤器
- 过滤器
- 过滤器
- 过滤器
- 过滤器
- 过滤器
- 过滤器
- 过滤器
- 过滤器
- 过滤器
- 过滤器
- 过滤器
- 过滤器
- 过滤器
- 过滤器
- 过滤器
- 过滤器
- 过滤器
- ~/vimrc配置
- AudioQueueStart Fail问题
- python读取xlsx文件
- 数据的标准化与中心化以及R语言中的scale详解
- [Lintcode]Reverse Words in a String
- JSONServlet 过滤器
- ServerSocketChannel与SocketChannel的使用
- Lua标准库 - 输入输出处理(input and output facilities)
- HDU 1372 HDU 1372
- API(APP会议直播)
- mysql innodb 数据安全性分析
- 记开博,立此为证——不求闻达于诸侯,但求精通程序之精髓
- iOS企业版发布 HTTPS证书以及服务器设置
- 权限管理课堂笔记