Java三大框架技术起源

时间:2020-09-08 10:37:18 JAVA认证 我要投稿

Java三大框架技术起源

  作为java新手,你可否知道,这些Java三大框架Struts、Hibernate和Spring是怎么来的呢?下面一起来了解三大框架的起源吧!

  传统的Java Web应用程序是通过JSP+Servlet+Javabean来实现的。这样的模式可以将程序几个分为基层,也就是最基本的程序分层,它们中有负责前台展示的JSP,也有负责逻辑控制的Servlet,还有负责程序分装的Javabean。看似完美的结构仍然存问题,比如说在JSP页面中,需要通过符合的使用来嵌入大量的Java代码,导致页面结构的混乱,Servlet和Javabean负责大量的跳转和运算的工作,它们耦合紧密,导致程序复用率低等问题。

  Struts

  Struts框架出现就是为了解决这些问题,它是一个完美的MVC实现,Struts框架有一个中央控制类( Servlet),在针对不同业务时,我们可以通过一个Action类来负责页面跳转和后台的逻辑运算,一个或者几个JSP页面来负责数据的输入、输出以及显示,通过一个 Form类来负责传递Action和JSP中间的数据。JSP中也可以使用Struts框架来提供的一组标签,就像我们使用HTML的标签一样简单,但是它可以完成更为复杂的程序逻辑。从此在JSP页面中再也不用出现一行包围的Java代码了。

  但是在Struts的Action里放入大量的运算逻辑也会使得 Action类的复用度低和导致的逻辑混乱,所以在开发者习惯把整个的Web应用程序分为三层,分别是:Struts来负责显示层,由它来调用业务层完成运算逻辑,业务层再来调用持久层完成数据库的.读写。

  使用JDBC连接来读写数据库,最常见的方法就是打开数据库的连接、使用复杂的SQL语句来读写、关闭连接,最后获取的数据还得需要转换或封装后再往外传,这是一个非常烦琐的过程。

  Hibernate

  这时候 Hibernate框架出现了,你可以通过创建一系列的持久化类,每个类的属性我们都可以简单的将其看做是一张数据库便的属性并与之一一对应,同样也可以实现关系数据库的各种表件关联的对应。在我们需要进行相关操作时,就可以不用再关注数据库表。无需去一行一行的查询数据库,只要持久化类就可以轻松的完成增删改查的功能。这也是使我们的软件开发可以真正面向对象,而不是面向混乱的代码。Hibernate使用比JDBC方式减少了80%的编程量。

  现在我们已经有三个层了,但层与层直接是怎样调用的呢?如果显示层的Struts需要调用一个业务类,就得先new出一个业务类出来,然后再使用;业务层需要调用持久层的类,也得先new出一个持久层类再用。这种new方式的相互调用就是软件开发中糟糕的设计体体现。简而言之,就是调用者依赖被调用者,它们之间形成了强耦合,如果我想在其他地方复用某个类,则这个类依赖的其他类也需要包含。程序就变得很混乱,每个类互相依赖互相调用,复用度极低。如果一个类做了修改,则依赖它的很多类都会受到牵连。 为此,出现Spring框架。

  Spring

  Spring的作用就是完全解耦类之间的依赖关系,一个类如果要依赖什么,那就是一个接口。至于如何实现这个接口,这都不重要了。只要拿到一个实现了这个接口的类,就可以轻松的通过xml配置文件把实现类注射到调用接口的那个类里。所有类之间的这种依赖关系就完全通过配置文件的方式替代了。所以 Spring框架最核心的就是所谓的依赖注射和控制反转。

  现在的结构是,Struts负责显示层,Hibernate负责持久层,Spring负责中间的业务层,这个结构是目前国内最流行的Java Web应用程序架构了。另外,由于Spring使用的依赖注射以及AOP(面向方面编程),所以它的这种内部模式非常优秀,以至于Spring自己也实现了一个使用依赖注射的MVC框架,叫做Spring MVC,同时为了很好的处理事物,Spring集成了Hibernate,使事物管理从Hibernate的持久层提升到了业务层,使用更加方便和强大。

  Struts框架是2000年就开始起步了,到目前已经发展了5年,技术相当成熟,目前全球Java开发中Struts框架是显示层技术中当之无愧的王者。它拥有大量的用户群和很好的开发团队。这也是国内大部分Java软件公司对新进员工的基本要求。

  其他

  Java这个名词似乎注定和开源紧密联系在一起了,在Java界,每天都有大量的开源技术出现,由于是开放源代码的,技术中存在的问题和不足很快就会被人发现,开源软件提供者会很快的修正或扩展这些技术,因此版本更新很快,几个星期或者几天就有一个新版本出来。

  当我们在技术线路中选择了Java,也就选择了你必须持续学习,经常关注最新的技术,了解它们,看是否适合你的需要,然后学习使用它们。

  你应该掌握的Java技术

  Java基础:

  ◆Java原理和使用,包括基本的语言、语法知识和API

  ◆JSP+Servlet,Java Web开发的基础

  服务器:

  ◆WebLogic的原理、使用和配置

  ◆Tomcat:轻量的 JavaWeb容器,和WebLogic功能类似,使用简单、方便、免费、开源,但不支持EJB

  ◆JBoss:类似于Tomcat,功能更强,支持EJB

  这三种应用服务器至少掌握其中的一种是很必要的。

  框架:

  ◆Struts、Spring、Hibernate

  ◆Tapestry:这是一个新的MVC框架,使用组件式开发,是显示层技术的发展趋势。

  ◆Flex和Laszlo:新的显示层技术,支持富客户端应用,是目前的较前沿的显示技术。

  ◆EJB :EJB的全称是Enterprise JavaBeans,是Java中的商业应用组件技术。

  Java Web开发周边技术:

  ◆HTML、Javascript、CSS、XML、XSLT,这些是开发中经常使用到的,应该熟练掌握。

  开发工具:

  ◆Dreamweaver、Eclipse或Jbuilder、PL/SQL

  数据库:

  ◆Oracle必须会用、 SQLServer掌握、MySQL可以在自己学习时使用。DB2那种东西就不要学了,国内太少使用了。

  软件工程:

  ◆可以理解UML设计和使用UML进行简单设计。

【Java三大框架技术起源】相关文章:

Java EE开发常用框架10-13

Java新手如何学习Spring框架09-01

sun认证java程序员须知Java日志框架11-12

Java日志系统框架的设计与实现09-23

Java核心技术介绍06-30

Java程序员集合框架面试题及答案09-16

JAVA认证开源技术:关于Java的对象equals方法05-14

JAVA和WAP移动学习技术11-10

Java技术的新方向10-18