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

需积分: 6 0 下载量 52 浏览量 更新于2024-07-25 收藏 253KB DOC 举报
"这是一份全面的Java面试题集,涵盖了Java基础知识,JSP&Servlet技术,J2EE相关知识,以及其他理论问题。适合准备Java相关面试的人员查阅和学习。" 1. Java基础知识 - 基本数据类型包括整型(byte, short, int, long)、浮点型(float, double)、字符型(char)和布尔型(boolean)。String不是基本数据类型,而是对象,基于字符数组创建。两者的主要区别在于基本类型是值类型,而String是引用类型,可以进行更复杂的操作,如拼接、比较等。 - 字符串反转和替换可通过StringBuilder或StringBuffer类实现。反转可以通过翻转字符数组实现;替换则利用indexOf和substring方法。 - 数据类型转换通常用parseInt、doubleValue等方法,反之用Character.getNumericValue(),或者Character.toString()。 - 日期和时间操作可使用java.util.Date和java.time包中的类,例如LocalDate、LocalTime等。通过相关方法获取年月日、时间,计算与1970年的毫秒差,以及使用DateTimeFormatter进行日期格式化。 2. 数组和集合 - 数组是一维或多维的数据存储结构,集合是动态大小的对象容器,如ArrayList、LinkedList、HashSet等。集合支持更多的操作,如添加、删除、排序等。 3. 文件和目录操作 - 使用File类进行文件和目录的列举、存在判断,以及读写操作。例如,exists()检查存在,listFiles()获取目录下的文件列表。 4. 多态 - 多态性体现在继承、方法重载(方法名相同,参数不同)和覆盖(子类重写父类方法)上,增强了代码的灵活性和可扩展性。 5. 编码转换 - 使用InputStreamReader/OutputStreamWriter配合不同的编码格式进行转换,例如GBK到ISO-8859-1。 6. 访问数据库 - Statement用于执行静态SQL语句,PreparedStatement预编译SQL,能防止SQL注入,效率更高,适用于多次执行相同SQL的情况。 7. JSP&Servlet技术 - JSP侧重视图,Servlet处理业务逻辑。JSP更适合展现,Servlet更适合控制。它们可以互相调用,JSP通过<%-- %>, <%= %>等标签插入Java代码,Servlet处理HTTP请求。 - Cookie和Session用于会话管理。Cookie存储在客户端,Session在服务器端,安全性相对更高,但消耗服务器资源。 8. J2EE相关知识 - J2EE(现称为Java EE)是企业级应用平台,包括J2SE(标准版)、J2ME(移动版)。它提供EJB、JMS、JDBC等技术,支持分布式应用。 9. 其他 - Web安全性涉及表单验证、HTTPS(SSL)等,MVC模式(Model-View-Controller)是常见的软件设计模式,用于分离业务逻辑、数据和用户界面。 以上只是部分面试题目的简要解析,完整的学习和理解还需要深入研究每个知识点并实践操作。