美学原理本着Java框架spring、hibernate、Struts的通俗理解

Struts 的理解:

  1. struts 是一个如约 MVC
    模式设计之 Web 层框架,其实它就是是一个大妈的 servlet,这个
    Servlet 名为 ActionServlet,或是 ActionServlet 的子类。我们可以 web.xml
    文件中将符
    共同某种特征的拥有请求提交这 Servlet 处理,这个 Servlet 再参考一个部署文件(通常也
    /WEB-INF/struts-config.xml)将逐一请求分别分配为不同之 action 去处理。
    一个扩张知识点: struts 的部署文件可以产生多单,可以按照模块配置各自的布置文件,这样只是
    为防范配置文件之过于膨胀;
    2.ActionServlet 把要提交 action 去处理之前,会拿请求参数封装成一个 formbean 对象(就
    凡一个 java 类,这个近乎吃之每个属性对应一个呼吁参数),封装成一个哪些的
    formbean
    靶也?看安排文件。
    3.如证实的是, ActionServlet 把 formbean 对象传递让 action 的 execute 方法之前,可能
    会晤调用 formbean 的
    validate 方法开展校验,只有校验通过后才拿这个 formbean 对象传递
    于 action 的 execute 方法,否则,它以回到一个谬误页面,这个荒唐页面由
    input 属性指定,
    4.action 推行完毕后如果返回显示的结果视图,这个结果视图是用一个
    ActionForward 对象来表
    显之, actionforward 对象通过 struts-config.xml
    配置文件被之布置关联到某 jsp 页面,因
    也次中采取的凡在 struts-config.xml 配置文件呢 jsp 页面设置的逻辑名,这样可以实现
    action 程序代码与归的 jsp 页面名称的解耦。

Hibernate 的理解:

  1. 面向对象设计之软件中运转过程可掌握好是以时时刻刻开创各种新目标、建立目标的
    个中的涉嫌,调用对象的方法来改各个对象的状态与对象消亡的经过,不管程序运行的历程
    及操作怎么样,本质上且是设落一个结果,程序及一个随时与生一个随时的运作结果的不比
    异就表现在内存中的目标状态有了变化。
    2.为在关机及内存空间不够的观下,保持程序的运转状态,需要以内存中的对象状态保
    怀着到持久化设备以及由持久化设备受到恢复来目标的状态,通常都是保存及关系数据库来保存好
    量对象信息。从 Java 程序的运行效果及来讲,保存对象状态的效果相比系统运行的另外功
    会吧,应该是一个生不起眼的依附功能, java
    采用 jdbc 来促成者意义,这个不起眼的
    效能可使修大量底代码,而开的政工只是是保留对象以及恢复对象,并且那些坦坦荡荡底
    jdbc
    代码并没有什么技术含量,基本上是采用同样套例行公事的正规代码模板来编排,是一律种植苦活
    以及重复性的劳作。
    3.经数据库保存 java 程序运行时来的目标及还原对象,其实就是是促成了 java 对象以及关
    相关数据库记录的照射关系,称为 ORM(即 Object
    RelationMapping),人们可经包装
    JDBC 代码来促成了这种力量,封装出来的产品叫 ORM 框架, Hibernate 就是内部的
    一律种流行 ORM 框架。使用 Hibernate 框架,不用写 JDBC 代码,仅仅是调用一个 save

    效仿,就足以拿对象保存到关系数据库中,仅仅是调用一个 get 方法,就好起数据库被加载
    有一个靶。
    4.使用 Hibernate 的着力流程是:配置
    Configuration 对象、产生 SessionFactory、创建
    session 对象,启动工作,完成 CRUD
    操作,提交业务,关闭 session。
    5.行使 Hibernate 时,先使配置 hibernate.cfg.xml 文件,其中布置数据库连接信息及方言等,
    还要吗每个实体配置相应的 hbm.xml 文件,hibernate.cfg.xml
    文件中要登记每个 hbm.xml
    文件。
    6.以使用 Hibernate 时,重点要了解
    Session 的缓存原理,级联,延迟加载与 hql 查询。
    Spring 的理解:
    1.Spring 实现了厂模式之厂类(在这里发生必要说清楚啊是厂模式),这个类名为
    BeanFactory(实际上是一个接口),在次中常见 BeanFactory 的子类 ApplicationContext。
    Spring 相当给一个生之厂子类,在该布局文件被经<bean>元素配置用于创造实例对象的
    类名和实例对象的性能。
  2. Spring 提供了针对
    IOC 良好支持, IOC 是同种编程思想,是同样栽架构艺术,利用这种考虑
    足挺好地贯彻模块之间的解耦。IOC 也叫做 DI (Depency Injection),什么让依赖注入呢?
    譬如,

    Class Programmer
    {
    Computer computer =null;
    public void code()
    {
    //Computercomputer = new IBMComputer();
    //Computercomputer = beanfacotry.getComputer();
    computer.write();
    }
    public voidsetComputer(Computer computer)
    {
    this.computer= computer;
    }
    }

 

除此以外两栽办法都由靠,第一只一直依赖让目标类,第二独将赖转移至厂子及,第三个根本
的与目标与厂解耦了。在 spring 的部署文件被布局有如下:

<bean id=”computer” class=”cn.itcast.interview.Computer”>
</bean>
<bean id=”programmer” class=”cn.itcast.interview.Programmer”>
<property name=”computer” ref=”computer”></property>
</bean>
  1. Spring 提供了针对性 AOP 技术之可以封装, AOP 称为面向切面编程,就是系统受产生众多各
    无关的类似的章程,在这些洋洋艺术被一旦加入某种系统功能的代码,例如,加入日志,加入
    权判断,加入大处理,这种应用叫 AOP。实现 AOP 功能利用的是代理技术,客户端
    程序不再调用目标,而调用代理类,代理类与目标类对外具有相同之法子声明,有些许种方法
    可兑现同的主意声明,一凡促成均等之接口,二是当做对象的子类在,JDK 中动用 Proxy
    类有动态代理的道啊有接口生成实现类似,如果一旦为某个类生成子类,则足以据此
    CGLI
    B。在变化无常的代理类的不二法门被加入系功能以及调用目标类的照应措施,系统机能的代理以
    Advice 对象开展提供,显然要创有代理对象,至少用目标类和
    Advice 类。