ajax、js、jsp、servlet的联系和区别

简述

正在做项目的我对于ajax、jsp、js和servlet有了一个更深的理解,相比于之前对它们模糊不清的概念,似乎更加明显了。

  1. 关于AJAX:我起初学习ajax技术的时候,可能是因为我比较笨吧,觉得就是一个固定的模式,打固定的代码、执行固定的操作,但是就是不知道怎么用,所以在老师刚讲完,我并没有很清楚的知道它神奇的地方在哪。在做项目的过程中,我才慢慢的明白,AJAX其实用处有很多,它有一个固定的模式,可以把html/jsp中的参数传到servlet,再把servlet调取一系列方法锁获得的值作为AJAX的回调函数,然后再返回给html/jsp。其次,ajax还可以进行部分页面的刷新,这次在项目中的模糊查找就是得益于ajax的;
  2. 关于JS:AJAX一般写在JS中,所以我对js的看法又多了一些。它可以看做是嵌在JSP中的一段代码段,换言之,写在JSP中的 部分的内容,统统都可以写在JSP中,这样代码就看起来清晰多了,所以在这次项目中的按照ID查找,分页查找中涉及到函数和AJAX部分,我都把它提炼出来放在了JS板块中;
  3. 关于JSP:JSP的全称是java servlet page,从全称中就可以看出它是融合了servlet和html的部分功能,其实就是把静态页面和动态页面于一体;
  4. 对用户servlet:我对servlet的理解有两个:第一它可以用来书写动态页面;第二它可以连接数据库,通过MVC三层架构来获得数据,然后通过response传递传递数据到网页上,再在网页中通过代码获取数据。

ajax 和 servlet 的跳转场景的区别

1.servlet的页面跳转

在servlet中,一般跳转都调用doGet或者doPost方法

1. forward(转发)方式

跳转的代码:request.getRequestDispatcher(" ").forward(request, response);

特点:

  1. 页面的路径是相对路径;
  2. 跳转后浏览器地址栏不会变化;
  3. forward方式只能跳转到本web应用中的页面上(不会产生新的页面)

使用转发的方式跳转页面,传值可以使用三种方法:url中带request.getParameter(" “)、request.getsession,request.setAttribute(” ")

2. redirect (重定向)方式

跳转的代码:response.sendRedirect(" ");

特点:

  1. 页面的路径是相对路径;
  2. sendRedirect可以将页面跳转到任何页面,不一定局限于本web应用中;(比如:可以跳转到response.sendRedirect(“http://www.4399.com”);
  3. 跳转后浏览器地址栏变化

使用转发的方式跳转页面,传值只能是parameter 或者 session

2.ajax的跳转(JSP)

$.ajax({
url : " " //输入你要跳转的页面
type : “POST” // 选择你的请求方式
data : " " //请求需要发送的处理数据的类型
async : false,//同步:意思是当有返回值以后才会进行后面的js程序。
success:function(msg){
// 写入成功之后的逻辑代码
}
 }
}

猜你喜欢

转载自blog.csdn.net/weixin_46687295/article/details/107287794