通过ajax异步向后端发送请求,响应请求向前端传送json格式数据的实现思路

楼主博客已迁移至Junlan Shuai'Blog

一、前端异步请求代码:

<span style="font-size:14px;">$.ajax
        ({   
            type: "POST",            //请求的方式
            url: "outputservlet3",  //请求url
            data: {},               //前端向后端传送的数据
            dataType: "json",       //数据格式json
            error: function ()      //请求错误的回调函数
            {
                
            },
            success: function ()   //请求成功的回调函数
            {
               
                                  
            }
        })</span>

二、WEB-INF下的web.xml的servlet-url的配置方法:

<span style="font-size:14px;"><servlet>
    <servlet-name>outputservlet3</servlet-name>            
    <servlet-class>output.outputservlet3</servlet-class>   //对应的Java类
  </servlet>
  <servlet-mapping>
    <servlet-name>outputservlet3</servlet-name>
    <url-pattern>/outputservlet3</url-pattern>          //注意这里开始的地方有“/”
  </servlet-mapping></span>
三、后端的Java代码:

//响应的是post请求

<span style="font-size:14px;">protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		//doGet(request, response);
		OracleConnection myoracle=new OracleConnection ();
		Connection conn=null;
		PreparedStatement pre=null;
		ResultSet result = null; 
		String sql="select RANK, POINT from MAPGIS.FIRERANK,MAPGIS.WUHAN where FIRERANK.WUHAN_ID=WUHAN.ID ";
		JSONObject jsonObject = new JSONObject();
		PrintWriter out = response.getWriter();
		try
		{
			conn = myoracle.getConnection1();
			pre = conn.prepareStatement(sql);
			result = pre.executeQuery();
			while(result.next())
			{
				out o1=new out();
				o1.setRank(result.getInt("rank"));
				JGeometry geom = JGeometry.load(result.getBytes(2));
				point= geom.getLabelPointXYZ();
				o1.setX(point[0]);
				o1.setY(point[1]);
				out1.add(o1);
			}
			JSONArray ja3=JSONArray.fromObject(out1);
			jsonObject.put("point", ja3);
		}
		catch (ClassNotFoundException e)
		{
			e.printStackTrace();
		} 
		catch (SQLException e) 
		{
			e.printStackTrace();
		} 
		catch (Exception e) {
			
			e.printStackTrace();
		} 
		finally
		{
			myoracle.close(result, pre, conn);
		}
		out.print(jsonObject.toString());
   }</span>
运行成功

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值