J2EE面试题库:Servlet、JavaMail、JSP实战解析
4星 · 超过85%的资源 需积分: 32 180 浏览量
更新于2024-09-17
收藏 145KB DOC 举报
"这是一份J2EE面试题集,包含了关于Servlet、JavaMail API、JSP、会话管理、自定义标签、过滤器、EJB等多个J2EE核心知识点的题目。"
在J2EE面试中,掌握以下几个关键知识点至关重要:
1. Servlet接口:每个Servlet都必须实现`javax.servlet.Servlet`接口。在这个题目中,选项b `javax.servlet.HttpServlet`是Servlet的HTTP实现,通常我们创建Servlet时会继承此类。
2. JavaMail API:发送邮件时,正确获取Session对象的方法是通过`Session.getInstance(objProperties)`,其中objProperties是配置邮件服务器的属性。
3. JSP页面执行顺序:JSP页面的执行过程中,脚本let(`<%! ... %>`)在页面被翻译成Servlet时执行,而脚本片段(`<% ... %>`)在每次请求时执行。题目中的例子中,由于`i`在页面加载时已经被初始化并递增,因此JavaScript中的`i`始终为2,所以不会有任何输出。
4. JSP输出:JSP中的`System.out.println()`不会在浏览器中显示,而是输出到服务器的日志,因此选项d正确,表示什么也不会在浏览器中输出。
5. JSP循环:JSP中的`<% for(...); %>`循环会在服务器端执行,对于每个客户端来说,它们看到的是循环执行后的结果。由于静态变量`I`和局部变量`j`的混淆,第二个客户将看到什么也没有输出。
6. 聊天记录存储:在没有数据库的情况下,聊天记录最好存储在`application`作用域中,这样所有用户都可以访问到这些记录,直到应用程序关闭。
7. 会话配置:在`web.xml`中设置的`<session-config>`标签定义了默认会话超时,单位是分钟。可以通过`HttpSession`的`getMaxInactiveInterval()`方法获取这个值。
8. `<jsp:param>`标签:它通常用于`<jsp:include>`和`<jsp:forward>`,传递参数给目标页面。在目标页面中,通过`request.getParameter()`获取参数,而不是`getAttribute()`。
9. JSP Bean的使用:在不同页面间共享Bean,需要在`session`作用域中存储,并在目标页面上强制类型转换以获取Bean。
10. JSP表达式语言:JSP2.0的表达式语法`${...}`可以用于显示计算结果,例如`${10+20}`。
11. 自定义标签:自定义标签的描述通常通过`.tld`文件完成,它定义了标签库的元数据。
12. Tag File:Tag File是JSP2.0引入的特性,允许开发者使用JSP语法来创建自定义标签,其扩展名为`.tag`。
13. Servlet Filter:Filter可以拦截请求,但不能直接生成响应,它可以用来进行身份验证、内容过滤等操作。
14. 会话Bean:有状态会话Bean通过序列化保存状态,恢复时可以继续处理之前的状态。无状态会话Bean不保存用户特定的状态。
15. EJB组件:EJB可能包括Home接口、远程接口和Bean类,但不是所有EJB都有Home接口,Bean类也不一定实现远程接口。
16. RMI远程接口:正确的RMI远程接口需要继承`Remote`接口并抛出`RemoteException`。
17. UserTransaction获取:可以通过`Context`的`getUserTransaction()`方法或JNDI查找来获取`UserTransaction`。
以上知识点涵盖了J2EE开发中的重要概念和技术,理解和掌握这些内容对于J2EE面试和实际开发工作都极其重要。
2018-11-29 上传
2008-02-25 上传
2019-03-19 上传
143 浏览量
2007-07-27 上传
105 浏览量
jilongliang
- 粉丝: 40
- 资源: 94
最新资源
- NIST REFPROP问题反馈与解决方案存储库
- 掌握LeetCode习题的系统开源答案
- ctop:实现汉字按首字母拼音分类排序的PHP工具
- 微信小程序课程学习——投资融资类产品说明
- Matlab犯罪模拟器开发:探索《当蛮力失败》犯罪惩罚模型
- Java网上招聘系统实战项目源码及部署教程
- OneSky APIPHP5库:PHP5.1及以上版本的API集成
- 实时监控MySQL导入进度的bash脚本技巧
- 使用MATLAB开发交流电压脉冲生成控制系统
- ESP32安全OTA更新:原生API与WebSocket加密传输
- Sonic-Sharp: 基于《刺猬索尼克》的开源C#游戏引擎
- Java文章发布系统源码及部署教程
- CQUPT Python课程代码资源完整分享
- 易语言实现获取目录尺寸的Scripting.FileSystemObject对象方法
- Excel宾果卡生成器:自定义和打印多张卡片
- 使用HALCON实现图像二维码自动读取与解码