Java面试必备知识点:从基础到J2EE

2星 需积分: 3 1 下载量 98 浏览量 更新于2024-07-29 收藏 243KB DOC 举报
"这篇资料是关于华为和IBM等公司面试中常见的JAVA面试题的全面整理,涵盖了Java基础知识、JSP&Servlet技术、J2EE相关知识以及其他重要的话题,旨在帮助求职者准备面试并深入理解JAVA相关技术。" 一、Java基础知识 1. Java拥有八种基本数据类型:整型(byte, short, int, long)、浮点型(float, double)、字符型(char)和布尔型(boolean)。String不是基本数据类型,而是对象,它继承了Object类,可调用各种字符串方法,而基本类型则没有这些特性。 2. 字符串操作包括反转和替换。反转可以通过双指针法实现,替换则可以使用substring和concat方法结合正则表达式来完成。 3. 数据类型转换可通过parseInt、doubleValue等方法进行,例如将字符'1'转为整数1;反之,数字转字符可以用Character.getNumericValue()。取小数点前两位并四舍五入可利用Math.round()。 4. 日期和时间处理,可以使用java.util.Calendar获取年月日、时分秒,System.currentTimeMillis()获取自1970年以来的毫秒数,通过Calendar.getInstance().getActualMaximum(Calendar.DAY_OF_MONTH)获取某月最后一天,Date和SimpleDateFormat类组合可实现日期格式化。 5. 数组和集合,数组是固定大小的,集合如ArrayList、LinkedList支持动态扩容,各有优缺点,适用场景不同。 6. 文件和目录操作,java.io.File类提供列举目录、判断存在、读写文件等功能,如File.list()获取目录下文件列表。 7. 多态是Java的核心特性,通过继承、重载(方法名相同参数不同)、覆盖(子类重写父类方法)实现。 二、JSP&Servlet技术 1. JSP是视图层,Servlet是控制层,JSP主要用于展现数据,Servlet处理业务逻辑。它们都可用于Web开发,但JSP更适合页面展示,Servlet更适用于处理请求。 2. HTML标记处理需转义特殊字符,如`<`转为`<`,`>`转为`>`,`&`转为`&`,`"`转为`"`。 3. 在JSP中,通过request对象读取客户端请求,通过request.getParameter()访问CGI变量,PageContext对象的getRealPath()获取JSP文件的物理路径。 4. Cookie用于持久化客户端数据,Session存储服务器端会话数据。Cookie易被篡改,安全性较差,Session依赖于Cookie或URL重写,不适用于分布式环境。 5. JSP中包含外部文件可通过<%@ include %>或<jsp:include %>,前者编译时合并,后者运行时合并,后者可动态包含。 6. errorPage定义了错误处理页面,用于捕获和显示异常。 7. JSP中使用JavaBeans通过jsp:useBean标签,将Java对象绑定到JSP页面,实现业务逻辑和视图的分离。 8. JSP标记库包括核心标签库、JSTL等,简化JSP编程,提高代码可读性和维护性。 9. 请求转发在Servlet中通过RequestDispatcher的forward()方法,在JSP中使用<jsp:forward>标签。 三、J2EE相关知识 1. J2EE(Java 2 Platform, Enterprise Edition)是企业级应用平台,J2SE是标准版,J2ME是微型版。J2EE提供分布式、多层架构的解决方案,包含EJB、JMS、JTA等技术。 2. J2EE既是技术也是平台,提供了Web、EJB、JMS、JTA等多种服务和规范。 3. ApplicationServer如Tomcat、WebLogic、JBoss等,负责管理应用组件、提供运行时环境,具备部署、事务管理、安全管理等功能。 4. 连接池提高数据库连接的复用率,减少创建和销毁连接的开销,降低系统资源消耗。 5. web.xml是Servlet配置文件,定义了Servlet、过滤器、监听器等,是应用的部署描述符。 四、其他 1. Web安全性涉及表单验证、HTTP基本认证、SSL加密通信等,代码层面需防止SQL注入、XSS攻击等。 2. 未完的内容可能是关于JMS、JTA或其他J2EE高级技术的简介。 以上内容是JAVA面试题大全的部分重点,涵盖了基础概念、实践操作及高级应用,对于理解Java编程和Web开发有很好的指导作用。