spring框架介绍_Spring框架介绍

spring框架介绍

这是Spring框架和Spring核心概念的简介。 在本教程中,我们将介绍Spring Framework的主要优点和功能。 在随后的教程中,我们将学习有关SpringSpring Boot的更多信息。

总览

我们知道, Spring框架Java开发人员中最受欢迎的应用程序框架。 Spring以为Java 几乎可以完成的所有工作提供抽象和基础结构框架而闻名。 在较高的层次上,如果您想使用Java来访问数据库或NoSql数据存储,请创建Web应用程序,并与RESTful服务(例如,等等)进行交互。Spring已经为它提供了框架或抽象。

1.1Spring项目

Spring有很多模块和项目。 学习Spring框架甚至不需要很多。 以下是一些使用Spring编写企业应用程序时最有可能使用的主要Spring项目。

  • Spring CoreSpring的基础。 它包括依赖注入(DI)和控制反转(IOC)
  • Spring MVC :JSP / Servlet的抽象,用于构建基于Web的应用程序。
  • Spring AOP :用于编写方面和面向方面的程序的快速组件。
  • Spring Data :一组框架,提供跨不同类型的数据存储区访问数据的统一方法。
  • Spring REST :Spring组件,用于编写RESTful Web服务。
  • Spring Data JPASpring数据下的一个框架,用于增强Java Persistence API的实现。
  • Spring Security :用于基于Web的应用程序的身份验证和授权框架。
  • Spring Integration :一种流数据处理框架,遵循Pipes and Channels Integration Pattern。

1.2如何学习Spring?

实际上,Spring框架很大,无法在一两个教程中学习。 学习Spring的最好方法是从Spring-Core开始 ,了解依赖注入控制反转 ,了解什么是Bean Factory和Bean Lifecycle,并尝试大量的Hello World程序。

理解和尝试以上内容非常重要,因为这些几乎是Spring Framework中所有内容的基础。 一旦熟悉了Spring的基本组件和原理,其他所有模块都非常容易选择。

2 Spring的特点

尽管Spring已经证明了其在开发行业级软件的许多方面的有用性,但我们将介绍Spring Framework的一些关键优点。

2.1简单性

在Spring之前,企业应用程序曾经基于Enterprise Java Bean (EJB)。 EJB以其复杂性,庞大性和较长的开发时间而闻名。 在契约中,Spring Frameworks仅基于普通旧Java对象 (POJO)和普通Java类。

2.2模块化

尽管Spring有很多工具,但您并不需要全部使用。 Spring Developers巧妙地将其模块化。 简而言之,这意味着Spring中的不同工具或组件将作为独立的Java归档文件提供。 如果您想使用Spring APO,并且只需要spring AOP存档(以及几个核心库)。

2.3容器

任何Spring应用程序都有一个内置容器,该容器负责在应用程序中提供上下文。 容器在Springs Context中创建和管理类的实例。 容器还负责对象之间的依赖关系,称为依赖关系注入。 具有基于容器和上下文的机制,Spring应用程序通常非常容易进行单元测试和集成测试。 您只需要提供一个“测试”上下文,整个应用程序将很容易进行测试。

2.4豆工厂

Spring Bean Factory由Spring Container支持。 声明为Spring Bean的类由Spring Bean Factory实例化。 我们不再需要使用new关键字。 Bean工厂可以延迟(或延迟)实例化Bean(基于指定的策略)。 这样做时,如果Bean依赖于其他Bean,则它们也会被实例化并注入。 这种机制称为依赖注入。

2.5流行

如前所述,Spring是最受欢迎的Java应用程序框架。 使用流行的框架有某些好处。 流行的框架始终保持良好的状态并得到良好的支持。 Internet上提供了大量资源,学习资料和黑客技巧。 在Spring的组织或更广泛的社区中,使用开发人员可以说通用的语言和术语。

3小结

在这个简短的教程中,我们介绍了Spring Framework 。 我们了解了Spring的主要模块以及Spring功能。 我们对弹簧的模块化,流行性,弹簧容器和弹簧豆工厂进行了简要概述。 在即将到来的教程中,我们将了解有关Spring Framework的更多信息。

翻译自: https://www.javacodegeeks.com/2019/02/introduction-spring-framework.html

spring框架介绍

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/332684.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java注解(Annotation)的学习

文章目录注解定义作用分类API 文档注解JDK 预定义的注解自定义注解注解的格式注解的本质注解的属性属性的返回值类型属性的特点属性的赋值元注解TargetRetentionDocumentedInherited解析注解总结注解定义 注解( Annotation),也叫元数据。一种代码级别的说明。它是 …

oracle数据库硬恢复,Oracle数据库的可恢复性设置

整理自《Oracle 11g OCP/OCA 认证指南》001为了保证数据库的最大可恢复性,必须多路复用控制文件;必须多路复用联机重做日志;必须以归档日志模式运行数据库,并多路复用归档日志文件;最后必须作常规备份。002 保护控制文…

rest api如何创建_创建一个安全的Spring REST API

rest api如何创建“我喜欢编写身份验证和授权代码。” 〜从来没有Java开发人员。 厌倦了一次又一次地建立相同的登录屏幕? 尝试使用Okta API进行托管身份验证,授权和多因素身份验证。 “如果有用,它将被修改。” 那些智慧的话来自我的QA老师…

IntelliJ IDEA 的 Build Project/Build Module/构建项目/构建模块/构建工程

文章目录Build ModuleRebuild ModuleBuild Module,构建模块。所谓“构建”,就是“构建”包及字节码文件,其实就是编译源码文件的动作了。所以 Build Module,就是把 src 目录的源代码文件以及 resources 下的资源文件,构…

oracle 修改nls_characterset,ORACLE NLS_CHARACTERSET字符集的更改

ORACLE NLS_CHARACTERSET字符集的更改      数据库创建以后,如果需要修改字符集,通常需要重建数据库,通过导入导出的方式来转换。      我们也可以通过以下方式更改      ALTER DATABASE CHARACTER SET      注意&#xff1a…

commons cli_从Commons CLI迁移到picocli

commons cli最初于2002年发布的Apache Commons CLI可能是使用最广泛的Java命令行解析器,但是它的API显示了它的年龄。 寻找具有最少样板代码的现代方法的应用可能对picocli感兴趣。 为什么要花麻烦的钱进行迁移,以及如何将基于Commons CLI的应用程序迁移…

乘方(幂)的运算法则/规则

文章目录乘方的定义运算法则正分数指数幂法则负分数指数幂法则同底数幂法则负整数指数幂法则乘方的定义 求相同因数的积叫做乘方。乘方运算的结果叫幂。 当 ana^nan 看作 a 的 n 次乘方的结果时,也可读作“a 的 n 次幂”或“ a 的 n 次方”。其中,a 叫…

php响应式布局,响应式布局之弹性布局的介绍

响应式布局的实现是前端工程中一个非常大的跨越,它非常灵活的可塑造性使得同一个网站能在不同的终端设备上展现出不同的活力。就今天这个机会,我想与大家分享并探讨一些常用来实现响应式布局方法中的弹性布局。弹性布局是一种十分方便的,只需…

qt弹簧教程_弹簧启动执行器教程

qt弹簧教程朋友您好,在本教程中,我们将学习弹簧执行器及其所有帮助。 1.什么是弹簧执行器? 2.如何在Maven项目或Gradle项目中添加弹簧执行器? 3.创建一个具有Spring Actuator依赖项的Spring Boot项目。 4.使用弹簧执行器端点监…

驾驶证遗失如何补发

第六十三条机动车驾驶证遗失的,机动车驾驶人应当向机动车驾驶证核发地或者核发地以外的车辆管理所申请补发。申请时应当填写申请表,并提交以下证明、凭证: (一)机动车驾驶人的身份证明; (二&…

两列模糊对比 oracle,excel 模糊比对两列数据并将比对结果显示出来 | excel表格两列数据模糊对比...

excel2016如何将两列完全不一样的数据进行模糊对比?B2单元格输入公式IF(ISNUMBER(FIND(LEFT(A2,3),PHONETIC(G$2:G$8))),"","非类")下拉。 选中A、B列排可出非类似值。对G列的处理也是相同办法,修改一下公式中的单元格或区域引用即可…

JMetro版本5.2已发布

再次问好 JMetro的新更新刚刚发布。 添加了两种新的控件样式:标题窗格和手风琴。 此外,还对现有样式和错误修复进行了调整。 最终,JMetro现在也可以通过Maven Central获得。 在这篇文章中,我将详细介绍刚刚发布的JMetro 5.2版。…

IntelliJ IDEA for Mac 如何创建Java Web项目_创建Java EE项目_创建项目_新建项目

Java EE 项目创建好后如下图所示: 如果你的项目含有多个模块,那么上图的项目结构布局是不合理的,你必须将默认的模块删除掉(默认模块的 .iml 文件也要删除)。 选择模块,点按鼠标右键,选择【Rem…

注解代替枚举_精选枚举代替开关

注解代替枚举问题及其解决方案 开关/案例是用大多数命令式编程语言实现的通用控制结构。 开关比一系列的if / else更具可读性。 这是一个简单的示例: // Switch with int literal switch (c) {case 1: one(); break;case 2: two(); break;case 3: three(); break;…

oracle表是动态表怎么算排名,Oracle学习动态性能表

按照OracleDocument中的描述,v$sysstat存储自数据库实例运行那刻起就开始累计全实例(instance-wide)的资源使用情况。 类似于v$sOracle 学习动态性能表 v$locked_object本视图列出系统上的每个事务处理所获得的所有锁。V$LOCKED_OBJECT中的列说明:XIDUSN…

IntelliJ IDEA for Mac 中 Java Web Project 默认的工件(Artifacts)输出目录

你创建 Java Web 项目/模块时,IDEA 会自动创建 Web 模块的工件列表,而工件的默认输出目录如下: war 工件的默认输出目录: /Users/liaowenxiong/Documents/IdeaProjects/java-exercises/模块名称/target exploded 工件的默认输出…

oracle导数的数据乱码,Oracle10g导数据时中文乱码相关处理

1.Oracle导入数据库出现数据库数据中文乱码问题,最后查得是由于数据库安装时,选择编码为默认编码问题分析:使用imp导入数据时,屏幕输出过以下提提示信息:import done in US7ASCII character set and AL16UTF16 NCHAR c…

jdk12 jdk1.8_JDK 12的Files.mismatch方法

jdk12 jdk1.8JDK 12向Files类引入了一种新方法。 方法Files.mismatch(Path,Path)已通过JDK-8202302引入JDK 12,并在JDK 12 Early Access Build 20 (支持新{systemProperty} Javadoc标记的相同早期访问版本)中可用 。 JDK-8202302 [“用于比较…

tomcat如何查找请求资源的?

用户的请求过来,comcat 会根据虚拟目录先到 webapps 目录查找项目,如果找到了则进入到项目下的 WEB-INF 目录下查找 web.xml 文件,查找到则解析该文件,根据资源路径查找请求资源,如果找到了资源则正常实例化和调用有关…

java使用迭代器删除元素_使用Java从地图中删除元素

java使用迭代器删除元素关于从Java中的Map删除元素的非常简短的文章。 我们将专注于删除多个元素&#xff0c;而忽略了您可以使用Map.remove删除单个元素的Map.remove 。 以下Map将用于此帖子&#xff1a; Map<Integer, String> map new HashMap<>(); map.put(1…