Java面试必看:基础、JSP&Servlet、J2EE与安全

需积分: 26 4 下载量 139 浏览量 更新于2024-07-26 收藏 253KB DOC 举报
"这是一份全面的Java面试题集,涵盖了Java基础知识、JSP与Servlet技术、J2EE相关知识以及其他重要的话题,如Web安全性、MVC模式等。" 一、Java基础知识 1. Java拥有8种基本数据类型:byte、short、int、long、float、double、char和boolean。String不是基本数据类型,而是对象,它封装了字符序列。基本数据类型直接存储值,而String对象则存储字符引用。 2. 字符串反转可以通过构建新字符串实现,如使用StringBuilder或StringBuffer类的reverse()方法。字符串替换可利用replace()或replaceAll()方法完成。 3. 数据类型转换涉及Integer.parseInt()和Double.parseDouble()用于字符到数字,Integer.toString()和Double.toString()用于数字到字符。四舍五入可以用Math.round()方法对整数部分进行操作,对于小数点前两位,需要先乘以100再四舍五入,然后除以100。 4. 日期和时间处理可以使用java.util.Date和java.time包。获取年月日、时间、毫秒数和格式化日期可借助Calendar和SimpleDateFormat类。 5. 数组和集合,如ArrayList、LinkedList、HashMap等,它们的特性、操作及转换需要注意。 6. I/O操作包括File类的方法,如listFiles()用于列出目录文件,exists()判断文件/目录存在,以及FileInputStream和FileOutputStream用于文件读写。 7. 多态通过继承、重载(方法名相同,参数不同)和覆盖(方法名、返回类型、参数列表都相同)实现。 8. 编码转换可使用getBytes()和new String(),如将GB2312转换为ISO-8859-1。 9. 访问数据库通常用JDBC,Statement用于执行SQL,PreparedStatement能防止SQL注入,预编译SQL,效率更高。 二、JSP&Servlet技术 1. JSP是视图层,Servlet是控制层,两者都能处理HTTP请求。JSP更方便展现,Servlet适合业务逻辑处理。共同点是都能动态生成HTML,JSP更适合新手,Servlet更灵活。 2. HTML标记处理需转义特殊字符,如`<`转为`<`,`>`转为`>`,`&`转为`&`,`"`转为`"`。 3. JSP通过request对象读取请求,通过getAttribute()访问CGI变量,realPath()获取文件路径。 4. Cookie保存客户端状态,Session保存服务器端状态。Cookie易丢失,Session消耗服务器资源,适用于短期和长期用户跟踪。 5. JSP包含外部文件用<jsp:include>和<%@ include %>,前者运行时合并,后者编译时合并。 6. errorPage定义错误处理页面,全局错误可通过web.xml配置,局部错误可在JSP页面指定。 7. JSP使用JavaBeans通过jsp:useBean标签实例化,属性设置通过jsp:setProperty,读取通过jsp:getProperty。 8. JSP标记库包括核心标签库(c:)、函数标签库(fn:)等,简化JSP编程。 三、J2EE相关知识 1. J2EE(现称为Java EE)是企业级应用平台,包括J2SE(标准版)和J2ME(微型版)。J2EE提供分布式、事务、安全等服务。 2. J2EE是一个平台,提供EJB(Enterprise JavaBeans)、JMS(Java消息服务)、JTA(Java事务API)等技术。 3. ApplicationServer如Tomcat、Glassfish等,提供部署、管理、事务、安全等服务,优化应用性能。 4. 连接池提高数据库访问效率,通过复用已建立的连接,减少创建和销毁连接的开销。 5. web.xml是Web应用的部署描述符,配置Servlet、Filter、Listener等组件,以及全局初始化参数。 四、其他 1. Web安全性涉及表单验证、Basic认证、SSL加密,以及代码层面的输入校验、防止SQL注入和XSS攻击。 2. MVC模式将模型(Model)、视图(View)和控制器(Controller)分离,实现业务逻辑、数据展示和用户交互解耦。 3. MVC框架如Spring MVC、Struts2等,简化Web开发,提供模型绑定、异常处理和自动化测试支持。 这份面试题集全面涵盖了Java开发的重要知识点,不仅适用于面试准备,也适合作为日常学习和复习的参考资料。