首页 > 其他分享 >Spring 框架模块深度解析:核心容器、数据访问、Web 层与其他关键模块

Spring 框架模块深度解析:核心容器、数据访问、Web 层与其他关键模块

时间:2023-12-25 18:45:53浏览次数:198  
标签:Web 提供 应用程序 模块 Spring 详细信息

Spring 可能成为您的所有企业应用程序的一站式商店。但是,Spring 是模块化的,允许您挑选适用于您的模块,而无需引入其他模块。下面的部分提供了 Spring Framework 中所有可用模块的详细信息。Spring Framework 提供了大约20个模块,可以根据应用程序要求使用。

核心容器

核心容器由 CoreBeansContextExpression Language 模块组成,其详细信息如下:

  • Core 模块提供了框架的基本部分,包括 IoC 和依赖注入功能。
  • Bean 模块提供了 BeanFactory,它是工厂模式的复杂实现。
  • Context 模块建立在 CoreBeans 模块提供的坚实基础之上,它是访问定义和配置的任何对象的媒介。ApplicationContext 接口是 Context 模块的焦点。
  • SpEL 模块为在运行时查询和操作对象图提供了强大的表达式语言。

数据访问/集成

数据访问/集成层由 JDBCORMOXMJMSTransaction 模块组成,其详细信息如下:

  • JDBC 模块提供了一个 JDBC 抽象层,消除了繁琐的 JDBC 相关编码。
  • ORM 模块为流行的对象关系映射API(包括 JPAJDOHibernateiBatis)提供了集成层。
  • OXM 模块提供了一个支持 JAXBCastorXMLBeansJiBXXStreamObject/XML 映射实现的抽象层。
  • Java消息服务 JMS 模块包含用于生成和消费消息的特性。
  • Transaction 模块支持实现特殊接口的类和所有 POJO 的编程和声明性事务管理。

Web

Web 层由 WebWeb-MVCWeb-SocketWeb-Portlet 模块组成,其详细信息如下:

  • Web 模块提供基本的面向Web的集成功能,如多部分文件上传功能以及使用servlet监听器和面向Web的应用程序上下文初始化 IoC 容器。
  • Web-MVC 模块包含Spring用于Web应用程序的Model-View-Controller(MVC)实现。
  • Web-Socket 模块提供了在Web应用程序中客户端和服务器之间进行基于WebSocket的双向通信的支持。
  • Web-Portlet 模块提供了用于在 Portlet 环境中使用的 MVC 实现,并反映了 Web-Servlet 模块的功能。

其他

还有其他一些重要的模块,如 AOPAspectsInstrumentationWebTest 模块,其详细信息如下:

  • AOP 模块提供了一种面向方面的编程实现,允许您定义方法拦截器和切入点,以清晰地解耦实现应该分离的功能的代码。
  • Aspects 模块提供了与 AspectJ 的集成,这又是一个强大而成熟的 AOP 框架。
  • Instrumentation 模块提供了类仪器支持和类装入器实现,可用于某些应用程序服务器。
  • Messaging 模块提供了支持 STOMP 作为用于应用程序的 WebSocket 子协议的功能。它还支持一种注释编程模型,用于从 WebSocket 客户端路由和处理 STOMP 消息。
  • Test 模块支持使用 JUnitTestNG 框架测试 Spring 组件。

最后

为了方便其他设备和平台的小伙伴观看往期文章:

微信公众号搜索:Let us Coding,关注后即可获取最新文章推送

看完如果觉得有帮助,欢迎 点赞、收藏、关注

标签:Web,提供,应用程序,模块,Spring,详细信息
From: https://www.cnblogs.com/xiaowange/p/17926750.html

相关文章

  • 深入了解 Spring Boot 核心特性、注解和 Bean 作用域
    SpringBoot是什么?SpringBoot是基于SpringFramework构建应用程序的框架,SpringFramework是一个广泛使用的用于构建基于Java的企业应用程序的开源框架。SpringBoot旨在使创建独立的、生产级别的Spring应用程序变得容易,您可以"只是运行"这些应用程序。术语SpringCor......
  • 启动springboot的测试类,报红:Java HotSpot(TM) 64-Bit Server VM warning: Sharing is
    启动springboot的测试类时,报红:JavaHotSpot(TM)64-BitServerVMwarning:Sharingisonlysupportedforbootloaderclassesbecausebootstrapclasspathhasbeenappended原因:JavaHotSpot(TM)64位服务器虚拟机已附加引导程序类路径解决办法:IDEA—》Settings—》Build......
  • spring boot启动速度提升技巧
    1、启用SpringBoot的快速启动模式在SpringBoot2.3及更高版本中,引入了快速启动模式,它可以明显减少应用程序的启动时间。可以在application.properties文件中添加以下配置来启用快速启动模式:spring.main.lazy-initialization=true这样可以延迟初始化非必需的bean,加快启动速度......
  • postman web版使用
    前言:下游需要接口是post,无法直接用get在浏览器中预览,所以选择在postman中预览调试。 一、找到下载客户端或web版入口首先访问:https://www.postman.com/downloads/ 二、访问web版(登录+安装插件)https://identity.getpostman.com/signup?continue=https%3A%2F%2Fgo.postman.......
  • 深度剖析 Spring 框架在 Java 应用开发中的优势与应用
    Spring是用于企业Java应用程序开发的最流行的应用程序开发框架。全球数百万开发人员使用SpringFramework创建高性能、易于测试和可重用的代码。SpringFramework是一个开源的Java平台。它最初由RodJohnson编写,并于2003年6月在Apache2.0许可下首次发布。为什......
  • SpringBoot多级缓存
    SpringBoot实现项目更删改查后,会有新的问题需要解决,就是并发大的问题,一般而言,解决查询并发大的问题,常见的手段是为查询接口增加缓存,从而可以减轻持久层的压力。按照我们以往的经验,在查询接口中增加Redis缓存即可,将查询的结果数据存储到Redis中,执行查询时首先从Redis中命中,如果命中......
  • 使用WebStack和Laravel打造个人网址导航安装过程问题和详解记录
    前言最近测试了国内推出的多个AI大模型,为了方便记录同时方便推荐给朋友想做个AI工具网址导航。网上开源的项目有很多,最后选中了WebStack和Laravel,但是不知道是否作者长时间不更新了遇到不少问题,解决完记录一下。准备工作,购买云服务器,安装宝塔,解析域名解析等等正文1.登录宝塔创建站......
  • 看看 Asp.net core Webapi 项目如何优雅地使用分布式缓存
    前言缓存是提升程序性能必不可少的方法,Asp.netcore支持多级缓存配置,主要有客户端缓存、服务器端缓存,内存缓存和分布式缓存等。其中客户端缓和服务器端缓存在使用上都有比较大的限制,而内存缓和分布式缓存则比较灵活。分布式缓存是一种用于存储和管理数据的技术,它将数据存储在......
  • Python——第五章:csv模块
    未来我们会使用爬虫获取到一些json文件,例如去英雄联盟官方爬取英雄的数据库查看代码{"hero":[{"heroId":"1","name":"\u9ed1\u6697\u4e4b\u5973","alias":"Annie","title":"\u5b89\u59ae","roles"......
  • unigui显示websocket服务端向客户端发送信息【15】
    用WebSocket从服务端直接发送消息给all客户端。1、在ServerModule放TUniThreadTimer 2、timerevent:procedureTUniServerModule.UniThreadTimer1Timer(Sender:TObject);beginBroadcastMessage('update',[......