• SSH三大框架


    1 应用服务器有哪些:weblogic,jboss,tomcat

    2 Hibernate优于JDBC的地方

    1)对jdbc访问数据库进行了封装,简化了数据访问层的重复代码

    2)Hibernate 操作数据库是面向对象的操作

    3介绍下Struts2的工作原理

    1 读取配置文件。加载struts控制器

    2 用户请求 用户提交表单或调用URL向WEB应用程序服务器提交请求,请求的数据用HTTP协议上传给WEB服务器。

    3 通过struts控制器进行处理

    4 经过一系列的拦截器处理

    5 进行业务逻辑的处理

    6 响应给用户JSP将结果展现给用户

    为什么要用?

    1)JSP,Servlet、JavaBean技术的出现给我们构建强大的企业应用系统提供了可能。但用这些技术构建的系统非常的烦乱

    2)基于Struts开发的应用:

    不用考虑公共问题

    专心在业务实现上

    结构统一,易于学习、维护

    新手也可以写出好程序

     

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

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

    2)支持类型转换

    3)国际化

    4)异常处理

    5)标签

    5 hibernate的工作原理

    1 读取并解析配置文件

    2 读取并解析映射信息,创建SessionFactory

    3 打开Session

    4 创建事务Transaction

    5 持久化操作

    6 提交事务

    7 关闭Session

    8 关闭SessionFactory

    为什么要用?

    1 对JDBC访问数据库的代码做了封装,大大简化了数据访问繁琐的重复性代码。

    2 Hibernate是一个基于JDBC的主流持久化框架,是一个优秀的ORM实现。他很大程度的简化DAO层的编码工作

    3 hibernate的性能非常好,因为它是个轻量级框架。映射的灵活性很出色。它支持各种关系数据库,从一对一到多对多的各种复杂关系。

    6 hibernate的对象状态有哪几种,并简单介绍下

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

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

    3 游离状态:已经保存在数据库中,但没有纳入session缓存中

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

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

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

    模板方法模式(Template Method)

    8 spring 的优点

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

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

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

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

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

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

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

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

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

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

    9什么是DI机制

    依赖注入(Dependecy Injection)和控制反转(Inversion of Control)是同一个概念,

    具体的讲:当某个角色

    需要另一个角色协助的时候,在传统的程序设计过程中,通常调用者来创建被调用者的实例。但在spring中 创建被调用者的工作不再有调用者来完成,因此成为控制反转。创建被调用者的工作由spring来完成,然后注入调用者 因此称为依赖注入。

    Spring以动态灵活的方式来管理对象,注入的两种方式,设置注入和构造注入。

    设置注入的优点:直观,自然

    构造注入的优点:可以在构造器中决定依赖关系的顺序。

    10 什么是AOP

    面向切面编程(AOP)完善spring的依赖注入(DI),面向切面编程在spring中主要表现为两个方面

    1 面向切面编程提供声明式事务管理

    2 spring支持多用户自定义的切面

     

    面向切面编程(AOP)是对面向对象编程(oop)的补充,

    面向对象编程将程序分解成各个层次的对象,面向切面编程将程序运行过程分解成各个切面。

    AOP从程序运行角度考虑程序的结构,提取业务处理过程的切面,oop是静态的抽象,AOP是动态的抽象,是对应用执行过程中的步骤进行抽象,从获得步骤之间的逻辑划分。

    AOP 框架具有的两个特征:

    1.各个步骤之间的良好隔离性

    2.源代码无关性

    11 为什么要用spring

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

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

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

    12 什么是Hibernate的延迟加载

    延迟加载机制是为了避免一些无谓的性能开销而提出来的,所谓的延迟加载就是当在真正需要数据的时候,才真正执行数据加载操作。在Hibernate中提供了对实体对象的延迟加载以及对集合的延迟加载,另外在Hibernate3中还提供了对属性的延迟加载。

    13 说下Hibernate 的缓存机制

    一、hibernate的一级缓存

    a)         Hibernate支持两个级别的缓存,默认只支持一级缓存

    b)        每个Session内部自带一个一级缓存;

    c)         某个Session被关闭时,其对应的一级缓存自动清除;

    二、hibernate的二级缓存

    二级缓存独立于session,默认不开启;

    14hibernate的查询方式

    本地SQL查询、Criteria、Hql

    15 Hibernate中类之间的关联关系有几种(如:一对多,多对多的关系)

    Many-to-many              one-to-many   may-to-many               one-to-one

     

    16 struts1和struts2的区别

    1 struts1控制servlet            struts2控制Filter

    2 struts1 收集数据是 ActionForm  Struts2 成员变量

    3 struts1 execute(Resquest,Response)

    Struts2  execute()

    4 struts1 与ServletAPI耦合性强

    Struts2与ServletAPI耦合性低

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

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

  • 相关阅读:
    C#--带参SQL语句数通用数据访问类
    VS 2017产品密匙
    关于编码中的字符和字节问题
    关于C++中的cin用法
    C++基础(一、基本语法,Hello World)
    Oracle查看用户所在的表空间
    静态变量、枚举、以及静态代码块的使用场景
    Java 枚举(enum) 详解7种常见的用法
    第一章 对象和封装
    摘抄Java反射
  • 原文地址:https://www.cnblogs.com/--Candice/p/3195369.html
Copyright © 2020-2023  润新知