JavaScript

超轻量级php框架startmvc

浅谈ajax在jquery中的请求和servlet中的响应

更新时间:2020-06-24 11:36:01 作者:startmvc
在jsp中,首先,你需要导入jquery的架包:获取可返回站点的根路径:<%Stringpath=request.getCon

在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));
 }

以上这篇浅谈ajax在jquery中的请求和servlet中的响应就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

ajax jquery 请求 servlet 响应