关于JAVA面试题的整理(SSH)
1.什么是Spring的AOP?它的功能?
答:AOP是面向切面编程,相当于拦截器,可以在需要的地方插入逻辑,所谓的面向切面就是把相同的功能抽象出来。
2.MVC的各个部分都有哪些技术来实现?如何实现?
答:MVC是Model-View-Controller的简写;
-Model代表的是应用的业务逻辑,通过JavaBean,EJB组件实现;
-View是应用的表示面,通过JSP页面产生;
-Controller是提供应用的处理过程控制,一般是一个Servlet;
通过这种设计模型把应用逻辑,处理过程和显示逻辑分成不同的组件实现。这些组件可以进行交互和重用
3.简述Struts2的执行流程
1.客户端浏览器发出HTTP请求;
2.根据web.xml配置,该请求被FilterDispatcher接收;
3.根据struts.xml配置,找到需要调用的Action类和方法,并通过IoC(控制反转)方式,将值注入给Action;
4.Action调用业务逻辑组件处理业务逻辑,包含表单验证;
5.Action执行完毕,根据Struts.xml中的配置找到对应的返回结果result,并跳转到相应界面;
6.返回HTTP响应到客户端浏览器;
4.为什么要用Hibernate?
1.对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码;
2.Hibernate是一个基于JDBC的主流持久化框架,是一个优秀的ORM(对象关系映射)实现,它很大程度的简化了DAO(Data Access Object)层的编码工作;
3.Hibernate使用Java反射机制,而不是字节码增强程序来实现透明性;
4.Hibernate是一个轻量级框架,性能非常好,映射的灵活性很出色,它支持各种关系数据库以及各种复杂关系;
5.Hibernate的工作原理
1.读取并解析配置文件;
2.读取并解析映射信息,创建SessionFactory;
3.打开Session;
4.创建事物Transation;
5.持久化操作;
6.提交事物;
7.关闭Session;
8.关闭SessionFactory;
6.反射机制的作用
1.在运行时判断任意一个对象所属的类;
2.在运行时获取类的对象;
3.在运行时访问java对象的属性、方法、构造方法等;
7.反射机制的优缺点
优点:可以实现动态创建对象和编译,体现出很大的灵活性;可以获得类的各种内容,进行了反编译。反射机制可以使代码更加灵活,更加容易实现面向对象;
缺点:对性能有影响。
待续