java三大框架介绍「建议收藏」

java三大框架介绍「建议收藏」常听人提起三大框架,关于三大框架,做了如下了解:           三大框架:Struts+Hibernate+Spring          java三大框架主要用来做WEN应用。          Struts主要负责表示层的显示,Spring利用它的IOC和AOP来处理控制业务(负责对数据库的操作),Hibernate主要是数据…

大家好,又见面了,我是你们的朋友全栈君。

常听人提起三大框架,关于三大框架,做了如下了解:

                   三大框架:Struts+Hibernate+Spring

                   java三大框架主要用来做WEN应用。

                  Struts主要负责表示层的显示,Spring利用它的IOC和AOP来处理控制业务(负责对数据库的操作),Hibernate主要是数据持久化到数据库,再用jsp的servlet做网页开发的时候有个web.xml的映射文件,里面有一个mapping的标签就是用来做文件映射的。当你在浏览器上输入URL得知的时候,文件就会根据你写的名称对应到一个JAVA文件,根据java文件里编写的内容显示在浏览器上,就是一个网页。

   一 .Struts框架

               struts是开源软件。使用Struts的目的是为了帮助我们减少在运用MVC设计模型来开发Web应用的时间。如果我们想混合使用Servlets和JSP的优点来建立可扩展的应用,struts是一个不错的选择。

              1.流程:服务器启动后,根据web.xml加载ActionServlet读取struts-config.xml文件内容到内存。

             2.架构:Struts对Model,View和Controller都提供了对应的组件。ActionServlet,这个类是Struts的核心控制器,负责拦截来自用户的请求。

         Model部分:由JavaBean组成,ActionForm用于封装用户的请求参数,封装成ActionForm对象,该对象被ActionServlet转发给Action,Action根据ActionFrom里面的请求参数处理用户的请求。JavaBean则封装了底层的业务逻辑,包括数据库访问等。

        View部分:该部分采用JSP实现。Struts提供了丰富的标签库,通过标签库可以减少脚本的使用,自定义的标签库可以实现与Model的有效交互,并增加了现实功能。

       Controller组件:Controller组件有两个部分组成——系统核心控制器,业务逻辑控制器。系统核心控制器,对应上图的ActionServlet。该控制器由Struts框架提供,继承HttpServlet类,因此可以配置成标注的Servlet。该控制器负责拦截所有的HTTP请求,然后根据用户请求决定是否要转给业务逻辑控制器。业务逻辑控制器,负责处理用户请求,本身不具备处理能力,而是调用Model来完成处理。对应Action部分。

  二.Spring框架:

          Spring是一个解决了许多在J2EE开发中常见的的问题的强大框架。Springle提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类变成的好习惯。Spring的架构基础是基于使用JavaBean属性的Inversion of Control 容器。然而Spring在使用IoC容器作为构建玩关注所有架构层层的完整解决方案方面是独一无二的。Spring提供了唯一的数据管理抽象包括简单和有效率的JDBC框架,极大的改进了效率并且减少了可能的错误。Spring的数据访问架构还集成了Hibernate和其他O/R mapping 解决方案。

  三.Hibernate框架:

           Hibernate 是一个开源代码的对象关系映射框架,对JDBC惊醒了费城轻量级的的对象封装,使得Java程序员可以随心所欲的使用对象变成思维来操作数据库。

           Hebernate可以应用在任何使用JDBC的场合,既可以在java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用最具革命意义的事,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。

          Hibernate的核心接口一共有5个,分别为:Session、SessionFactory、Transaction、Query和Configuration。这5个核心接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。下面对这五个核心接口分别加以介绍。

         1.Session接口:负责执行被持久化对象的CRUD操作(CRUD的任务是完成与数据库的交流,包含了很多常见的SQL语句。)。但需要注意的是Session对象是非线程安全的。同时,Hibernate的session不同于JSP应用中的HttpSession。这里当使用session这个术语时,其实指的是Hibernate中的session,而以后会将HttpSession对象称为用户session。

          2.SessionFactory接口:负责初始化Hibernate。它充当数据存储源的代理,并负责创建Session对象。这里用到了工厂模式。需要注意的是SessionFactory并不是轻量级的,因为一般情况下,一个项目通常只需要一个SessionFactory就够,当需要操作多个数据库时,可以为每个数据库指定一个SessionFactory。

          3.Configuration接口:负责配置并启动Hibernate,创建SessionFactory对象。在Hibernate的启动的过程中,Configuration类的实例首先定位映射文档位置、读取配置,然后创建SessionFactory对象。

           4.Transaction接口:负责事务相关的操作。它是可选的,开发人员也可以设计编写自己的底层事务处理代码。

          5.Query和Criteria接口:负责执行各种数据库查询。它可以使用HQL语言或SQL语句两种表达方式。

 

 

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/156346.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 利用计算机程序快速得到9*9大小数独的解法

    利用计算机程序快速得到9*9大小数独的解法对于9∗99*99∗9大小的数独游戏,我们可以使用回溯法求得其正确的解,但是,一般的回溯法实现这个过程保证不了时间复杂度,所以我们可以利用二进制压缩的方法来优化其过程。具体思路如下:明确数独的约束:相同一行不能出现重复的数相同一列不能出现重复的数同一宫内不能出现重复的数定义row[i]row[i]row[i]数组代表,第i,ji,ji,j位置,在iii行哪些数被占用,用二进制111表示没有被占用,000表示被占用那么最开始row[i]row[i]row[i]=111111

    2022年10月22日
  • MySQL 5.7.9版本sql_mode=only_full_group_by问题

    用到GROUPBY语句查询时com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:Expression#2ofSELECTl

  • 基于物品的协同过滤算法:理论说明,代码实现及应用「建议收藏」

    基于物品的协同过滤算法:理论说明,代码实现及应用「建议收藏」基于物品的协同过滤算法:理论说明,代码实现及应用标签:爬虫Python主要参考资料:项亮.推荐系统实践[M].北京:人民邮电出版社,2012.转载请注明出处:sss0.一些碎碎念从4月中旬开始,被导师赶到北京的郊区搬砖去了,根本就没有时间学习看书,这个时候才知道之前的生活是多么的幸福:每天看自己想看的书,然后实践一下,最后写博文总结一下,偶尔还能去跑个步,游个泳。想找实习的计划也泡汤了

  • eclipse中android开发_Android开发教程

    eclipse中android开发_Android开发教程创建第一个Android项目本系列文章主要针对基于Eclipse的IDE下进行Android开发的技术、方法、过程与技巧进行记录。本文将记录,以Win1064位操作系统为例,使用Eclipse创建第一个Android项目,并配置运行的过程。该过程包括:创建Android工程和在Android虚拟设备上运行程序。创建Android工程1)启动Eclipse

  • Kong网关初探_API网关

    Kong网关初探_API网关安装Kong安装文档Kong开源版不提供dashboard支持,只有Kong企业版才有该功能。但有第三方控制台Konga同样可以友好地管理KongAdminAPI对象,快速安装如下:dockerrun-d-p1337:1337\–namekonga\–network=kong-net\-eDB_ADAPTER=postgres\-eDB_HOST=kong-database\-eDB_PORT=5432\-eDB_USER=kong\

  • couldn’t transfer artifact_could not convert from to

    couldn’t transfer artifact_could not convert from toCouldnottransferartifactxxxfrom/toxxx解决方案问题描述解决步骤问题描述本地仓库有对应的jar包,但是maveninstall一直提示Couldnottransferartifact。折腾了我老半天Failedtoreadartifactdescriptorfor*:Couldnottransferartifact…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号