JAVA面试题汇总;自己新加了一些面试题及答案了(主要包括:原来的JAVA面试题汇总,Hibernate十五道强攻题;还有用简单代码学习Spring:IoC、AOP。。。等等);祝大家顺利通过面试吧;机会只留给有准备的人。 【JAVA面试题】 1. **Hashtable 和 HashMap 的区别** - **继承关系**:Hashtable 继承自 Dictionary 类,而 HashMap 是 Java 1.2 引入的 Map 接口的实现,继承自 AbstractMap 类。 - **同步性**:Hashtable 的方法是同步的,适合多线程环境,而 HashMap 并非同步,需要手动同步,可以使用 Collections.synchronizedMap() 创建线程安全的 HashMap。 - **空值支持**:HashMap 允许键或值为 null,而 Hashtable 不允许。 - **contains 方法**:Hashtable 已移除 contains 方法,保留 containsKey 和 containsValue。 - **默认容量与扩容策略**:Hashtable 默认容量为 11,扩容时会变为 old * 2 + 1;HashMap 默认容量为 16,且总是 2 的幂次方。 2. **MVC 模式** - **定义**:Model-View-Controller 模式是一种软件设计模式,将业务逻辑(Model)、数据(View)和用户界面控制(Controller)分离,提高应用程序的可维护性和可扩展性。 - **优点**:提高了组件的复用性,降低了耦合度,使得开发和维护更为高效。 3. **数据库操作** - **SQLServer 左连接与 Oracle**:在 SQLServer 中,左连接使用 `LEFT JOIN`,而在 Oracle 中,可以使用 `a.id(+)=b.id` 的方式表示左连接。 - **数据库对应**:在 Oracle 中,SQLServer 的数据库概念对应于 Oracle 的表空间。 4. **数据库迁移** - **Oracle 数据库映射**:如果需要将 SQLServer 的两个数据库迁移到 Oracle,可以在 Oracle 中创建一个用户,分配两个表空间分别对应原数据库。 5. **页面间传递参数** - **Form 表单提交**:在 a.jsp 中使用表单提交数据,b.jsp 通过 `request.getParameter()` 获取。 - **URL 参数**:在 URL 后面添加参数,如 `http://localhost:8080/a.jsp?username=admin&password=111`,b.jsp 同样使用 `request.getParameter()` 获取。 - **隐藏字段**:在 a.jsp 中使用隐藏字段 `<input type="hidden" name="username" value="admin">`,在 b.jsp 获取。 6. **多个页面间的跳转和数据传递** - 在 a.jsp 提交的数据可以通过 session 或 request 对象传递到 b.jsp,再由 b.jsp 传递到 c.jsp。例如,使用 `session.setAttribute()` 和 `session.getAttribute()` 或 `request.setAttribute()` 和 `request.getAttribute()` 进行数据的存储和读取。 7. **Hibernate** - Hibernate 是一个 ORM(对象关系映射)框架,它允许开发者用 Java 对象来操作数据库,简化了数据库操作,提供了缓存机制、事务管理和查询语言等特性。 8. **Spring** - Spring 是一个全面的 Java 应用框架,包括依赖注入(IoC)和面向切面编程(AOP)。IoC 使得对象之间的依赖关系由容器管理,而 AOP 允许在不修改代码的情况下,对特定行为进行增强或拦截。 这些面试题涵盖了 Java 基础、集合、设计模式、数据库操作、Web 开发以及两个重要的框架 Hibernate 和 Spring。理解和掌握这些知识点对于 Java 开发者来说至关重要,尤其是在面试中能体现出专业技能和经验。
剩余63页未读,继续阅读
- xiaoyuzxcasd2012-07-13很多很详细很强大
- shy1292012-07-30这个东西不错,比较适合经验少的初学认识。
- 粉丝: 64
- 资源: 1978
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- asm-西电微机原理实验
- Arduino-arduino
- C语言-leetcode题解之70-climbing-stairs.c
- C语言-leetcode题解之68-text-justification.c
- C语言-leetcode题解之66-plus-one.c
- C语言-leetcode题解之64-minimum-path-sum.c
- C语言-leetcode题解之63-unique-paths-ii.c
- C语言-leetcode题解之62-unique-paths.c
- C语言-leetcode题解之61-rotate-list.c
- C语言-leetcode题解之59-spiral-matrix-ii.c