javaweb Servlet接收Android请求,并返回json数据
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数据的更多相关文章
- Query通过Ajax向PHP服务端发送请求并返回JSON数据
Query通过Ajax向PHP服务端发送请求并返回JSON数据 服务端PHP读取MYSQL数据,并转换成JSON数据,传递给前端Javascript,并操作JSON数据.本文将通过实例演示了jQuer ...
- jQuery通过Ajax向PHP服务端发送请求并返回JSON数据
SON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写,同时也易于机器解析和生成.JSON在前后台交互的过程中发挥着相当出色的作用.请接着往下看教 ...
- MOOC(2)-Django开发get、post请求,返回json数据
1.对get请求直接返回参数 如果请求多个参数,也只能返回一个参数,这里只返回了username参数 如果想要返回多个参数值,可以返回json格式数据 2.对get请求返回json数据 # views ...
- 【C#】WebService接受跨域请求及返回json数据
问题概述 通过Web Service发布服务供客户端调用是一种非常简单.方便.快速的手段,并且服务发布后会有一个服务说明页面,直观明了,如图: 一般情况下,在web页面中的JavaScript中调用W ...
- springboot拦截json后缀的请求,返回json数据
需求:请求list.json返回以下数据 { "jsonResult": { "code": 200, "message": "查 ...
- Jquery通过ajax请求NodeJS返回json数据
最近看了NodeJS相关的,在网上查了下结合AJAX的应用,感觉应用前景还是不错的.为什么用这个组合呢? 1.NodeJS不需要安装,拷贝过去就可以使用,而环境变量可以只配置在当前cmd窗口,运行方便 ...
- nginx优化之请求直接返回json数据
对于有些服务端接口返回是固定值的json,可通过配置nginx直接返回json,减少程序的加载对资源的占用,减少接口响应时间 location ~* (request/update)$ { d ...
- golang接收get/post请求并返回json数据
// @router /d2 [post] func (c *MainController) D2() { // jsoninfo := c.GetString("ok") // ...
- ajax请求action返回json数据
1,服务端: HttpServletResponse response = ServletActionContext.getResponse(); response.setContentType(&q ...
随机推荐
- python类和元类
python 类和元类详解 小麦麦子 2016-09-06 11:11:00 今天在网上看到一篇关于python语言中类和元类(metaclass)的一些讲解和简单运用,感觉对pyth ...
- OSX 下 sftp 上传目录到服务器
使用如下命令: put –r dir mput –r dir
- Smart Pointe
http://blog.chinaunix.net/uid-625789-id-2720884.html
- Ubuntu的常识使用了解4
寻找文件的「名称」 在Linux系统当中,文件的数量非常非常的多, 需要使用查找工具来高效查找指定文件位置:
- hdu2364之BFS
Escape Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Sub ...
- 初尝2D骨骼动画编辑工具SPINE,并into Unity3D
一.SPINE使用 研究2D骨骼动画,CYou的朋友介绍我SPINE这个工具,开发自Esoteric Software的一款专门制作2D动画的软件,网络上的资料还很少,我这从半吊子美术技术的角度简单说 ...
- Internal error(U783)
今天打开代码时一个单元文件报这个错误Internal error(U783),不知道什么原因,然后多次关闭打开后,又没报这个错误了,记录下 http://www.aiuxian.com/article ...
- centos 安装 tkinter(不只用来做界面,在pylot中也使用)
Python2 [root@binger ~]# yum -y install tkinter tcl-devel tk-devel [root@binger ~]# rpm -qa | grep ^ ...
- vmware之VMware Remote Console (VMRC) SDK(三)
前两节我们介绍了vmrc sdk的基本用法.在前面的demo中,有一个关键的问题是,我们现在所作的工作都是基于局域网的,作为应用层面上,主机不会直接暴露给用户,而是通过一系列的web service服 ...
- 基于Quartz.net的远程任务管理系统 三
在上一篇中,已经把服务端都做好了.那接下来就是Web的管理端了,因为很多时候服务器是有专门的运维来管理的,我们没有权限去操作,所以有个可以管理Job的工具还是很有必要的. Web管理端,我选择现在很成 ...