前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >主流前端-后端-数据库总结-后端框架篇

主流前端-后端-数据库总结-后端框架篇

作者头像
全栈程序员站长
发布2022-08-31 10:25:17
1.1K0
发布2022-08-31 10:25:17
举报

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

一、传统框架介绍

1)Hibernate 是一种ORM框架,在Java对象与关系型数据库之间建立某种映射,以实现直接存取Java对象(POJO)。

2)ORM框架是一种不同与MVC的另一种思想框架,适用范围也与MVC截然不同。

3)需要创建一系列的持久化类,每个类的属性都可以简单的看做和一张数据库表的属性一一对应,当然也可以实现关系数据库的各种表件关联的对应。

4)当我们需要相关操作时,不用再关注数据库表。我们不用再去一行行的查询数据库,只需要持久化类就可以完成增删改查的功能。

5)使我们的软件开发真正面向对象,而不是面向混乱的代码。我的感受是,使用Hibernate比JDBC方式减少了80%的编程量。

1)Struts2以WebWork优秀的设计思想为核心,吸收了 Struts框架的部分优点,提供了一个更加整洁的MVC设计模式实现的Web 应用程序框架。

2)Struts2引入了几个新的框架特性:从逻辑中分离出横切关注点的拦截器、减少或者消除配置文件、贯穿整个框架的强大表达式语言、支持可变更和可重用的基于MVC模式的标签API,

3)Struts2充分利用了从其它MVC框架学到的经验和教训,使得 Struts2框架更加清晰灵活。

1)MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。

2)MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。

3)MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java对象)映射成数据库中的记录。

1)Spring的作用就是完全解耦类之间的依赖关系,一个类如果要依赖什么,那就是一个接口。

2)至于如何实现这个接口,这都不重要了。只要拿到一个实现了这个接口的类,就可以轻松的通过xml配置文件把实现类注射到调用接口的那个类里。

3)所有类之间的这种依赖关系就完全通过配置文件的方式替代了。所以Spring框架最核心的就是所谓的依赖注射和控制反转。

1)Spring MVC基于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面

2)是一个典型的教科书式的mvc构架,而不像struts等都是变种或者不是完全基于

mvc系统的框架。

联系和区别

Spring是IOC和AOP的容器框架,SpringMVC是基于Spring功能之上添加的Web框架,想用SpringMVC必须先依赖Spring。

1)Spring是一个管理bean的容器,也是一个包括很多开源项目的总称,spring mvc是其中一个开源项目。

2)SpringMVC是一个MVC模式的WEB开发框架。

3)Spring是一个通用解决方案, 最大的用处就是通过Ioc/AOP解耦, 降低软件复杂性, 所以Spring可以结合SpringMVC等很多其他解决方案一起使用, 不仅仅只适用于WEB开发。

一、正在兴起的框架

1)springboot 框架,被称作一栈式解决方案。

2)比较轻量,也是当前微服务下的趋势。

3)springboot本身就是构建与spring之上,各种思想和特性无需多说,去掉了spring繁琐的配置,简化了原有spring开发的流程,提供了各种实用的特性如metric,actuctor等等。

4)最重要的是springboot附带了整个springcloud生态。两个框架对你解决大,中,小项目都没任何问题

1)play可能更加偏向于scala点(使用Scala和Java开发,同时支持Java和Scala项目),本身轻量性能高,随着逐步的优化易用性以及扩展性都变得越来越好;

2)Play Framework是一个开源的Web框架,背后商业公司是Typesafe

3)Play2从诞生起就能很容易的支持RESTful风格的架构

1)Jersey RESTful 框架是开源的RESTful框架, 实现了JAX-RS (JSR 311 & JSR 339) 规范。它扩展了JAX-RS 参考实现, 提供了更多的特性和工具, 可以进一步地简化 RESTfulservice 和 client 开发。1)Jersey RESTful 框架是开源的RESTful框架, 实现了JAX-RS (JSR 311 & JSR 339) 规范。它扩展了JAX-RS 参考实现, 提供了更多的特性和工具, 可以进一步地简化 RESTful service 和 client 开发

2)尽管相对年轻,它已经是一个产品级的 RESTful service 和 client 框架

3)对于请求式服务,对于GET,DELETE请求,你甚至只需要给出一个URI即可完成操作。

1)JFinal 是基于Java 语言的极速 web 开发框架。

2)其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。

3)在拥有Java语言所有优势的同时再拥有ruby、python等动态语言的开发效率。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/143897.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月2,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档