JAVA知识点笔记—— Java Web篇

下为我总结的另外两篇笔记,有需要可以直接点击看看

JAVA知识点笔记—— java基础篇

JAVA知识点笔记—— 开源框架篇 

目录

1. session 和 cookie 的区别

2. session 和 cookie 联系

3. servlet 的生命周期

4. 什么是 webservice

5. jsp 和 servlet 的区别、共同点、各自应用的范围

6.转发(forward)和重定向(redirect)的区别

7. request.getAttribute()和 request.getParameter()有何区别

9. MVC 的各个部分都有哪些技术来实现以及如何实现

11. Http 请求的 get 和 post 方法的区别。

12. tomcat 容器是如何创建 servlet 类实例以及用到了什么原理

13.JDBC 访问数据库的基本步骤是什么

14.为什么要使用 PreparedStatement

15.数据库连接池的原理。为什么要使用连接池

16.execute,executeQuery,executeUpdate 的区别是什么

17.JDBC 的 ResultSet 是什么

18.什么是 Servlet

19.doGet 和 doPost 方法有什么区别

20.页面间对象传递的方法

21.JSP 中动态 INCLUDE 与静态 INCLUDE 的区别

22.JSP 的四大范围

23.BS 与 CS 的联系与区别

24.说出 Servlet 的生命周期,并说出 Servlet 和 CGI 的区别

25.如何防止表单重复提交

26.request 作用

27.get 请求中文乱码

28.post 请求中文乱码问题

29.响应乱码

30.Cookie 对象的缺陷

31.Session 的运行机制

32.钝化和活化

33.Filter 的工作原理

34. Filter 链是什么

35. Servlet Filter Listener 启动顺序


1. session 和 cookie 的区别

  • session 是存储在服务器端,cookie 是存储在客户端的,所以安全来讲 session 的安全性要比 cookie 高,然后我们获取 session 里的信息是通过存放在会话 cookie 里的 sessionid 获取的。又由于 session 是存放在服务器的内存中,所以 session 里的东西不断增加会造成服务器的负担,所以会把很重要的信息存储在 session 中,而把一些次要东西存储在客户端的 cookie 里,然后 cookie 确切的说分为两大类分为会话 cookie 和持久化 cookie,会话 cookie 确切的说是,存放在客户端浏览器的内存中,所以说他的生命周期和浏览器是一致的,浏览器关了会话 cookie 也就消失了,然而持久化 cookie 是存放在客户端硬盘中,而持久化 cookie 的生命周期就是我们在设置 cookie 时候设置的那个保存时间,然后我们考虑一问题当浏览器关闭时 session 会不会丢失,从上面叙述分析 session 的信息是通过会话 cookie 的 sessionid 获取的,当浏览器关闭的时候会话 cookie 消失所以我们的 sessionid 也就消失了,但是 session 的信息还存在服务器端,这时我们只是查不到所谓的 session 但它并不是不存在。那么,session 在什么情况下丢失,就是在服务器关闭的时候,或者是 session 过期(默认时间是 30 分钟),再或 者 调 用 了 invalidate() 的 或 者 是 我 们 想 要 session 中 的 某 一 条 数 据 消 失 调 用session.removeAttribute()方法,然后 session 在什么时候被创建呢,确切的说是通过调用getsession()来创建,这就是 session 与 cookie 的区别.

2. session 和 cookie 联系

  • session 是通过 cookie 来工作的 session 和 cookie 之间是通过$COOKIE['PHPSESSID']来联系的,通过$COOKIE['PHPSESSID']可以知道 session 的 id,从而获取到其他的信息。 在购物网站中通常将用户加入购物车的商品联通 session_id 记录到数据库中,当用户再次访问是,通过 sessionid 就可以查找到用户上次加入购物车的商品。因为 sessionid 是唯一的,记录到数据库中就可以根据这个查找了。

3. servlet 的生命周期

  • Servlet 生命周期可以分成四个阶段:加载和实例化、初始化、服务、销毁。 当客户第一次请求时,首先判断是否存在 Servlet 对象,若不存在,则由 Web 容器创建对象,而后调用 init()方法对其初始化,此初始化方法在整个 Servlet 生命周期中只调用一次。 完成 Servlet 对象的创建和实例化之后,Web 容器会调用 Servlet 对象的 service()方法来 处理请求。

  • Web 容器关闭或者 Servlet 对象要从容器中被删除时,会自动调用 destory()方法。

4. 什么是 webservice

  • 从表面上看,WebService 就是一个应用程序向外界暴露出一个能通过 Web 进行调用的 API,也就是说能用编程的方法通过 Web 来调用这个应用程序。我们把调用这个 WebService 的应用程序叫做客户端,而把提供这个 WebService 的应用程序叫做服务端。从深层次看, WebService 是建立可互操作的分布式应用程序的新平台,是一个平台,是一套标准。它定义了应用程序如何在 Web 上实现互操作性,你可以用任何你喜欢的语言,在任何你喜欢的平台上写 Web service ,只要我们可以通过 Web service 标准对这些服务进行查询和访问。

5. jsp 和 servlet 的区别、共同点、各自应用的范围

  • JSP 是 Servlet 技术的扩展,本质上就是 Servlet 的简易方式。JSP 编译后是“类 servlet”。Servlet 和 JSP 最主要的不同点在于,Servlet 的应用逻辑是在 Java 文件中,并且完全从表示层中的 HTML 里分离开来。而 JSP 的情况是 Java 和 HTML 可以组合成一个扩展名为.jsp 的文件。JSP侧重于视图,Servlet 主要用于控制逻辑。在 struts 框架中,JSP 位于 MVC 设计模式的视图层, 而 Servlet 位于控制层.

6.转发(forward)和重定向(redirect)的区别

  • 从地址栏显示来说 forward 是服务器请求资源,服务器直接访问目标地址的 URL,把那个 URL 的响应内容读取过来,然后把这些内容再发给浏览器.浏览器根本不知道服务器发送的内容从哪里来的,所以它的地址栏还是原来的地址. redirect 是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址.所以地址栏显示的是新的 URL.

  • 从数据共享来说 forward:转发页面和转发到的页面可以共享 request 里面的数据. redirect:不能共享数据. 3. 从运用地方来说 forward:一般用于用户登陆的时候,根据角色转发到相应的模块. redirect:一般用于用户注销登陆时返回主页面和跳转到其它的网站等 4. 从效率来说forward:高. redirect:低.

7. request.getAttribute()和 request.getParameter()有何区别

  • request.getParameter()取得是通过容器的实现来取得通过类似 post,get 等方式传入的数

  • request.setAttribute()和 getAttribute()只是在 web 容器内部流转,仅仅是请求处理阶段。

  • getAttribute 是返回对象,getParameter 返回字符串

  • getAttribute()一向是和 setAttribute()一起使用的,只有先用 setAttribute()设置之后,才能够通过 getAttribute()来获得值,它们传递的是 Object 类型的数据。而且必须在同一个 request 对象中使用才有效。,而 getParameter()是接收表单的 get 或者 post 提交过来的参数

9. MVC 的各个部分都有哪些技术来实现以及如何实现

  • MVC 是 Model-View-Controller 的简写。"Model" 代表的是应用的业务逻辑(通过 JavaBean, EJB 组件实现), "View" 是应用的表示面(由 JSP 页面产生),"Controller" 是提供应用的处理过程控制(一般是一个 Servlet),通过这种设计模型把应用逻辑,处理过程和显示逻辑分成不同的组件实现。这些组件可以进行交互和重用

11. Http 请求的 get 和 post 方法的区别。

  • Get 是向服

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值