java中使用框架是干什么用的,java框架的作用
Java框架,简单理解是一个可复用的设计构件,它规定了应用的体系结构,阐明了整个设计、协作构件之间的依赖关系、责任分配和控制流程,表现为一组抽象类以及其实例之间协作的方法,它为构件复用提供了上下文(Context)关系。
如何解决写爬虫IP受阻的问题?立即使用。
常用的Java框架有哪些
Struts、Hibernate和Spring是我们Java开发中的常用框架,他们分别针对不同的应用场景给出最合适的解决方案。但是你知道这些知名的框架最初是怎么产生的吗?
我们知道,传统的Java Web应用是由JSP Servlet Javabean实现的,它实现了最基本的MVC层次结构,将程序结构分成几层,包括前台显示的JSP,流程逻辑控制的Servlet,数据封装的Javabean。
但是这种结构仍然存在问题:如JSP页面中需要使用符号嵌入很多的 Java代码,造成页面结构混乱,Servlet和Javabean负责了大量的跳转和运算工作,耦合紧密,程序复用度低等等。
为了解决这些问题,Struts框架出现了,它是一个完美的MVC实现。它有一个中央控制类(一个Servlet)。针对不同的业务,我们需要一个负责页面跳转和后台逻辑操作的Action类,一个或几个负责数据输入和输出显示的JSP页面,一个负责Action和JSP之间传递数据的Form类。Struts框架提供的一组标签可以在JSP中使用,就像使用HTML标签一样简单,但是可以完成非常复杂的逻辑。这个JSP页面中不需要包含一行Java代码。
但是把所有的操作逻辑都放在Struts的Action中,会使得Action类的复用度低,逻辑混乱,所以人们通常把整个Web应用分成三层,Struts负责显示层,它调用业务层完成操作逻辑,业务层调用持久层完成数据库的读写。
当使用JDBC连接读写数据库时,我们通常会打开数据库连接,使用复杂的SQL语句进行读写,然后关闭连接。获得的数据需要转换或者封装后再传输到外界,这是一个非常复杂的过程。
这时,Hibernate框架出现了,它要求你创建一系列持久类。每个类的属性可以简单地看作与数据库表的属性一一对应。当然也可以实现关系数据库各种表的对应。当我们需要相关操作的时候,就不用关注数据库表了。不用一行一行的查询数据库,只需要持久类就可以完成添加、删除、查询等功能。让我们的软件开发真正面向对象,而不是面向混乱的代码。我的感觉是,与JDBC相比,使用Hibernate减少了80%的编程量。
现在我们有三层,但是每层之间的调用是什么?比如显示层的Struts需要调用一个业务类,就需要新建一个业务类,然后使用;业务层需要调用持久层的类,需要使用一个新的持久层类。用这种新的方式互相调用是软件开发中最糟糕的设计。简单来说,调用者依赖于被调用者,两者之间存在强耦合。如果我想在其他地方重用一个类,这个类所依赖的其他类也需要包含在内。程序变得非常混乱,各个类互相依赖,互相调用,复用程度极低。如果一个类被修改,许多依赖它的类都会受到影响。因此,出现了Spring框架。
Spring的作用是完全解耦类之间的依赖关系。如果一个类依赖于某个东西,那么它就是一个接口。至于这个接口怎么实现,无所谓。只要得到一个实现这个接口的类,就可以很容易地将实现的类注入到通过xml配置文件调用接口的类中。所有类之间的这种依赖性完全被配置文件所取代。所以Spring框架的核心就是所谓的依赖注入和控制反转。
目前的架构是Struts负责显示层,Hibernate负责持久层,Spring负责中间业务层。这种结构是目前国内最流行的Java Web应用架构。另外,由于Spring使用的依赖注入和AOP(面向方面编程),其内部模型非常优秀,以至于Spring本身就实现了一个使用依赖注入的MVC框架,称为Spring MVC。同时,为了处理好事情,Spring集成了Hibernate,使得事情管理从Hibernate的持久层转移到业务层,使用起来更加方便和强大。以上是spring mvc使用的详细内容。更多请关注我们的其他相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。