抓取ajax动态网页java(JavaServlet开发的轻量级MVC框架最佳实践以用户注册功能模块浅谈)

优采云 发布时间: 2022-01-15 00:15

  抓取ajax动态网页java(JavaServlet开发的轻量级MVC框架最佳实践以用户注册功能模块浅谈)

  在Java Web 应用程序的开发中,经常遇到的一种情况是很多页面都收录“公共页面”。这些动态页面的特点是:大量的访问会带来更大的性能压力。功能设计会动态地改变它自己的元素。比如登录前后显示的页面不一样,比如下面的代码:

   1

2

3

4

5 登录

6 注册

7

8

9

10 欢迎${loginUser.username}

11 退出

12 购物车

13 我的订单

14

15

16

17

  这是一段前端 JSP 代码。实现了在服务器处理完登录函数后,根据session对象中的loginUser值是否为空来判断登录是否完成,从而决定显示哪一段标签内容。

  事实上,因为这是一个顶级页面的常用菜单栏,所以这个代码收录在数百个页面中。如果每一页都必须更改,那将是不可想象的。

  解决方法是通过动态收录机制来解决。

  相关的 Java 开发技能可以在以下位置找到:

  Java Servlet开发轻量级MVC框架最佳实践

  以用户注册功能模块为例,探讨MVC架构下的JavaWeb开发流程

  静态和动态包括

  以JSP为例说明页面的静态和动态收录

  JSP 中有两种类型的收录:

  静态收录:

  动态收录:. 下面是一个例子来说明如何使用 contains。

  例子:

  项目文件树:

  

  header.jsp 文件中的内容:

  1

2

3

4 Insert title here

5

6

7 This is headergteAllCats发起ajax请求,服务端经过处理,

3 //将所有分类信息以JSON格式的数据返回,获取到返回的所有分类绑定在页面的显示分类区域

4 var url="/ServletStoreDemo/CategoryServlet";

5 var obj={"method":"findAllCats"};

6 $.post(url,obj,function(data){

7 //alert(data);

8

9 //获取到服务端响应会的数据,经过观察data中存放的是一个JSON格式数组,遍历数组,动态的显示分类区域代码

10 $.each(data,function(i,obj){

11 var li=""+obj.cname+"";

12 $("#myUL").append(li);

13 });

14

15 },"json");

16

17 });

  同时在CategoryServlet中,将数据库返回的数据打包成JSON格式返回给客户端浏览器

  1 jsonStr=JSONArray.fromObject(list).toString();

2 //将全部分类信息响应到客户端

3 //告诉浏览器本次响应的数据是JSON格式的字符串

4 resp.setContentType("application/json;charset=utf-8");

5 resp.getWriter().print(jsonStr);

  原理分析

  1. 页面加载完成后,Ajax会向服务器CategoryServlet发起请求,触发getAllCats方法,服务器会处理这个方法。

  2. 服务器查询数据库,返回JSON格式的所有分类信息。前端获取所有返回的分类,通过匿名函数将分类数据绑定到页面的展示分类区。

  3. 遍历得到的JSON格式数组,动态显示分类区号。

  通过使用Redis缓存可以大大提升首页访问的性能,原理会在以后的博文中介绍。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线