Java与Web技术面试重点:从基础到Spring
需积分: 13 90 浏览量
更新于2024-09-13
收藏 3KB TXT 举报
"这篇资料包含了面试花旗银行时可能会遇到的常见问题,涵盖了JAVA基础知识、JSP/Servlet、J2EE以及XML相关知识,还有STRUTS、SPRING和HIBERNATE等框架的了解。"
以下是这些知识点的详细说明:
1. **JAVA基本知识**
- **List、Map、Set**:List是有序的集合,允许重复元素;Map是键值对存储结构,无序;Set不允许重复元素,不存储顺序。
- **Collection和Collections**:Collection是所有单列集合的父接口,Collections是操作集合的工具类,提供了排序、查找、替换等方法。
- **HashMap和Hashtable**:HashMap是非同步的,允许null键和值;Hashtable是同步的,不接受null键和值。
- **final, finally, finalize**:final修饰变量不可改变,类不可被继承,方法不可被覆盖;finally用于保证代码块总会被执行,即使有异常;finalize是对象被垃圾回收前调用的方法。
2. **JAVA多线程**
- 多线程实现方法:继承Thread类、实现Runnable接口、实现Callable接口。
- 线程同步:synchronized关键字、wait/notify、Lock接口(如ReentrantLock)。
3. **线程行为**
- sleep()让当前线程暂停指定时间,不会释放锁;wait()使线程等待,会释放锁。
4. **JAVA流**
- 流分为输入流和输出流,包括字符流和字节流,如InputStream/OutputStream和Reader/Writer。
- 抽象类有InputStream/OutputStream的子类如FileInputStream/FileOutputStream,Reader/Writer的子类如BufferedReader/BufferedWriter。
5. **多态**
- 多态是面向对象的三大特性之一,指一个引用类型可以指向多种具体类型实例的能力。
6. **异常处理**
- throws用于声明可能抛出的异常;throw用于抛出异常;try块用于捕获异常;catch块处理异常;finally块确保代码执行,无论是否发生异常。
7. **面向对象特征**
- 封装、继承、多态、抽象。
8. **工厂模式**
- 工厂模式是一种创建型设计模式,它提供了一种创建对象的最佳方式,通过工厂方法创建对象,隔离了类实例化过程。
9. **JSP/Servlet相关**
- Servlet生命周期包括加载、初始化、服务、销毁四个阶段。
- JSP与Servlet的相似之处在于都是Java Web开发的一部分,不同之处在于JSP侧重视图,Servlet侧重逻辑控制。
- JSP动作如<jsp:include>、<jsp:forward>等,用于页面控制。
- JSP内置对象如request、response、session、pageContext等,提供了访问请求、响应、会话等的能力。
- 动态include使用<jsp:include>,编译时决定;静态include使用 <%@ include %>,运行时决定。
- 不支持Session可在web.xml中设置session-config来禁用。
10. **J2EE相关**
- web容器(如Tomcat)负责运行Servlet和JSP;EJB容器管理企业级Java组件;JNDI是命名和目录服务;JMS消息队列;JTA事务管理;JAF应用程序框架;RMI/IIOP远程方法调用。
- web容器主要负责HTTP协议处理和Web应用的部署。
11. **XML相关**
- XML解析技术有DOM、SAX、StAX等,DOM一次性加载整个文档,SAX事件驱动,StAX流式解析。
- XML文档定义有DTD(文档类型定义)和XSD(XML Schema)两种,前者较简单,后者更严谨,支持复杂数据类型。
- 解析XML有DOM、SAX、StAX、JAXB等方式。
12. **STRUTS/SPRING/HIBERNATE**
- Struts是MVC框架,用于处理请求和展示视图。
- Hibernate是ORM框架,简化数据库操作。
- Spring是全面的Java EE应用框架,提供DI和AOP等功能。
- DI和IOC是Spring的核心,通过配置管理对象的依赖关系,实现解耦。
- BeanFactory和ApplicationContext都是Spring的容器,后者提供更多高级功能,如事件传播、国际化等。
- AOP(面向切面编程)用于模块化横切关注点,如日志、事务管理。
以上知识点是面试中可能涉及的内容,准备面试时需深入理解并能实际运用。
2009-03-04 上传
2020-01-26 上传
2021-10-20 上传
2023-03-04 上传
2021-08-06 上传
2021-06-20 上传
2021-06-20 上传
2021-06-20 上传
2021-06-20 上传
liuzhou0117
- 粉丝: 1
- 资源: 3
最新资源
- BottleJS快速入门:演示JavaScript依赖注入优势
- vConsole插件使用教程:输出与复制日志文件
- Node.js v12.7.0版本发布 - 适合高性能Web服务器与网络应用
- Android中实现图片的双指和双击缩放功能
- Anum Pinki英语至乌尔都语开源词典:23000词汇会话
- 三菱电机SLIMDIP智能功率模块在变频洗衣机的应用分析
- 用JavaScript实现的剪刀石头布游戏指南
- Node.js v12.22.1版发布 - 跨平台JavaScript环境新选择
- Infix修复发布:探索新的中缀处理方式
- 罕见疾病酶替代疗法药物非临床研究指导原则报告
- Node.js v10.20.0 版本发布,性能卓越的服务器端JavaScript
- hap-java-client:Java实现的HAP客户端库解析
- Shreyas Satish的GitHub博客自动化静态站点技术解析
- vtomole个人博客网站建设与维护经验分享
- MEAN.JS全栈解决方案:打造MongoDB、Express、AngularJS和Node.js应用
- 东南大学网络空间安全学院复试代码解析