zoukankan      html  css  js  c++  java
  • SSH面试题

    一、SSH框架

    SSH作为struts2+spring+hibernate的一个集成框架,是目前较流行的一种Web应用程序开源框架。

    集成SSH框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层,帮助开发人员在短期内搭建Web应用程序。其中使用Struts作为系统的整体基础架构,负责MVC的分离,控制业务跳转,利用Hibernate框架对持久层提供支持,Spring做管理,管理struts和hibernate。

    a、Struts
    Struts是个表示层框架,负责界面展示,接收请求,分发请求。
    b、Hibernate
    Hibernate是个持久层框架,负责与数据库的交互。
    c、Spring
    Spring是一个业务层框架,也是一个整合框架,管理struts和hibernate。

    二、为什么要用Spring

    1.方便解耦,简化开发
    通过Spring提供的IoC容器,可以将对象之间的依赖关系交由Spring进行控制,避免硬编码所造成的过度程序耦合。

    2.AOP编程的支持
    通过Spring提供的AOP功能,方便进行面向切面的编程,如性能监测、事务管理、日志记录等。

    3.声明式事务的支持
    4.方便集成各种优秀框架

    5.降低Java EE API的使用难度
    如对JDBC,JavaMail,远程调用等提供了简便封装

    三、 

    四、介绍一下Spring的事务管理
    事务就是对一系列的数据库操作(比如插入多条数据)进行统一的提交或回滚操作,如果插入成功,那么一起成功,如果中间有一条出现异常,那么回滚之前的所有操作。这样可以防止出现脏数据,防止数据库数据出现问题。

    开发中为了避免这种情况一般都会进行事务管理。Spring中也有自己的事务管理机制,一般是使用TransactionMananger进行管理,可以通过Spring的注入来完成此功能。

    五、什么是依赖注入,依赖注入的作用是什么?
    IOC是一种思想,它能指导我们如何设计出松耦合、更优良的程序。传统应用程序都是由我们在类内部主动创建依赖对象,从而导致类与类之间高耦合,难于测试;有了IOC容器后,把创建和查找依赖对象的控制权交给了容器,由容器进行注入组合对象,所以对象与对象之间是松散耦合,这样也方便测试,利于功能复用,更重要的是使得程序的整个体系结构变得非常灵活。

    依赖注入的作用:减少类间耦合度,避免用new来创建对象

    六、什么是AOP,AOP的作用是什么?
    AOP,面向切面编程,就是把可重用的功能提取出来,然后将这些通用功能在合适的时候织入到应用程序中,比如事务管理、权限控制、日志记录、性能统计等。

    AOP的作用
    AOP并没有帮助我们解决任何新的问题,它只是提供了一种更好的办法,能够用更少的工作量来解决现有的一些问题,使得系统更加健壮,可维护性更好。

    七、Spring中的BeanFactory与ApplicationContext的作用有哪些?
    1、BeanFactory负责读取bean的配置文件,管理bean的加载、实例化,维护bean之间的依赖关系,负责bean的生命周期。
    2、ApplicationContext除了提供上述BeanFactory所能提供的功能之外,还提供了更完整的框架功能:
    a. 国际化支持
    b. 资源访问
    c. 事件传递

    八、连接池
    c3p0、dbcp

    九、跨库事务
    Atomikos、jotm

    如果,您认为阅读这篇博客让您有些收获,不妨点击一下右下角的【推荐】。
    如果,您希望更容易地发现我的新博客,不妨点击一下左下角的【关注我】。
    如果,您对我的博客所讲述的内容有兴趣,请继续关注我的后续博客,我是【Ruthless】。

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    6.25作业
    博客园第一篇
    532. 数组中的K-diff数对
    echarts
    跨域问题
    数组中第三大的数 leetcode 414
    除自身以外数组的乘积leetcode 238
    xshell工具
    插入、删除和随机查询时间复杂度都为O(1) leetcode 381
    组合总和3 leetcode 216
  • 原文地址:https://www.cnblogs.com/linjiqin/p/3573151.html
Copyright © 2011-2022 走看看