<sub id="rrh1b"><menuitem id="rrh1b"></menuitem></sub>

    <th id="rrh1b"><address id="rrh1b"><dfn id="rrh1b"></dfn></address></th><th id="rrh1b"></th>

    <th id="rrh1b"></th>

    <sub id="rrh1b"></sub>

        <sub id="rrh1b"><meter id="rrh1b"></meter></sub>
        <address id="rrh1b"><menuitem id="rrh1b"><font id="rrh1b"></font></menuitem></address>

          首页»Java WEB»JAVA SSH 框架介绍

          JAVA SSH 框架介绍

          来源:Web开发者 发布时间:2012-02-28 阅读次数:

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

           Struts

            Struts是一个基于Sun J2EE?#25945;?#30340;MVC框架,主要是采用Servlet和JSP技术来实现的。由于Struts能充分满足应用开发的需求,简单?#23376;茫?#25935;捷迅速,在过去的一年中颇受关注。Struts把Servlet、JSP、自定义标签和信息资源(message resources)整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套MVC模式,极大的节省了时间,所以说Struts是一个非常不错的应用框架。

            官方地址:http://struts.apache.org

           Spring

            Spring是一个解决了许多在J2EE开发中常见的问题的强大框架。 Spring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不?#23884;?#31867;编程的?#24049;?#20064;惯。Spring的架构基础是基于使用JavaBean属性的Inversion of Control容器。然而,这仅仅是完整图景中的一部分:Spring在使用IOC容器作为构建完关注所有架构层的完整解决方案方面?#23884;?#19968;无二的。 Spring提供了唯一的数据访问抽象,包括简单和?#34892;?#29575;的JDBC框架,极大的改进了效率并且减少了可能的错误。Spring的数据访问架构还集成了Hibernate?#25512;?#20182;O/R mapping解决方案。Spring还提供了唯一的事务管理抽象,它能够在各种底层事务管理技术,例如JTA或者JDBC事务提供一个一致的编程模型。Spring提供了一个用标准Java语言编写的AOP框架,它给POJOs提供了声明式的事务管理?#25512;?#20182;企业事务--如果你需要--还能实现你自己的aspects。这个框架足够强大,使得应用程序能够抛开EJB的复杂性,同时享受着和传统EJB相关的关键服务。Spring还提供了可以和IoC容器集成的强大而灵活的MVC Web框架。

            官方地址:spring: http://www.springsource.org

           Hibernate

            Hibernate是一个开放?#21019;?#30721;的对象关系?#25104;?#26694;架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任?#38382;?#29992;JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。

            官方地址:http://www.hibernate.org

           在SSH 的组合框架模式中,三者各自的作用

            Struts 是一个很好的MVC框架,主要技术是Servlet和Jsp。Struts的MVC设计模式可以使我们的逻辑变得很清晰,让我们写的程序层次分明。

            Spring 提供了管理业务对象的一致方法,并鼓励注入对接口编程而不?#23884;?#31867;编程的?#24049;?#20064;惯,使我们的产品在最大程度上解耦。

            Hibernate 是用来持久化数据?#27169;?#25552;供了完全面向对象的数据库操作。Hibernate对JDBC进行了非常轻量级的封装,它使得与关系型数据库打交道变得非常轻松。

            以下是SSH架构图:


          SSH架构图

            Struts负责Web层:

            ActionFormBean接收网页中表单提交的数据,然后通过Action进?#20889;?#29702;,再Forward到对应的网页,在Struts-config.xml中定义了<action-mapping>,ActionServlet会加载进来。

            Spring负责业务层管理,即Service:

            Service为Action提供统一的调用接口,封装持久层的DAO,并集成Hibernate,Spring可对JavaBean和事物进行统?#36824;?#29702;。

            Hibernate负责持久层,完成数据库的CRUD操作:

            Hibernate有一组hbm.xml文件和PO,是与数据库中的表相对应?#27169;?#28982;后定义DAO,这些是与数据库打交道的类。

            在Struts+Spring+Hibernate系统中,对象之间的调用流程如下:

            Struts——>Spring——>Hibernate
            JSP——>Action——>Service——>DAO——>Hibernate

          QQ群:WEB开发者官方群(515171538),验证消息:10000
          微信群:?#26377;?#32534;微信 849023636 邀请您加入,验证消息:10000
          提示:更多精彩内容关注微信公众号:全栈开发者?#34892;模╢sder-com)
          网友评论(共6条评论) 正在载入评论......
          理智评论文明上网,拒绝恶意谩骂 发表评论 / 共6条评论
          登录会员?#34892;?/span>
          彩运

            <sub id="rrh1b"><menuitem id="rrh1b"></menuitem></sub>

            <th id="rrh1b"><address id="rrh1b"><dfn id="rrh1b"></dfn></address></th><th id="rrh1b"></th>

            <th id="rrh1b"></th>

            <sub id="rrh1b"></sub>

                <sub id="rrh1b"><meter id="rrh1b"></meter></sub>
                <address id="rrh1b"><menuitem id="rrh1b"><font id="rrh1b"></font></menuitem></address>

                    <sub id="rrh1b"><menuitem id="rrh1b"></menuitem></sub>

                    <th id="rrh1b"><address id="rrh1b"><dfn id="rrh1b"></dfn></address></th><th id="rrh1b"></th>

                    <th id="rrh1b"></th>

                    <sub id="rrh1b"></sub>

                        <sub id="rrh1b"><meter id="rrh1b"></meter></sub>
                        <address id="rrh1b"><menuitem id="rrh1b"><font id="rrh1b"></font></menuitem></address>

                          福彩3d什么叫组三 快乐10分开奖直播 亚泰五分彩计划 浙江11选5专家推荐 体彩福建36选7第18129 北单开奖时间规则 陕西快乐十分上市 为什么手机不能买彩票 3d彩经网专家杀号 百度十一运夺金走势图 08年2月福彩号码 吉林快三预测和推荐 生肖特码资料 nba让分胜负爆料 幸运飞艇助赢计划