zoukankan      html  css  js  c++  java
  • [struts2、hibernate、spring] 工作原理简单说明

    简单说,三者不过把一些常用的功能方法进行封装,使得这些方法规范化,避免像在jsp开发中重复而零散地编写类似代码。

    下面说明它们各自的功能角色:struts2侧重于控制器功能,当客户端发送一个地址请求,Struts(通过配置文件)根据请求代码做出反映,并进行页面调用或转发。比如:/login 请求很可能是一个登录请求,那么Struts2应该回复一个login.jsp页面给客户端进行登录,然而地址栏不会看到/login.jsp样式,具体地址被隐藏了,只看到请求地址样式。struts2的标签类似于jstl标签,它们在本质上是一致的,都是为视图层方便编码以及为更好地与控制器融合。不是一定要使用Struts2标签才能使用它的控制器功能。可以选择其他标签,如jsp或jstl标签等。标签只是皮毛。其实spring它也有一套自己的标签,哪能用那么多啊。熟悉使用一种标签即可。

    hibernate框架主要是负责连接数据库,把每个数据表转化为一个类,表中的每行数据相当于类的一个对象,hibernate通过对象的方式进行读取操作。

    说到spring,不得不说控制反转,有关控制反转,请搜索“java设计模式”。然而,控制反转不能说是spring的功能,而只是他的设计思想,也就是说spring是由“控制反转”和”切面编程”这些设计模式开发出来的。spring包有许多类和方法,有像hibernate那样操作底层数据库功能的方法,有可以操作复杂的业务操作,这要看调用它什么样的接口和方法。由于它特殊的设计模式,使得它可以灵活地与其它框架整合,主要是通过配置文件的方式来完成。spring和hibernate整合在实际上替代了hibernate,因为它对hibernate的方法进行了包装。

    spring和strut2整合不过是为struts2的action类提供容器管理,也就是说,当要实例化一个action类的时候,根据spring配置,spring容器会负责生成该action的对象。三者整合的话,由spring来统领全局。下面的链接是一个案例,除了s2sh三大框架之外,还整合了compass搜索框架。

  • 相关阅读:
    深入了解 JavaScript 中的 for 循环
    JavaScript 字符串常用操作
    10个习惯助你成为一名优秀的程序员
    Ubuntu日常问题搜集和解决办法
    提升你的开发效率,10 个 NPM 使用技巧
    Redux教程3:添加倒计时
    Redux教程2:链接React
    Redux教程1:环境搭建,初写Redux
    React + Redux 入坑指南
    12个非常实用的JavaScript小技巧
  • 原文地址:https://www.cnblogs.com/kentyouyou/p/2966911.html
Copyright © 2011-2022 走看看