简单介绍几种Java后台开发常用框架组合

article/2025/10/24 6:43:47

01 前言

Java框架一直以来都是面试必备的知识点,而掌握Java框架,不管在成熟的大公司,快速发展的公司,还是创业阶段的公司,都能对当前正在开发中的系统有整体的认知,从而更好的熟悉和学习技术,这篇文章胖达就打算给大家介绍几款现阶段流行的框架组合,不管是在传统企业开发还是在互联网开发领域,这几种框架应该都是比较常用的。

02 三层架构

说到框架首先需要明确的是,在Web开发领域一般会将架构分为三个部分:表示层、持久层、业务层,之所以将整体架构分为三个层面,主要目的是让整个系统更具有条理性,通过分配任务的方式进行系统的解耦,让每一层只关心自己内部的事情,只知道下层的存在,不知道上层的存在。达到局部改变而不影响全局的目的,就比如餐馆中有服务员、厨师、收银员一样,各司其职,让系统有条不紊的运行下去。三层架构如下图所示(图中的数据访问层就是文中的持久层):
在这里插入图片描述

下面就简单介绍一下三层架构:

1.表示层

表示层其实就是用户能够看到的界面显示层,但是它的职责并不仅仅是显示界面那么简单,而是需要完成三件事情:

从界面中取得数据跟后台服务器交互

跟后台交互后进行数据绑定

将绑定的数据呈现在页面中

一般来说,这一层的设计会采用MVC的模式,M称为模型也就是实体类,用于数据的封装和数据的传输;V为视图也就是页面组件,用于数据的展示;C为控制也就是流程事件,用于流程的控制。

2.业务层

这一层的功能主要是实现一些具体问题的操作,因为它是表示层和持久层之间沟通的桥梁,主要负责数据的传递和处理。

在日常的代码开发中一般对应着逻辑Service层,对于一些复杂的逻辑判断和涉及到数据库的数据验证都需要在这一层做出处理,同时根据传入的值返回用户想得到的值,或者处理相关的操作。

3.持久层

也称为数据访问层,顾名思义,这一层其实就是跟数据库直接打交道的层面,通过连接数据库,根据传入的值对数据库进行增删改查。

03 框架组合

针对上面架构的每一个层面,目前Web开发领域内都有一些优秀的框架,例如表示层有Structs2、SpringMVC等,持久层有Hibernate、Mybatis等,还有业务层有Spring框架,但是严格来说,Spring是一个整合框架,业务层面在每一个公司每一个项目都会根据自己的需求做不同的处理。在项目的开发中,有这样几种使用非常广泛的框架组合:

1.SSH框架组合

SSH框架组合主要包括Struts 、Spring、Hibernate三大框架,用Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持,同时用Spring来管理Struts和Hibernate,框架具体解释如下:

  • Struts框架

Struts框架是一个基于MVC设计模式的Web应用框架,它本质上相当于一个Servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。

它包含Struts1和Struts2两个版本,两者的相差其实还是挺大的,Struts2并不是对Struts1的更新,而是充分发挥了Struts1和WebWork这两种技术的优势,它抛弃了原来Struts1的缺点,使得Web开发变得更加容易。

  • Spring框架

学习基础的时候大家应该都知道,最传统的Java Web应用程序是采用JSP、Servlet、Javabean来实现的,这种模式实现了最基本的MVC分层,使的程序结构有负责前台展示的 JSP、负责流程逻辑控制的Servlet以及负责数据封装的Javabean,但是这种结构存在问题如JSP页面中需要使用符号嵌入很多的 Java代码,造成页面结构混乱,Servlet和Javabean负责了大量的跳转和运算工作,耦合紧密,程序复用度低等。

Spring框架的出现就解决了这个问题,通过AOP和IOC两大特性的加持,把所有类之间的这种依赖关系完全通过配置文件的方式替代了,同时将实体bean很好的管理到了容器中,使得耦合性大大降低,复用性大大提高。

  • Hibernate框架

传统的持久层框架都是采用Java JDBC的连接方式进行数据库的访问和操作,需要人为的编写大量的SQL或者代码,同时还需要将获得的数据进行转换或封装后往外传,其实对于大项目而言这是一个非常烦琐的过程。

Hibernate框架是一个半自动化的持久层框架,可以减少大量的SQL、代码编写工作,省掉很大部分的工作量,在这个框架中,当我们需要相关操作时,不用再关注数据库表也不用再去一行行的查询数据库,只需要通过持久化一个类的方式就可以完成增删改查的功能,因为框架的内部已经实现了很多对数据库的操作方法,我们只需要调用即可,做的最多的工作都在持久化类上。

2.SSM框架组合

另外一个比较流行的框架组合是SSM框架,主要包括SpringMVC、Spring、Mybatis三大框架,用SpringMVC作为整体基础框架,分离MVC层级,Mybatis作为跟数据库交互的持久层框架,负责数据的访问和操作,而Spring依然作为其余两大框架的桥梁,进行数据的传递和事务等逻辑处理,下面Spring不再赘述,关于SpringMVC、Mybatis详情如下所述:

  • SpringMVC框架

SpringMVC和Struts2都属于表现层的框架,但它是Spring框架的一部分,这让SpringMVC有了先天的优势,它延续了Spring在配置上简单省心的特点,而且因为与Spring无缝对接,这让安全性有了很大的保障。同时SpringMVC解决了一个很大的问题就是如何降低处理业务数据的对象和显示业务数据的视图耦合性,这个问题的解决让开发变得更加的简单。

  • Mybatis框架

MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射, 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集的繁杂。它可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java对象映射成数据库中的记录。

Hibernate固然优秀,但是跟Mybatis相比,它的封装太过于死板,对一些复杂的sql,开发人员更喜欢手动的编写一些代码,而不是通过特定的HQL语言去编写,这样会间接的增加工作量,而且Mybatis更好上手,学习成本比Hibernate要低很多,但是有一点不得不承认,Hibernate的开源社区人数要碾压Mybatis的,毕竟国外很多大佬还是喜欢用Hibernate的,后期可以详细探索探索。

04 总结

无论如何,学好框架都对我们有很大的帮助,这篇文章只是简单介绍了一下框架的三层架构以及两个流行的框架组合,后面的文章中我会分别对一些框架进行详细的介绍,如果有机会,也会将框架整合的过程记录下来跟大家分享,希望大家都能在我的文章中有所收获,也希望自己能够坚持技术分享,跟大家一起成长。


http://chatgpt.dhexx.cn/article/owoVpwVK.shtml

相关文章

用IDEA进行Java后台开发(一)

想尝试着进行java后台开发,发现能找到的完整工程教程很多都是用eclipse开发的,于是照着搭了一套开发环境,也简单的写了一个测试代码,由于好几年没有使用eclipse了,快捷键实在用的费劲,遂找到了IDEA这个开发…

Java后台学习路线

2021.01.31.更新 2018.11.10更新,请看文章末尾惊喜 或者点击 https://blog.csdn.net/qq_40374604/article/details/83932163 本文摘自---https://blog.csdn.net/u014624241/article/details/52946378---感谢作者的分享 ①一段摘自知乎的文档 Java就业方向目前主…

Java后台开发一:环境搭建

很久之前就想做Java后台开发了,苦于一直没有找到合适的后台开发教程,某日发现一篇很不错的Java后台开发配置文章,记录如下: jdkeclipsesvnmavenmysqltomcat7.0sublime安装包和jar插件 配置管理工具-SVN http://download.csdn.net/…

Java后台开发知识一览

Java后台开发知识一览 1、后端 WEB服务器:Weblogic、Tomcat、WebSphere、JBoss、Jetty 核心框架:Spring Framework 分布式服务框架 Dubbo(感谢浅浅浅丿忧伤指正) 安全框架:Apache Shiro 视图框架:Spr…

Java后台开发常见官方网站汇总

Java后台开发常见官方网站汇总 写在前面开发工具篇JDKJavaSE开发文档Oracle数据库(收费)MySQL数据库(免费)RedisMongoDBJDBCDruid连接池ElasticsearchKibana——Elasticsearch的客户端RabbitMQMavenGitSpring Framework&#xff0…

【Java后台开发规范】--- 日志的输出

文章目录 前言其他类型的规范 日志输出过多日志重复打印批量打印日志中带方法讲故事日志跟踪其他基本要求 前言 做Java开发的,大多数可能都有看过阿里的Java后台开发手册,里面有关于Java后台开发规范的一些内容,基本覆盖了一些通用、普适的规…

用IDEA进行Java后台开发(二)

这篇博客接上一篇,用IDEA进行Java后台开发(一) 上一篇我们已经将工程创建完成了,下面我们将创建一个Servlet,然后本地启动tomcat后调用接口,返回helloWorld,过程如下: 1.在src目录…

Java后台开发入门

转载自: 梦回河口:http://blog.csdn.net/zxc514257857/article/details/71152003 1,什么是Web应用程序 Web应用程序是可以通过Web进行访问的应用程序,最大的好处是访问非常容易。比如淘宝、新浪、网易等门户网站   软件开发领域的三大方向…

Java后台开发:环境搭建

jdkeclipsesvnmavenmysqltomcat7.0sublime安装包和jar插件 配置管理工具-SVN http://download.csdn.net/detail/u013142781/9355417 tomcatPluginV331 http://download.csdn.net/detail/u013142781/9355409 Sublime_Text_2.0.2 http://download.csdn.net/detail/u013142781/…

【Java后台】从零开始的Java后台开发(三)

编写基础的Servlet应用程序 1 Servlet 使用Servlet需要在pom.xml中引入以下依赖&#xff1a; <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api --><dependency><groupId>javax.servlet</groupId><artifactId>javax.…

【Java后台】从零开始的Java后台开发(一)

1. 工具 tomcat 9.0.65ideal 1. Ideal新建项目 File->New->Project 主要修改如下所示几个地方&#xff0c;之后点击create按钮 创建成功后一开始的目录如下所示&#xff0c; 但先不要动项目&#xff0c;它还在后台下载一些东西&#xff0c;下载完成后&#xff0…

数据迁移,数据库迁移工具,数据库实时同步方案

SyncNavigator是一款功能强大的数据库同步软件&#xff0c;适用于SQL SERVER, MySQL&#xff0c;具有自动/定时同步数据、无人值守、故障自动恢复、同构/异构数据库同步、断点续传和增量同步等功能&#xff0c;支持Windows xp以上所有操作系统&#xff0c;适用于大容量数据库快…

数据迁移常用方法

SQL SERVER几种数据迁移/导出导入的实践 SQLServer提供了多种数据导出导入的工具和方法&#xff0c;在此&#xff0c;分享我实践的经验&#xff08;只涉及数据库与Excel、数据库与文本文件、数据库与数据库之间的导出导入&#xff09;。 &#xff08;一&#xff09;数据库与E…

电脑数据迁移高招,怎么把旧电脑的数据迁移到新电脑

小编的朋友买了台新的笔记本电脑&#xff0c;方便出差工作&#xff0c;需要将公司电脑上的资料也导一份到新电脑里&#xff0c;怎么把旧电脑的数据迁移到新电脑。朋友一点也不想花时间重新下载安装软件&#xff0c;尤其是那些工作需要的应用。下面是她的一些要求&#xff1a; …

数据迁移ETL工具分享

1.概述 ETL(是Extract-Transform-Load的缩写&#xff0c;即数据抽取、转换、装载的过程)&#xff0c;对于企业应用来说&#xff0c;我们经常会遇到各种数据的处理、转换、迁移的场景。 我汇总了一些目前市面上比较常用的ETL数据迁移工具&#xff0c;希望对你会有所帮助。 2. …

flyway(数据库迁移工具)

系列文章目录 主要是用来记录每次迭代的版本sql的表结构的变动.在部署某个版本时,能够快找到这个版本对应的sql,避免出现表结构的错误 Flyway是独立于数据库的应用、管理并跟踪数据库变更的数据库版本管理工具。用通俗的话讲&#xff0c;Flyway可以像Git管理不同人的代码那样…

在线数据迁移

在线数据迁移&#xff0c;是指将正在提供线上服务的数据&#xff0c;从一个地方迁移到另一个地方&#xff0c;整个迁移过程中要求不停机&#xff0c;服务不受影响。根据数据所处层次&#xff0c;可以分为 cache 迁移和存储迁移&#xff1b;根据数据迁移前后的变化&#xff0c;又…

数据迁移软件|如何将旧电脑的数据传输到新电脑?

小编最近换了台新电脑&#xff0c;需要将旧电脑的文件都转移过去&#xff0c;但是旧电脑上大文件不少&#xff0c;不管是上传到网盘再下载&#xff0c;还是通过QQ或微信在线传输&#xff0c;速度都很慢&#xff0c;且步骤太复杂。相信很多小伙伴也和小编一样遇到过这个问题&…

2023最值得推荐的电脑数据迁移方法,一键转移文件和程序

没有什么比拥有一台新电脑更令人兴奋的了。这意味着您可以使用大量新功能、更强大的功能、更好的显示器和更多存储空间。但是&#xff0c;如果您需要将文件、数据从旧计算机传输到新计算机&#xff0c;或者再新电脑上安装新的程序&#xff0c;那么这种兴奋可能会有所减弱。因为…

各种数据库之间数据迁移工具

前阶段需要把sqlserver上的数据迁移到mysql上&#xff0c;找到了非常好用的工具DB2DB。 下载地址&#xff1a;http://www.szmesoft.com/DB2DB DB2DB 是目前经过测试速度最快、最稳定实现多种数据库之间进行数据转换的工具。支持 SQL Server、MySQL、SQLite、Access 等多种数据…