当前位置:首页>正文

Spring框架的核心概念是什么需要掌握的知识点都有哪些 spring核心的知识

2023-04-17 02:48:00 互联网 未知

Spring框架的核心概念是什么?需要掌握的知识点都有哪些?

Spring其主要精髓 就是IOC和AOP。掌握好了这两点对于理解Spring的思想颇有意义。 IOC(英文 Inversion of Control)就是控制反转的意思。就是把新建对象(new Object())的权利交给Spring容器去管理、程序员用的时候只需到容器中去取就可以、无需自己在去new一个对象。有很多的资料和书籍也称其为依赖注入、在我刚学这儿的时候也经常受到“依赖注入”和“控制反转”这样概念类的困扰,其实我倒是建议楼主不必为这些概念咬文嚼字、用了一段时间之后自己自然就会体会其中的依赖容器建立对象的关系了。 AOP(英文 Aspect Oriented Programming )译为 面向切面编程、我个人认为这个概念要比前者稍稍难了一些、它主要是在编程的总体思想上有了变化、是从不同的角度去看待开发流程。不是传统的顺序的进行每个功能和模块,而是从切面的角度、横向来看的各个模块或说功能。 鄙人拙见、纯属原著、谢绝转载。希望能帮到你!

spring核心的知识

Spring是构造java应用的轻量级框架,这里的轻量级不是指类的多少,或者发行包的大小,而是指最小侵入,也就是说,你可以只需改最少的代码就可以获得它带来的好处,不像EJB中创建EntityBean那样具有很强的侵略性。

IOC(Inversion of Control)控制反转:它是Spring的核心,是一种将组件依赖关系的创建和管理置于程序外部的技术。根据我个人的使用是这么理解的:如果用IOC,一个类A中如果要用到其他类B的功能,必须在本类中写入B,同时声明对象B b= new B(),调用方法;而如果使用IOC后,这里的new B()就不必在这里写了,而是在运行时根据spring的xml中的配置动态地把B的实例对象传递给A。这是我个人的理解。IOC也叫DI(Dependency Injection)依赖注入,根据上面的解释应该很好理解字面的意思。IOC一般跟接口配合使用,两者都会得到好处,不难理解,使用接口的话没有IOC,把采用接口的程序连接起来,复杂度很高,代码量也不会少,而有了IOC,代码量会少很多。

面向切面编程(AOP):它是OOP的补充,而不是OOP的对手。不用OOP只用AOP写程序几乎不可能。 OOP可以有效解决很多问题,但在有些问题的解决上,运用AOP会使工作更加聪明轻松。AOP使得程序更加模块化,行程多个"关注点",而同一程序的很多部分重复使用这些"关注点"。举个容易懂的例子:系统日志和安全控制是很多程序典型的横切,横切的意思就是把程序横向展开,里面很多方法都会用到这些功能,而AOP是实现横切的有效工具。如果不用AOP,我们要有一个日志类,然后在每一个方法开始和结束时都要调用这个类的两个方法才能完成日志记录功能,而使用AOP之后,只需要声明日志类的相关方法应该在每个方法的开始和结束时调用就可以了。在Spring框架内部,AOP大量用于事务管理中。AOP的核心概念有下面几个:

联结点(JoinPoint):是程序执行过程中的一个特定点。例如:调用一个方法、类初始化、对象初始化等。它用来定义程序在哪里通过AOP加入横向逻辑。是AOP核心

通知(Advice):在某一个联结点处运行的代码成为通知.根据在联结点之前执行和之后执行分为前置通知和后置通知。

切入点(Pointcut):来定义某一个通知该何时执行的一组联结点。通常会组件复杂的切入点来控制通知什么时候运行。很重要

方面:通知 切入点的组合为方面,AOP就是指面向方面编程,指定义了逻辑和何时执行该逻辑。

织入(Weaving):将方面真正加入程序代码的过程。静态AOP在编译阶段完成。而Sping中在动态运行时完成。

目标(Target):指受到AOP修改的对象,也叫被通知对象。

引入(Introduction):通过引入,我们可以在一个对象中加入新的方法和属性,改变它的结构。即使一个类没有实现某接口,我们也可以修改它,使它像是实现了这个接口。

同样AOP分为静态和动态的。静态是指横切逻辑实在编译时就加入程序中的,如果修改横切需要重新编译代码,例如AspectJ。而Spring中是动态的,也就是运用了上面IOC的思想,横切逻辑在运行时动态加入。静态和动态的在一起使用时功能更加强大

spring框架的核心知识。要简单的。谢谢啊

spring主要内容是:IOC AOP 事务管理 远程调用 最主要的是前面三个。 你弄个小项目熟悉下就基本会用了。 spring设计的初衷就是为了方便开发设计,他得另一个有点就是对系统是非侵入式起作用。 spring上手是比较容易的,但要精通那就需要好好花点时间了。 建议看看spring in action这本书

spring框架的核心概念:IoC和AOP到底有什么用?

使用ioc的好处就是可以修改配置而不用重新编译.
class A {
int a
int b
int add(){
return a b
}
public void seta(int a){this.a=a}
public void setb(int b){this.b=b}
}

a和b的值就可以在指定的xml文件里修改.

AOP就是比如你要执行一个登录的方法login(),调用的这个方法的时候,就可以使用AOP进行切入来进行登录前的验证或者登录后的日志工作等。这个例子太麻烦了,自己看看书吧
http://wiki.redsaga.com/confluence/display/Spring2/Spring2.Spring2.5的中文手册,看这个算了

spring框架

Spring 框架是一个分层架构,由 7 个定义良好的模块组成。Spring 模块构建在核心容器之上,核心容器定义了创建、配置和管理 bean 的方式,如图 1 所示。

组成 Spring 框架的每个模块(或组件)都可以单独存在,或者与其他一个或多个模块联合实现。每个模块的功能如下:

核心容器:核心容器提供 Spring 框架的基本功能。核心容器的主要组件是 BeanFactory,它是工厂模式的实现。BeanFactory 使用控制反转 (IOC) 模式将应用程序的配置和依赖性规范与实际的应用程序代码分开。
Spring 上下文:Spring 上下文是一个配置文件,向 Spring 框架提供上下文信息。Spring 上下文包括企业服务,例如 JNDI、EJB、电子邮件、国际化、校验和调度功能。
Spring AOP:通过配置管理特性,Spring AOP 模块直接将面向方面的编程功能集成到了 Spring 框架中。所以,可以很容易地使 Spring 框架管理的任何对象支持 AOP。Spring AOP 模块为基于 Spring 的应用程序中的对象提供了事务管理服务。通过使用 Spring AOP,不用依赖 EJB 组件,就可以将声明性事务管理集成到应用程序中。
Spring DAO:JDBC DAO 抽象层提供了有意义的异常层次结构,可用该结构来管理异常处理和不同数据库供应商抛出的错误消息。异常层次结构简化了错误处理,并且极大地降低了需要编写的异常代码数量(例如打开和关闭连接)。Spring DAO 的面向 JDBC 的异常遵从通用的 DAO 异常层次结构。
Spring ORM:Spring 框架插入了若干个 ORM 框架,从而提供了 ORM 的对象关系工具,其中包括 JDO、Hibernate 和 iBatis SQL Map。所有这些都遵从 Spring 的通用事务和 DAO 异常层次结构。
Spring Web 模块:Web 上下文模块建立在应用程序上下文模块之上,为基于 Web 的应用程序提供了上下文。所以,Spring 框架支持与 Jakarta Struts 的集成。Web 模块还简化了处理多部分请求以及将请求参数绑定到域对象的工作。
Spring MVC 框架:MVC 框架是一个全功能的构建 Web 应用程序的 MVC 实现。通过策略接口,MVC 框架变成为高度可配置的,MVC 容纳了大量视图技术,其中包括 JSP、Velocity、Tiles、iText 和 POI。

Spring 框架的功能可以用在任何 J2EE 服务器中,大多数功能也适用于不受管理的环境。Spring 的核心要点是:支持不绑定到特定 J2EE 服务的可重用业务和数据访问对象。毫无疑问,这样的对象可以在不同 J2EE 环境 (Web 或 EJB)、独立应用程序、测试环境之间重用。