深圳尚学堂java知识大总结(一)

1. 为什么要用spring?

  • Spring是一个轻量级的IOC和AOP框架。

  • IOC(控制反转)意味着将你设计好的类交给系统去控制,而不是在你的类内部控制。这称为控制反转

  • AOP(面向切面),它将那些影响多个类的行为封装到可重用的模块中,面向对象是把问题从同类事物中抽象出来,面向切面是把问题从不同类问题中抽象出来。

2. struts框架提供了哪些辅助功能

  • 自动收集数据(成员变量)

  • 支持类型转换

  • 国际化

  • 异常处理

  • 标签

3. struts1和struts2的区别

  • 1 struts1 控制器servlet struts2控制器filter

  • 2 struts 收集数据时 ActionForm Struts2 成员变量

  • 3 struts1 execute(Resquest,Response)

    struts2 execute()

  • 4 struts1 与ServletAPI耦合性强

    struts2 与ServletAPI耦合性低

  • 5 struts1 没有拦截器 struts2有拦截器(可以使代码各司其职)

  • 6 struts1只能使用jstl标签,而struts2提供了OGNL表达式

4. J2EE共有23中设计模式,说出其中几种常用的:

  • 工厂模式(Factory)单例模式(Singleton)

  • 适配器模式(Adapter)代理模式(Proxy)

  • 模板方法模式(Template Method)

5. Hibernate对象状态有哪几种,并简单介绍一下

  • 1.临时状态:内存对象,并没有保存在数据库

  • 2.持久化状态 已经保存在数据库并纳入了session缓存中

  • 3.游离状题啊 已经保存在数据库中,但没有纳入session缓存中

6.spring 的优点?

  1. 降低了组件之间的耦合性 ,实现了软件各层之间的解耦

  2. 可以使用容易提供的众多服务,如事务管理,消息服务等

  3. 容器提供单例模式支持

  4. 容器提供了AOP技术,利用它很容易实现如权限拦截,运行期监控等功能

  5. 容器提供了众多的辅助类,能加快应用的开发

  6. spring对于主流的应用框架提供了集成支持,如hibernate,JPA,Struts等

  7. spring属于低侵入式设计,代码的污染极低

  8. 独立于各种应用服务器

  9. spring的DI机制降低了业务对象替换的复杂性

  10. Spring的高度开放性,并不强制应用完全依赖于Spring,开发者可以自由选择spring的部分或全部

原文链接:,转发请注明来源!