1.实现功能

(1)接收http请求

(2)获取Android客户端发送的参数对应的内容

(3)hibernate查询数据库

(4)返回json数据

2.java代码

import EntityClass.EntryFirminfoEntity;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.*; @WebServlet(name = "BasicMessageServlet",urlPatterns = "/BasicMessageServlet")
public class BasicMessageServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 设置响应内容类型
response.setContentType("text/html;charset=utf-8");
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8"); try (PrintWriter out = response.getWriter()) { //获得请求中传来的用户名和密码
String companyname = request.getParameter("Companyname").trim();
String realAddress = request.getParameter("RealAddress").trim();
String riskrank = request.getParameter("Riskrank").trim();
String firmtype=request.getParameter("firmtype").trim();
ArrayList<String> firmtypeList=StringToArrayListUtil.stringToArrayList(firmtype); //调用hibernate,根据用户输入查询数据
List<EntryFirminfoEntity> firminfolist= HibernateConnectUtil.queryBasicMessageByUserInput(companyname,realAddress,riskrank,firmtypeList);
//采用“阿里巴巴”的json jar包下的JSONObject、JSONArray(该jar包的优势是使得jsonObject1.put()方法放入的数据是有序排列的)
//JSONobject按照put顺序存储和读取
com.alibaba.fastjson.JSONObject jsonObject=new com.alibaba.fastjson.JSONObject(true);
com.alibaba.fastjson.JSONArray array = new com.alibaba.fastjson.JSONArray();
int i=0;
for (EntryFirminfoEntity entryFirminfoEntity : firminfolist) {
com.alibaba.fastjson.JSONObject jsonObject1=new com.alibaba.fastjson.JSONObject(new LinkedHashMap<>());
String firmName=entryFirminfoEntity.getFirmName();
String address=entryFirminfoEntity.getAddress();
String riskrankStr=entryFirminfoEntity.getRank();
String region=entryFirminfoEntity.getRegion();
String mgtypea=entryFirminfoEntity.getMgTypeA();
String mgtypeb=entryFirminfoEntity.getMgTypeB();
jsonObject1.put("firmname",firmName);
jsonObject1.put("address",address);
jsonObject1.put("riskrank",riskrankStr);
jsonObject1.put("region",region);
jsonObject1.put("mgtypea",mgtypea);
jsonObject1.put("mgtypeb",mgtypeb);
array.add(i,jsonObject1);
i++;
}
jsonObject.put("params",array);
out.write(jsonObject.toString());
}
} protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { }
}

javaweb Servlet接收Android请求,并返回json数据的更多相关文章

  1. Query通过Ajax向PHP服务端发送请求并返回JSON数据

    Query通过Ajax向PHP服务端发送请求并返回JSON数据 服务端PHP读取MYSQL数据,并转换成JSON数据,传递给前端Javascript,并操作JSON数据.本文将通过实例演示了jQuer ...

  2. jQuery通过Ajax向PHP服务端发送请求并返回JSON数据

    SON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写,同时也易于机器解析和生成.JSON在前后台交互的过程中发挥着相当出色的作用.请接着往下看教 ...

  3. MOOC(2)-Django开发get、post请求,返回json数据

    1.对get请求直接返回参数 如果请求多个参数,也只能返回一个参数,这里只返回了username参数 如果想要返回多个参数值,可以返回json格式数据 2.对get请求返回json数据 # views ...

  4. 【C#】WebService接受跨域请求及返回json数据

    问题概述 通过Web Service发布服务供客户端调用是一种非常简单.方便.快速的手段,并且服务发布后会有一个服务说明页面,直观明了,如图: 一般情况下,在web页面中的JavaScript中调用W ...

  5. springboot拦截json后缀的请求,返回json数据

    需求:请求list.json返回以下数据 { "jsonResult": { "code": 200, "message": "查 ...

  6. Jquery通过ajax请求NodeJS返回json数据

    最近看了NodeJS相关的,在网上查了下结合AJAX的应用,感觉应用前景还是不错的.为什么用这个组合呢? 1.NodeJS不需要安装,拷贝过去就可以使用,而环境变量可以只配置在当前cmd窗口,运行方便 ...

  7. nginx优化之请求直接返回json数据

    对于有些服务端接口返回是固定值的json,可通过配置nginx直接返回json,减少程序的加载对资源的占用,减少接口响应时间 location ~* (request/update)$ {     d ...

  8. golang接收get/post请求并返回json数据

    // @router /d2 [post] func (c *MainController) D2() { // jsoninfo := c.GetString("ok") // ...

  9. ajax请求action返回json数据

    1,服务端: HttpServletResponse response = ServletActionContext.getResponse(); response.setContentType(&q ...

随机推荐

  1. PhpStorm (强大的PHP开发环境)2017.3.2 附注册方法

    最新版PhpStorm 2017正式版改进了PHP 7支持,改进代码完成功能. PhpStorm 是最好的PHP开发工具,使用它进行PHP开发将会让你感觉到编程的乐趣. 快乐无极终于从oschina看 ...

  2. loadrunner12--学习中遇到疑问及解释

    1.analysis里面,平均事务响应时间,平均事务响应时间+运行vuser,两个图的数据有区别是什么原因? 答: 请仔细查看以下两张图,其实两张图的数据是没有区别的. 之所以我们认为他们二者的数据有 ...

  3. setPadding 与 setBackgroundDrawable

    这两个不能同时用,如果同时用,setPadding 将不会起作用,用的是 drawable里面自带的padding

  4. centos7 安装mongo

    1:创建仓库 vi /etc/yum.repos.d/mongodb-org-3.4.repo 2:把下面的内容复制到文件中 保存退出 [mongodb-org-3.4] name=MongoDB R ...

  5. android 播放视频时切换全屏隐藏状态栏

    1. Demo: @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstance ...

  6. Oracle学习笔记(十)

    光标(游标)概念引入 就是一个结果集(查询或者其他操作返回的结果是多个时使用)定义一个光标 cursor c1 is select ename from emp: 从光标中取值 打开光标: --ope ...

  7. cron.c

    /* $OpenBSD: cron.c,v 1.39 2007/02/18 23:59:03 jmc Exp $ */ /* Copyright 1988,1990,1993,1994 by Paul ...

  8. (转)【javascript基础】原型与原型链

    原文地址:http://www.cnblogs.com/allenxing/p/3527654.html 前言 原型是什么 理解原型对象 原型对象 isPrototypeOf hasOwnProper ...

  9. Linux Socket - UDP链接包

    LINUX UDP SOCKET 01 UDP号绑定会报错吗? 会的,提示Address is using,本地的没有区别 UDP不需要发起链接,不知道是不是连接成功 client的IP地址和端口号不 ...

  10. CentOS6.3安装MySQL5.5

    1.查看系统是否安装了MySQL 使用命令: #rpm -qa | grep mysql 2.卸载已安装的MySQL 卸载mysql命令如下: #rpm -e --nodeps  mysql-libs ...