`
灬烟丶醉
  • 浏览: 9322 次
  • 性别: Icon_minigender_1
  • 来自: 广东
社区版块
存档分类
最新评论

Spring

阅读更多

简单的说一下Spring,若有错..麻烦大家指出..

Spring 它是什么:Spring是一个开源框架;用于简化采用Java语言开发企业级程序的一个分层的框架;

Spring 的作用:

为什么要用Spring:

1、提供了IOC,AOP功能的容器,方便编程;

2、简化了J2EE或非J2EE的开发与设计;

3、Soring是一个轻量级的框架,并且是一个非侵入式的框架;

Spring 的七大模块:

1、Spring Aop;

什么是AOP:它是一种面向切面编程;

它的作用是什麽:就是为了将业务逻辑和非业务逻辑代码分离开来,

还可以让Spring事务得到了更广泛的使用;

2、Spring ORM;

什麽是Spring ORM:ORM并不是一种具体的产品,而是一类框架的总称,它概述了这类框架的基本特征:完成面向对象的程序设计语言到关系数据库的映射;

用他有什么好处:面向对象的建模、操作,多态性、继承,容易使用,很好理解;

3、Spring Web;

什么是 Spring web:提供Web应用上下文,对Web开发提供功能上的支持;

4、Spring Web MVC;

什么是 Spring Web MVC:全功能MVC框架,作用相当于struts;

使用Spring web MVC的好处:Spring的controller在它 的IOC容器管理下,可以像普通的bean来管理一样;

5、Sring Dao;

什么是 Spring Dao:提供事务支持,JDBC支持;

6、String Context;

什么是 Sptring Context:扩展核心容器,提供事件处理、国际化,还能提供一些企业级的功能;

7、Spring Core;

什么是 Spring Core:核心容器,BeanFactory提供了组件生命周期的管理,组件的创建,装配,销毁等功能

IOC (控制反转):

IOC在Spring中担任着一个重要的位置:是spring的核心;IoC的一个重点是在系统运行中,动态的向某个对象提供它所需要的其他对象。这一点是通过DI(依赖注入)来实现的;

IOC的好处:1、管理bean的生命周期

  2、减少了java代码

  3、降低了耦合度

  4、并且让对象与对象的关系更好的被管理了;

IoC的缺点:1、生成一个对象的步骤变复杂了

  2、对象生成因为是使用反射编程,在效率上有些损耗

依赖注入有三种方式:

工厂注入:工厂注入必须写一个接口类;侵入式非常强,不方便移植;

set方法注入:这种方式也是Spring推荐的方式;无侵入式;

构造方法注入:这种方式Spring同样给予了实现;这种方式不是没有侵入式,只是它将侵入式转移了;

Spring的MVC与struts2的MVC比较:

性能:spring比struts快一点。因为spring mvc是基于方法的设计,而sturts是基于类,所以导致每次发一次请求都会实例一个action,每个action都要重新被注入属性。

机制上:spring mvc的入口是servlet,而struts2是filter,这样就导致了二者的机制不同。 

设计思想上:struts更加符合oop(面向对象)的编程思想, spring就比较谨慎,在servlet上扩展。 

Spring AOP:

一种编程技术,它允许程序员对横切关注点或横切典型的职责分界线的行为(例如日志和事务管理)进行模块化;

使用AOP的好处:

1、解耦,降低了耦合度;

2、让系统更容易被扩展;

3、有很好的代码重用性;

AOP的核心:

切面:切面,是对交叉业务逻辑的统称。

连接点:指切面可以织入到目标对象的位置方法或者属性;

通知:指切面的具体实现。

切入点:指通知应用到哪些类的哪些方法或属性之上的规则。

AOP使用代理:

(1) 将切面使用动态代理的方式动态插入到目标对象(被代理类),形成一个代理对象;

(2) 目标对象如果没有实现代理接口,那么Spring会采用CGLib来生成代理对象,该代理对象是目标对象的子类;

(3) 目标对象如果是final修饰类,并且也没实现代理接口,就不能运用AOP;

2
3
分享到:
评论

相关推荐

    SpringBatch+Spring+Mybatis+MySql (spring batch 使用jar)

    Spring Batch是一个轻量级的,完全面向Spring的批处理框架,可以应用于企业级大量的数据处理系统。Spring Batch以POJO和大家熟知的Spring框架为基础,使开发者更容易的访问和利用企业级服务。Spring Batch可以提供...

    spring源码合集spring源码合集

    spring

    spring3.1 官方全部jar包

    spring3.1官方所有的jar包 org.springframework.aop-3.1.RELEASE.jar org.springframework.asm-3.1.RELEASE.jar org.springframework.aspects-3.1.RELEASE.jar org.springframework.beans-3.1.RELEASE.jar org....

    Spring MVC 入门实例

    这篇文章将教你快速地上手使用 Spring 框架. 如果你手上有一本《Spring in Action》, 那么你最好从第三部分"Spring 在 Web 层的应用--建立 Web 层"开始看, 否则那将是一场恶梦! 首先, 我需要在你心里建立起 Spring...

    Getting started with Spring Framework: covers Spring 5(epub)

    Getting started with Spring Framework (4th Edition) is a hands-on guide to begin developing applications using Spring Framework 5. The examples (consisting of 88 sample projects) that accompany this ...

    最新版本的Struts2+Spring4+Hibernate4框架整合

    项目原型:Struts2.3.16 + Spring4.1.1 + Hibernate4.3.6 二、 项目目的: 整合使用最新版本的三大框架(即Struts2、Spring4和Hibernate4),搭建项目架构原型。 项目架构原型:Struts2.3.16 + Spring4.1.1 + ...

    spring源码分析(1-10)

    Spring源代码解析(一):Spring中的事务处理 Spring源代码解析(二):ioc容器在Web容器中的启动 Spring源代码分析(三):Spring JDBC Spring源代码解析(四):Spring MVC Spring源代码解析(五):Spring AOP获取Proxy ...

    SpringBoot+SpringCloud面试题.doc

    Spring boot 是 Spring 的一套快速配置脚手架,可以基于spring boot 快速开发单个微服务,Spring Cloud是一个基于Spring Boot实现的云应用开发工具;Spring boot专注于快速、方便集成的单个个体,Spring Cloud是关注...

    spring3.0.0相关jar包

    spring3.0.0相关jar包 org.springframework.aop-3.0.0.RELEASE org.springframework.asm-3.0.0.RELEASE org.springframework.aspects-3.0.0.RELEASE org.springframework.beans-3.0.0.RELEASE org.springframework....

    spring4.3.1官方全套jar包下载

    spring4.3.1全套jar下载。 4.3.1/spring-aop-4.3.1.RELEASE.jar 4.3.1/spring-aspects-4.3.1.RELEASE.jar 4.3.1/spring-beans-4.3.1.RELEASE.jar 4.3.1/spring-context-4.3.1.RELEASE.jar 4.3.1/spring-core-4.3.1....

    开发工具 spring-aop-4.3.6.RELEASE

    开发工具 spring-aop-4.3.6.RELEASE开发工具 spring-aop-4.3.6.RELEASE开发工具 spring-aop-4.3.6.RELEASE开发工具 spring-aop-4.3.6.RELEASE开发工具 spring-aop-4.3.6.RELEASE开发工具 spring-aop-4.3.6.RELEASE...

    spring-mock.jar

    Classes contained in spring-mock.jar: org.springframework.mock.jndi.ExpectedLookupTemplate.class org.springframework.mock.jndi.SimpleNamingContext.class org.springframework.mock.jndi....

    spring 3.2.4.RELEASE jar包

    spring 3.2.4 Realease 的所有jar包: spring-context-3.2.4.RELEASE.jar spring-core-3.2.4.RELEASE.jar spring-beans-3.2.4.RELEASE.jar spring-test-3.2.4.RELEASE.jar spring-web-3.2.4.RELEASE.jar spring-aop-...

    spring_in_action-sixth-edition.pdf

    "Spring 实战第六版" Spring Framework 是一个广泛使用的 Java 应用程序框架,它提供了一个通用的编程模型和配置机制,帮助开发者快速构建企业级应用程序。下面是对 Spring Framework 的详细知识点总结: 1. 什么...

    基于spring cloud 和vue全家桶的开源电商源码

    基于spring cloud 和vue全家桶的开源电商源码基于spring cloud 和vue全家桶的开源电商源码基于spring cloud 和vue全家桶的开源电商源码基于spring cloud 和vue全家桶的开源电商源码基于spring cloud 和vue全家桶的...

    Spring技术内幕:深入解析Spring架构与设计原理(第2部分)

    Spring技术内幕:深入解析Spring架构与设计原理(第2部分) 《Spring技术内幕:深入解析Spring架构与设计原理》是Spring领域的问鼎之作,由业界拥有10余年开发经验的资深Java专家亲自执笔!Java开发者社区和Spring...

    Spring in Action 中文版 第五部分(Spring in Action CN.005)

    Spring in Action CN.001<br>Spring in Action CN.002<br>Spring in Action CN.003<br>Spring in Action CN.004<br>Spring in Action CN.005<br>Spring in Action CN.006<br>Spring in Action CN.007<br>Spring in ...

    org.spring-framework-3.0.4. 所有jar

    org.springframework.aop-3.0.4.RELEASE.jar org.springframework.asm-3.0.4.RELEASE.jar org.springframework.aspects-3.0.4.RELEASE.jar org.springframework.beans-3.0.4.RELEASE.jar org.springframework....

    尚硅谷SpringCloud第2季2020版.mmap

    一篇很好的springCloud学习的思维导读,详细的介绍了,springCloud的搭建步骤以及各组件的说明讲解 涵盖 Eureka服务注册与发现 Zookeeper服务注册与发现 Consul服务注册与发现 Ribbon负载均衡服务调用 OpenFeign...

    spring cloud 体系版本选型,涉及spring cloud alibaba spring boot spring cloud

    spring boot , spring cloud alibaba, spring cloub 版本选型

Global site tag (gtag.js) - Google Analytics