经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » JS/JS库/框架 » jQuery » 查看文章
用easyui从servlet传递json数据到前端页面的两种方法
来源:cnblogs  作者:落成  时间:2019/9/10 10:54:19  对本文有异议

用easyui从servlet传递json数据到前端页面的两种方法

 

两种方法获取的数据在servlet层传递的方法相同,下面为Servlet中代码,以查询表中所有信息为例。

  1. //重写doGet方法
  2. protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  3. // TODO Auto-generated method stub
  4. ?
  5. request.setCharacterEncoding("UTF-8");//防止request请求时中文数据出现乱码
  6. String flag = request.getParameter("flag");//通过flag值判定增删改查操作
  7. if(flag == null) {
  8. queryOffer(request,response);
  9. }else if("add".equals(flag)){
  10. addOffer(request,response);
  11. }else if("del".equals(flag)) {
  12. deleteOffer(request,response);
  13. }else if("update".equals(flag)) {
  14. updateOffer(request,response);
  15. }
  16. }
  17. ?
  18. //处理从数据库查询到的数据以返回前端
  19. protected void queryOffer(HttpServletRequest request, HttpServletResponse response) {
  20. // TODO Auto-generated method stub
  21. List<Offer> offers = new ArrayList<Offer>();
  22. offers = offerservice.queryOfferService();
  23. try {
  24. String str=JSONArray.toJSONString(offers);//将数据库查询到的集合转换成JSON字符串
  25. System.out.println(str);
  26. response.setContentType("text/html;charset=utf-8");//防止response时中文数据乱码
  27. response.getWriter().print(str);//向前台传递字符串
  28. } catch (Exception e) {
  29. // TODO Auto-generated catch block
  30. e.printStackTrace();
  31. }
  32. }

 

  • 通过easyui包含的table标签中的属性来获取后端传递的数据

    jsp代码:

    • url:传递数据的地址(本篇使用的是servlet,所以路径为servlet路径;也可以使用action或者php)

    • field:传递的JSON数据的字段名称,就是数据库的字段(列名)

    1. <table id="dg" title="用户列表" class="easyui-datagrid" style="width:80%;height:250px"
    2. url="<%=request.getContextPath() %>/OfferServlet"
    3. toolbar="#toolbar"
    4. rownumbers="true" fitColumns="true" singleSelect="true">
    5. <thead>
    6. <tr>
    7. <th field="offerid" width="50">商品ID</th>
    8. <th field="offername" width="100">商品名称</th>
    9. <th field="offertype" width="200">商品类型</th>
    10. <th field="offerdesc" width="200">商品描述</th>
    11. <th field="price" width="200">商品价格</th>
    12. </tr>
    13. </thead>
    14. </table>

     

  • 通过JS来传递JSON数据到前端

    jsp代码:

    1. <table id="dg" title="用户列表" class="easyui-datagrid" style="width:1000px;height:250px" toolbar="#toolbar">
    2. </table>

     

    js代码:

    • title:显示的表格列名

    1. $(function(){
    2. $('#dg').datagrid({
    3. url:"${pageContext.request.contextPath}/OfferServlet",//servlet路径
    4. columns:[[
    5. {field:'offerid',title:'商品ID',width:100},
    6. {field:'offername',title:'商品名称',width:100},
    7. {field:'offertype',title:'商品类型',width:100},
    8. {field:'offerdesc',title:'商品描述',width:300},
    9. {field:'price',title:'商品价格',width:150}
    10. ]]
    11. });
    12. });

     

 

原文链接:http://www.cnblogs.com/bobozz/p/11462539.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号