ajax在jquery中的请求和servlet中的响用

在jsp中,首先,你需要导入jquery的架包:

获取可返回站点的根路径:

<%
	String path = request.getContextPath();
%>

在jquery中写ajax请求:

<script type="text/javascript">
         $(function(){
                $(".B").click(function(){
                $.ajax({
                       type: "GET",
                                          //对应servlet中的方法
                       url: "<%=path%>" + "/queryEvaluateByuserId.do",
                                          //返回是json数据
                       dataType: "json",
                       async:false,
                     data:{
                       },
                       success: function(data){
                           str = "";
                              if(data != null){
                                                              //循环表单列表
                                  for (var i in data)
                                   {
                                         var num = parseInt(i) + 1 ;                                                 
                                       str +="<tr><td>" + num + "</td><td>" 
                                       + data[i]['name'] + "</td><td>"
                                       + data[i]['price'] + "元</td>" 
                                       + "</tr>";
                                   }
                                  $(".trtd4").after(str);
                              }else{
                                  
                              }
                              
                       },
                       error: function(data){
                       }
                   }) 
            });
          }
</script>
jsp部分:

<div class="tab-pane" id="B" style="text-align:center;">
                    <div class="row marg" >
                        <table border="2 " style="width:80%;text-align:center;">
                            <tr class="trtd4">
                                <th>序号</th>
                                <th>业主名</th>
                                <th>金额</th>
                            </tr>                         
                        </table>
                    </div>
                </div>
在servlet中用到了阿里巴巴的快速转换json的包com.alibaba.fastjson.JSON:

private void queryEvaluateByuserId(HttpServletRequest request, HttpServletResponse response) throws SQLException, IOException, ServletException{
			HttpSession session=request.getSession();
			request.setCharacterEncoding("UTF-8");
			response.setContentType("text/html");
			response.setCharacterEncoding("UTF-8");
			Cookie[] cookies = request.getCookies();
			int ownerId = 0;
			for (int i = 0; i < cookies.length; i++) {
	            Cookie cookie = cookies[i];
	            if (cookie.getName().equals("ownerId")) {
	            	ownerId = Integer.parseInt(cookie.getValue()); 
	            }
			}
			List<Order> orderList = new ArrayList<>();
			List<Evaluate> queryEvaluateList = new ArrayList<>();
			orderList = orderServiceImpl.queryOrderList(ownerId, null, null, null, null, null);
			List<Map<String, String>> workers = new ArrayList<Map<String, String>>();  
			for(int i = 0;i < orderList.size();i++){
				Map<String,String> order = new HashMap<String, String>();
				order.put("description", orderList.get(i).getDescription());
				order.put("name", orderList.get(i).getOwnerName());
				System.out.println(orderList.get(i).getDescription());
				order.put("type",orderList.get(i).getTypeName());
				queryEvaluateList = orderServiceImpl.queryEvaluateListByUserId(orderList.get(i).getId());
				order.put("comment", queryEvaluateList.get(0).getComment());
				List<Allocation> allocation = orderServiceImpl.queryAllocationByOrderId(orderList.get(i).getId());
				order.put("price", String.valueOf(allocation.get(0).getPrice()));
				 System.out.println(order);
				workers.add(order);
			}
                        //将map键值对转换成json,传给jsp
                        response.getOutputStream().write(JSON.toJSONBytes(workers));
		}






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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值