spring入门篇】的更多相关文章

spring 入门篇         相对于Hibernate(冬眠),Spring(春天),具有更多的诗意与希望的感觉,是为了解决传统J2EE开发效率过低.开发商之间不统一.没有真正实现“写一次到处使用”,它的优点有如下: 低侵入式设计,代码污染极低. 独立于各种应用服务,真正实现写一次到处都可以使用. 用户可选择的自由度高,用户可以选择部分或者是全部SPRING的功能,它并不是设计来取代其它框架,可以和其它的框架(如STRUTS.HIBERNATE)等结合极好. 面向接口的编程方式,使得代码…
本文是对慕课网上"搞定SSM开发"路径的系列课程的总结,详细的项目文档和课程总结放在github上了.点击查看 视频传送门:Spring入门篇 该门课程主要从Spring的Bean的装配和AOP的简单使用这两个方面,结合简单的项目实例介绍了Spring起步的相关知识. 1 Spring是什么 1.1 spring的概念和特性: 关键字:Spring:开源框架,控制反转(IOC)和面向切面(AOP) Spring是一个开源框架,主要是为了解决项目开发中的紧耦合的问题,采用了控制反转和AO…
目录 1-1 Spring入门篇 专题一.IOC 接口及面向接口编程 什么是IOC Spring的Bean配置 Bean的初始化 Spring的常用注入方式 专题二.Bean Bean配置项 Bean的作用域 Bean的生命周期 Aware Bean的自动装配(Autowiring) Resources Bean管理的注解实现及例子 专题三.AOP 什么是AOP 切面 AOP实现方式 AOP几个相关概念 Advice的类型 Spring框架中AOP的用途 Sprign的AOP实现 有接口和无接口…
第1章 概述 本章对课程的情况进行介绍,并介绍框架和Spring概况. 1-1 Spring入门课程简介 1-2 Spring概况 1-3 Spring框架…
1 解析 1.1 类的方式实现各种通知需要实现的接口 1.2 创建Spring aop代理的优点及方法 1.3 代理控制切入点和通知的顺序的代码实现(具体完全实现,见代码2.1) 1.4 代理方式选择 2 代码演练 2.1 类的方式实现各种通知 2.2 类的方式实现各种通知(和2.1对比) 1 解析 1.1 类的方式实现各种通知需要实现的接口 前置通知:MethodBeforeAdvice 后置通知:AfterReturningAdvice 异常通知:ThrowsAdvice 环绕通知:Meth…
你好呀,我是沉默王二,一个和黄家驹一样身高,刘德华一样颜值的程序员(管你信不信呢).从两位偶像的年纪上,你就可以断定我的码龄至少在 10 年以上,但实话实说,我一直坚信自己只有 18 岁,因为我有一颗好学的心.本篇文章就打算通过我和三妹对话的形式来学一学"Spring 的基础". 教妹学 Java,没见过这么放肆的标题吧?"语不惊人死不休",没错,本篇文章的标题就是这么酷炫,不然你怎么会点进来? 我有一个漂亮如花的妹妹(见上图),她叫什么呢?我想聪明的读者能猜得出:…
1 解析 1.1 通知:after和afterreturning的区别 1.2 @RunWith 是什么? 2 代码演练 2.1 注解方式配置通知的两种方式 2.2 异常通知 2.3 非异常通知 1 解析 1.1 通知:after和afterreturning的区别 a after 后置通知相当于finally的功能,无论是否发生异常,都会执行,而返回后通知afterReturning 则在发生异常后,不再执行. b afterReturning返回后通知,一般有返回值,而后置通知after 不…
本节主要是理论型: 关键看下节实操. 这个其实只要理解一点:使用AspectJ进行Spring AOP 编程,其实就是使用了JAVA注解的风格进行配置和使用. 不像之前讲的那样在配置文件中配置使用.…
1 解析 1.1 使用global advisors demo 1.2 jdk代理和cglib代理的选择 1.3 如何强制使用CGLIB实现AOP? 1.4 JDK动态代理和CGLIB字节码生成的区别? 1.5 cglib的maven依赖 1.6  CGLIB代理的工作原理 1.7     简化的proxy定义 1.8 父子bean demo   2 代码演练 2.1 通配符使用 和 ProxyFactoryBean 连接点的选择 2.2 使用父子bean(parent标签使用) 1 解析 1.…
本节主要是模拟spring aop 的过程. 实现spring aop的过程 这一节老师虽然说是以后在工作中不常用这些api,实际上了解还是有好处的, 我们可以从中模拟一下spring aop的过程.所以,这节课是有必要的,如果没有的话,那才是失职. 将前一章中的xml配置方式改为了实现接口的实现方式 具体细节和使用参考开发文档(具体使用场景参考下一章)…
本节主要讲了在xml中配置切面的demo 1 解析 1.1 配置切面xml 1.2 配置切面xml 1.3 问:什么是动态代理? 2 代码演练 2.1 配置切面xml 1 解析 1.1 配置切面xml spring的所有切面和通知器必须放在一个<aop:config>内(可以配置多个<aop:config>元素),每一个<aop:config>可以包含point.advisor和aspect元素(必须按照顺序声明) 1.2 运用什么原理? <aop:config&…
概念: 1 什么是aop及实现方式 2 aop的基本概念 3 spring中的aop 1 什么是aop及实现方式 1.1 aop,面向切面编程,比如:唐僧取经需要经过81难,多一难少一难都不行.孙悟空要经过27难,唐僧27难,猪八戒9难,沙僧18难.每个人统计自己的难数.这样造成业务冗杂,现在把统计经过的劫难数交给观音,唐僧只用骑马,悟空只用降妖除魔,八戒只用吃,沙僧只用担行李就行了. 实际应用中只是把统计劫难数换成了事务服务,日志管理,安全验证等. 1.2 实现方式有预编译或者运行期动态代理…
1 解析 1.1 疑问:2.2去掉@resource注解,为什么不能赋值?不是有set方法了吗? 1.2 @resource注解版本支持 1.3 没有显式指定@resource的那么,默认名称从何获得? 1.4 @postConstruct 和@predestroy注解版本 支持 1.5 @named 和 @inject 依赖注入注解的 版本支持 2 代码演练 2.1 给变量赋值(方法一) 2.2 给变量赋值(方法二) 2.3 注解PostConstruct 和注解 PreDestroy(前置注…
1 解析 1.1 什么是泛型? 1.2 泛型有什么作用? 1.3 泛型装配样式? 2 代码演练 2.1 泛型应用 1 解析 1.1 什么是泛型? Java泛型设计原则:只要在编译时期没有出现警告,那么运行时期就不会出现ClassCastException异常. 泛型:把类型明确的工作推迟到创建对象或调用方法的时候才去明确的特殊的类型 1.2 泛型有什么作用? 早期Java是使用Object来代表任意类型的,但是向下转型有强转的问题,这样程序就不太安全 首先,我们来试想一下:没有泛型,集合会怎么样…
1 解析 1.1 bean的单例和多例的应用场景 1.2 单例多例的验证方式 1.3 @Scope注解单例多例应用 2 代码演练 2.1 @Scope代码应用 1 解析 1.1 bean的单例和多例的应用场景 1.1.1  什么是单例多例: 所谓单例就是所有的请求都用一个对象来处理,比如我们常用的service和dao层的对象通常都是单例的,而多例则指每个请求用一个新的对象来处理,比如action;  1.1.2. 如何产生单例多例:    在通用的SSH中,单例在spring中是默认的,如果要…
1 解析 1.1 这两个注解应用在什么地方 1.2 应用方式 1.3 xml方式实现取值 2 代码演练 2.1 @ImportResource和@Value代码演练 1 解析 1.1 这两个注解应用在什么地方 接口调用,java与properties文件交互获取url和用户名密码等配置信息 1.2 应用方式 java类通过调用@Importresource找到xml,通过xml配置properties 示例: @Configuration @ImportResource("classpath:c…
1 解析 2.1 @bean注解定义 2.2 @bean注解的使用 2 代码演练 2.1 @bean的应用不带name 2.2 @bean的应用带name   2.3 @bean注解调用initMethod和destroyMethod 1 解析 2.1 @bean注解定义 @bean标识一个用于配置和初始化一个由springIOC容器管理的新对象的方法(生成ioc容器的bean实例),类似于xml配置的</bean> 2.2 @bean注解的使用 a 通常注解@bean和@Configurat…
本节主要讲述以下内容: 1 简述 2 代码演练 2.1 注解qualifier运用 1 简述 1.1 何种情况使用qualifier注解? a 按类型自动装配多个bean实例,可以用@qualifier指定唯一 b 目标是构造器或一个多参方法时,最好使用qualifiers,否则用resource(只有一个参数的setter方法) 1.2 xml方式如何运用qualifier <bean class="com.ddwei.bean"> <qualifier value…
课程链接: 本节主要讲了以下几块内容 1 注解相关解析 2 代码演练 集合for循环的使用 2.1 list集合应用 2.2 map集合应用 2.3 集合排序(只对list有效,对map无效(list有序,map无序)) 1 注解相关解析 1.1 autowired注解应用到集合属性可以提供所有特定类型的bean 1.2 autowired可以提供集合中实体类的bean和子类的bean(继承,详情见下方代码) autowired注解不能应用在Spring BeanPostProcessor或者B…
课程链接: 1 解析 2 代码演练 1 解析 1.1 @Required注解 该注解适用于bean属性的set方法 1.2 @Autowired 作用: 是为了把依赖的对象,自动的注入到bean里 使用方式: 1 @autowired required的默认值为false 2 每个类中只有一个构造器被标记为required=true 3 @autowired(required=false):如果找不到实体类,不报错. 4 可以添加到成员变量或者方法上边 2 代码演练 2.1 autowired作…
课程链接: 1 概述 2 代码演练 3 代码解析 1 概述 1.1 bean注解相关 a context:component-scan标签使用 问:该标签的作用是什么? 答:该标签作用是支持注解,在xml配置文件中不用配置bean了 问:该标签的使用条件是什么? 答:spring3.0之后才支持该标签的使用 b 类注解相关 @Component 通用类注解(所有实体类都可以用该注解) @Repository    注解dao类(持久层) @Service 注解Service类(服务层) @Con…
课程链接: 1 resource简析 2 resource代码演练 1 resource简析 urlsource:url对应的资源 classpath:获取类路径下的资源文件 filesystemresource:获取文件系统里面的资源 servletContextResource:servlet封装的资源 inputStreamResource:输入流封装的资源 ByteArrayResource:字节数组封装的资源 2 resource代码演练(可以配置在右键项目==>build path=…
课程链接: 本节主要讲了三大块内容 1 bean的生命周期概念 2 bean的初始化和销毁的三种方式对比(代码演练) 3 总结 1 bean的生命周期概念 1.1 bean的定义:xml中关于bean的配置,bean的id和bean的class等. 1.2 bean的初始化:ioc容器启动的时候加载xml文件中的bean生成实例. 1.3 bean的使用:bean容器中取出bean的实例并使用 1.4 bean销毁:指的是bean销毁时回收由这个bean创建的所有bean实例. 2 bean的初…
课程链接: 本节讲了5部分内容,6为项目demo: 1 接口及面向接口编程 2 什么是IOC 3 Spring的bean配置 4 Bean的初始化 5 Demo 自己理解: 1 高层模块和底层模块都依赖于他们共同的接口,而不是高层模块依赖于底层模块进行开发 2 IOC 控制反转,控制权的转移,将产生对象的过程反转了过来.本来由高层模块new对象,现在将创建对象的任务交给了外部容器.实现方式是依赖注入DI 3 参见demo2,spring-ioc.xml中bean的配置 对spring bean的…
课程链接: 1 Spring是什么? 2 为什么是Spring 3 Spring的作用: 4 适用范围 1 Spring是什么? a 开源框架 b 轻量级的控制反转(Ioc)和面向切面编程(AOP)的容器框架(本身容量和运行该容器的开销都很小,通过控制反转实现轻耦合的作用) 2 为什么是Spring a 在Spring上开发应用简单方便快捷 3 Spring的作用: a 容器 b 提供了对多种技术的支持(jms支持 ,mq支持 ,UnitTest支持) c aop(事务管理,日志等) d 提供了…
课程链接: 课程简介: 1 什么是框架 2 Spring简介 3 IOC(配置,注解) 4 Bean(配置,注解) 5 AOP(配置,注解,AspectJ.API) SpringFrameWork 常用网站: http://spring.io/ http://spring.io/projects/spring-framework/ Spring文档…
1.什么是AOP及实现方式 什么是AOP AOP:Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术 主要的功能是:日志记录,性能统计,安全控制,事务处理,异常处理等等 AOP实现方式 预编译 -ApectJ 运行期动态代理(JDK动态代理.CGLib动态代理) -SpringAOP.JbossAOP 2.AOP基本概念 连接点:比如一个类中某个方法执行的开始 通知:在某个方法执行的时候,额外执行的切面…
第7章 Spring对AspectJ的支持 介绍Spring对AspectJ的支持 7-1 AspectJ介绍及Pointcut注解应用 实例 完成了在xml文件的配置 7-2 Advice定义及实例 使用advice的两种方式: 1.直接定义一个execution的表达式 2.使用一个已经存在的pointcut(),也就是引用一个已经定义好的切入点…
第6章 Spring AOP的API介绍 主要介绍Spring AOP中常用的API. 6-1 Spring AOP API的Pointcut.advice概念及应用 映射方法是sa开头的所有方法 如果当前是被锁住,并且方法的名称中包含set,那也就是说我们不希望执行set方法去改变物体本身的属性,就抛出一个异常,否则就正常的执行一个调用链. 6-2 ProxyFactoryBean及相关内容(上) 定义一个Bean id为foo的ProxyFactoryBean,引用foo这个对象看到的将不是…
第5章 Spring AOP基本概念 本章介绍Spring中AOP的基本概念和应用. 5-1 AOP基本概念及特点 5-2 配置切面aspect ref:引用另外一个Bean 5-3 配置切入点Pointcut 注意后两项的区别,前一个是两个点,后一个是三个点. Spring Aop.Spring 支持的AspectJ这部分是都支持的. 匹配所有的方法 在执行这个包下面的所有类的任何类型方法的时候 单一的方法匹配:只是执行这个类的这个方法的时候 只是执行SystemArchitecture类的b…