每日面试——2020.12.25:JSP

本文探讨了Java Web开发中的核心概念,包括Servlet的生命周期,详细阐述了初始化、服务和销毁三个阶段。同时,对比了Servlet与JSP的异同,指出JSP本质是Servlet,但更适合前端展示,而Servlet则更专注于控制逻辑。另外,讨论了数据库操作中truncate和delete的区别,强调了truncate的不可回滚和DDL特性。最后,分析了Servlet的线程安全性问题,提醒开发者注意并发场景下的潜在风险。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


一、真正的懂王


所谓真正的懂了,理解了,应该是下面这个公式

理解=概念+作用+特点+原理+书面整理


二、真正的面试大佬


大神级别面试=理解+逻辑+表达+表情+动作+形象




三、今日题目


1、Servlet的生命周期?

(1)客户端请求到达服务端,服务端加载 Servlet 类到内存,并调用init()方法初始化该 Servlet;
(2)Servlet 调用 service() 方法来处理客户端不同的请求方式。
(3)Servlet 销毁前调用 destroy() 方法。
(4)Servlet 是由 JVM 的垃圾回收器进行垃圾回收的。

2. JSP和Servlet的异同点

相同点:
(1)JSP在本质是Servlet,只是两者创建方式不一样.
(2)JSP经编译后就变成了Servlet,两者其实是相通的,只是 JSP适合前端显示数据,Servlet适合接收数据、控制数据跳转流程
不同点:
(1)JSP是Java和HTML混合组成在.jsp的文件中,Servlet是在Java文件中。
(2)JSP侧重于视图,Servlet主要用于控制逻辑。

3、什么是Servlet?

Servlet概念:
Servlet是在 Web 服务器上的程序,作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。
Servlet工作流程:
客户端发送请求至服务器,服务器启动并调用 Servlet,Servlet 根据客户端请求,生成响应内容并将传给服务器,服务器将响应返回给客户端

4.truncate和delete的区别

(1)truncate不能回退,delete能撤销rollback命令
(2) truncate是DDL语言,delete是DML语句
(3) truncate不会触发触发器,delete能触发触发器。

5、Servlet是线程安全的吗?

Servlet不是线程安全的。
原因:
Servlet 默认是单例模式,如果多个HTTP请求请求的是同一个Servlet,那么多个HTTP请求对应的线程可能会并发的调用此Servlet的service()方法。如果该service()方法定义了实例变量或静态变量,那么可能会发生线程安全问题

总结

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值