虽然Java一直被唱衰,传言即将被Python代替,但是不可否认的是,传言只能是传言,直到现在Java软件开发也坚持霸主地位不可动摇,毫无疑问,Java依旧是最热门的编程语言之一。作为一名优秀的Java开发程序猿,以下Java开发中主流的框架和正在兴起的框架你都会哪些快来看看吧。
Spring MVC框架
中国有句俗话“姜还是老的辣”,所以Spring MVC虽然发布已经有十多年的历史,但是依旧老当益壮,以绝对的优势处于领先者的地位。
Spring MVC属于Spring frameWork的后续产品,已经融合在Spring Web Flow里面,Spring框架提供了构建Web应用程序的全功能MVC模块,使用Spring可插入MVC架构,所以在使用Spring进行Web开发时,可以选择使用Spring的Spring MVC框架或集成其他MVC开发框架,比如Struts1,Struts2等。
优点和缺点
Spring以绝对的优势登顶不是没有理由的,之所以能够成为最知名的Java框架主要是
1、使用POJO简化测试数据的注入
2、增强的模块化,让代码拥有更好的可读性
3、不同模块之间解耦合
4、灵活应用依赖注入(DI)
虽然SpringMVC网上的信息比较多,但是版本不同也会有差异。总体来说SpringMVC是工程师最喜爱的框架之一。
Struts2框架
Struts2以WebWork优秀的设计思想为核心,吸收了 Struts框架的部分优点,提供了一个更加整洁的MVC设计模式实现的Web 应用程序框架。
同时 Struts2引入了几个新的框架特性:从逻辑中分离出横切关注点的拦截器、减少或者消除配置文件、贯穿整个框架的强大表达式语言、支持可变更和可重用的基于MVC模式的标签API, Struts2充分利用了从其它MVC框架学到的经验和教训,使得 Struts2框架更加清晰灵活。
由于Struts2实现了Action类(普通POJO对象),所以测试编写代码所需的工作量较少。使用框架API,耦合变得更容易,有助于调整拦截器。
优点和缺点
Struts2最大的特点是不必重写或实现Action类,同时IT工程师为多个操作创建重复设置代码也不再是一个问题,因为拦截器会处理它,Struts最大的缺点就是不够灵活。
Hibernate框架
Hibernate 是一种ORM框架,在Java对象与关系型数据库之间建立某种映射,以实现直接存取Java对象(POJO)。ORM框架是一种不同与MVC的另一种思想框架,适用范围也与MVC截然不同。
使用JDBC连接来读写数据库,我们最常见的就是打开数据库连接、使用复杂的SQL语句进行读写、关闭连接,获得的数据又需要转换或封装后往外传,这是一个非常烦琐的过程。 这时出现了Hibernate框架,它需要你创建一系列的持久化类,每个类的属性都可以简单的看做和一张数据库表的属性一一对应,当然也可以实现关系数据库的各种表件关联的对应。当我们需要相关操作是,不用再关注数据库表。我们不用再去一行行的查询数据库,只需要持久化类就可以完成增删改查的功能。使我们的软件开发真正面向对象,而不是面向混乱的代码。
优点
Hibernate只要对原有代码做一些微小的改动就可以帮助你和任何数据库进行通信,它弥补了对象和关系之间的差距。除了这个优势,它还有:
1、不管是Oracle,还是Db2亦或是MySQL,Hibernate是独立于DB存在的。
2、缓存机制对类似查询进行优化。
3、支持N+1或懒加载。
缺点
尽管Hibernate的优势很多,但是它不允许多个插入,不支持JDBC的一些查询,不适用于表比较少的小规模项目。
Mybatis框架
MyBatis原本是apache的一个开源项目iBatis,2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。2013年11月迁移到Github
iBATIS一词来源于“internet”和“abatis”的组合,是一个基于Java的持久层框架。iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAOs)。
JSF框架
JSF它可以说是所有 Java 框架中的与 Java 关系最近的,因为它和Java 都是 Oracle 的嫡系部队。
JSF 也许并算不上最好的 Java 框架,但是由于 Oracle 的加持,JSF 的文档是最全也最容易找到的。此外,由于 JSF 已通过 JCP 格式化为 JavaEE 的一部分,所以你只要安装了 J2EE,就可以无障碍使用 JSF 了。
复杂的功能也能用JSF 提供的大量工具和库来实现。借助 JSP(Java Server Pages),JSF 还可以支持不同的 Facelets 和 XUL 技术。
优点和缺点
1、由于 JSF 集成在 JavaEE 中,对于使用 IDE 的开发人员来说非常方便。
2、入门门槛比较高,如果没有 Java Web 的开发经历很难完整理解 JSF。
GWT框架
GWT(Google Web Toolki) 是一个前端使用 Javascript,后端使用 Java 的 AJAX 框架,以 Apache 许可证2.0版本开放源码。
GWT 通过编译器将 Java 代码编译成Javascript,可以让开发人员只使用 Java 就可以快速开发维护复杂但高性能的 Javascript ,借此减轻开发人员负担。
除了一些本地库之外,都可以用集成的 GWT Ant 将 Java 源码构建成 Javascript。GWT已经实现了大量代码跨平台复用,包括跨浏览器移植性、国际化、UI抽象化、书签、历史管理、远程程序调用和异步的代码。
优点
1、入门容易
2、特别适合应用在想要通过增加客户端负载从而减少服务器端负载进而提升响应速度的web应用程序
3、借助各种各样的Javascript库,开发人员可以充分利用GWT的能力
4、内置IDE能够直接重构Java密文/代码;
5、由Google负责开发,前景光明。
缺点
1、GWT是一个快速迭代的项目,版本太多,可能没法知道所有接口和方法
2、编译器执行效率比较慢;
3、定义结构的时候必须使用专用的方法来执行。
SpringBoot
SpringBoot 框架,被称作一栈式解决方案。比较轻量,也是当前微服务下的趋势;SpringBoot本身就是构建与Spring之上,各种思想和特性无需多说,去掉了Spring繁琐的配置,简化了原有Spring开发的流程,提供了各种实用的特性如metric,actuctor等等;
最重要的是SpringBoot附带了整个SpringCloud生态。两个框架对你解决大、中,小项目都没任何问题
以上就是北大青鸟长沙麓谷校区Java培训机构小编介绍的“Java中的web前端开发框架都有哪些作用”的内容,希望对大家有帮助,如有疑问,请在线咨询,有专业老师随时为你服务。
相关内容
五大 JAVA Web 框架的优缺点对比
Java学习分享,主流的Java开发框架
Java程序员必备的15个框架
怎样学习Java框架,Java架构总结