ImageVerifierCode 换一换
格式:DOC , 页数:8 ,大小:61.50KB ,
资源ID:7096783      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-7096783.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(spring整理笔记.doc)为本站会员(fmgc7290)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

spring整理笔记.doc

1、为什么要使用 Spring?充斥了大量的单利和工厂,而且配置不够集中,没有统一的管理,迫切需要一种框架提供生命事物,重量级的东西侵入性高Spring?最核心的东西 IOC,控制翻转,对象之间有关系 ,依赖关系,对象可以自动穿件依赖AOP 面向切面 可以对普通 java 对象提供声明式服务。横切性技术 HIBERNATE 的拦截器 也是横切技术,EJB 和 Spring?通常有个对比 EJB是重量级的 如果想提供服务 必须是 EBJ 主键 只要是普通 java 对象 AOP 逗可以提供服务,还可以和许多框架集成,Session 的管理,事物的管理,对象的创建和管理 ,逗可以做,我们只要专注于业务

2、就可以了+IOC inversion of control (控制翻转):由容器来管理对象之间的依赖关系(不是对象本身来管理)就叫控制翻转而传值过程就叫 dependency injection (依赖注入) 就是一个大的工厂( 你发起的主动关系别人一变化你就你影响。他追你就不一样了,只提供 set 方法就射入进去了,没有侵入性主要体现在这里,只要提供 set 方法和构造函数就可以,离开spring 也可以)AOP1:Spring 的依赖库2:Copy spring 配置文件到 SRC 下4:配置依赖关系(提供构造函数和 set 方法)5:让 spring 管理我们的对象创建和依赖,必须在 S

3、pring 文件中进行配置和定义6:编写客户端Application.xml标签 id 唯一性的标识配置依赖关系Ref 是一个引用 把 ref 的东西传进来注入没有依赖关系 提供时是标准的构造方法SETTE 方法ApplicationContext ctx = new ClassPathXmlApplicationContext(“applicationContext.xml“);UserEbi userEbi = (UserEbi)ctx.getBean(“UserEbi“);BeanFactoryfactory factory=new ClassPathXmlApplicationC on

4、text(“applicationContext.xml“);Factory.getBean(“UserEb”)好处 (1:配置集中2:不用大量的工厂和单例3:配置 AOP 可以管理事物4;跟 Hibernate 集成后 session 不用管理)构造方法和 SET 方法到底该用哪个?参数比较少 用构造方法 参数比较多的时候用 SET 方法构造方法会在 new 实现的时候传进来已经 new 好了再传入进来就是一个是时机的问题Spring IOC 容器的关键点必须将管理的对象定义到 Spring 配置文件中必须定义构造函数或者是 SETTER 方法 让 Spring 讲对象注入进来 普通属性的注

5、入写一个 VO 提供 set 和 get 方法在 application 里边进行配置/标签非常灵活 也可以那样写wangjiandong /如果是 list 就用 list 标签,lsit1lsit2接下来写一个客户端Public class case extends TestCasePrivate BeanFactory factory Protected void setup()throws ExceptionFactory=new =new ClassPathXmlApplicationContext(“applicationContext.xml”);Public void test

6、()Bean1 bean 1=new (bean)factory.getBean(bean1);System.oyt.println(“bean1.se ”+bean1.getname();自定义属性编辑器(这个好向不长用 倒是后再查找吧) 继承 propertyeditosuppor 类 复写 setAsText(),将属性编辑器注册到 Spring 中日期的注入 写一个 VO 相应的 get setPublic Date dateVlue不能转化 不能把 DATE 转化成 string 得我们自己写一个属性编辑起+公共属性的注入 s通过标签定义公共的属性 指定 abstract=true具

7、有相同属性的类在,.标签中指定其 parent 属性-Bean 的作用域搞一个测试用例Public class ScopeFactory extends TestCasePrivate BeanFactory factory;Protected void setup() throws ExceptionFactory=new ClassPathXmlApplicationContext(“applicationContext.xml”);Public void testScopt()Bean1 bean11=new (Bean1)factoy.getBean(“bean1”);Bean1 be

8、an12=new (Bean1)factoy.getBean(“bean1”);If(bean11=bean12)Systemoutprintln(“bean11=bean12”);ElseSystemoutprintln(“bean11!=bean12”);默认情况下 是New 出一个对象,线程过来都是执行这个对象(每次调用都是同一个实例)如果设置成每个线程过来 new 一个对象(每次调用返回的是不同的实例)这样做能避免 ACTION 的线程安全问题根据名称自动装配和根据类型自动装配Defaultautowifre=byType 根据类型这个要好Defaultautowifre=byName

9、 根据名称”IOC 是 核心 提供了好多基础性的服务和第三方集成的方案以前是我们来管理的 关系 自己要实例化 现在我们吧我们做的事情让容器来完成,控制饭庄是一种是想 一种是依赖的查找,一种是依赖注入 提供一个标准的方法(构造和 SET)这样就没有依赖性的 ,那么这个 IOC 能带来什么好处呢,是个大型的抽象工厂,使用他使我们的层次更分明,对象我们不用管了,使我们程序中不出现的大量的单例和工厂AOP EJB( SessionBean )用 EJB 是做声明事物 Spring 出现了以后出现了 AOP 并不是一个新的技术,我们的 AOP最重要的一点就是提供声明服务,不用改代码声明一下就可以具有这种

10、能力,普通 JAVA对象是不继承任何类的,(POJO)代理模式是一种结构性的模式 可以 控制原对象不会改变原对象的接口静态代理 创建出来能看见的动态代理 是生成期代理可以控制源对象代理模式一个很显著的特点是跟目标对象的接口是一致的为什么要用代理呢?比如我们要做在 UserEbi 里边写了一个接口Public Boolean add(String id)在 UserEbo 里边实现 实现的时候我们要判断一下传进来的 Id 是不是具有某种权限 ,如果在 UserEbo 里边判断,这样就的改代码,这是时候我们可以弄一个代理出来,代理能够控制原对象,代理是跟目标对象的接口是一致的,我们可以写一个类,实

11、现同一个接口下边是一个例子public interface UserEbipublic void add(String id);public void delete(String id);Public class UserEbo implements UserEbipublic void add(String id);System.out.println(“id”+id);public void delete(String id2);System.out.println(“id”+id)2;Public class Userdaili implements UserEbiPrivate Use

12、rEbi userebi;Public Userdaili(UserEbi userebi;public void delete(String id2); Boolean check()System.out.println(“id”+id)2;public void add(String id); Boolean check()System.out.println(“id”+id);Public Boolean check()这样我们只要把检查方法 放在需要检查的类里,这样我们写的类里如果需要检查就会吧我们写的检查方法 分布在所有的代码里边;AOP 关注的不管对象管的是这些对象中,具有横切性的

13、问题,然后运行期间植入进去把横切性的关注点拿出来 模块化了,然后维护这个方法就好了 , (比如我们的判断方法,以前我们判断的是是不是 STRING 现在我们要判断是不是 INT,这个时候我们需要修改方法,然后再去使用使用这个方法的地放进行修改)这样修改的时候就节省大量的时间Spring AOP 的实现就是默认 JDK 的动态代理机制实现的(AOP 是 OO 的补充)接下来写一个动态代理:我们写一个类实现 InvocationHandlerPublic class SecurityHandler implements InvocationHandlerPrivate object targetO

14、bject;/把目标对象传进来,因为对目标对象进行代理Pubic object newPproxy(Object targetObject)this targetObject= targetObject;return ProxynewProxyTnstance (targetObject.getClass().getClassLoader;targetObject.getClass().getInterfaces;this) Public object invoke(Object proxy,Method method ,object args) /实现后重写的方法check();method

15、 相关细节查看视频吧Public void check()/检查方法AOP 是面向切面编程就是使用的时候关键是找到切入点,找到切入点然后模块化就面向切面了,安全性检查就是切入点,我们把它模块化放到一个类里,这个类就是切面,指定这个类是切面(以前我们是配置文件现在我们指定是切面,这就是注解的方式)Spring 指出的是方法的 pointcutPointcut 的实现采用 Annotation 的方式也就是注解的方式,就是程序注解一下就有这样那个的功能1:Spring 的依赖库2:定义切面(Aspect)3: 定义 pointcut 写一个依赖的方法(这个方法就是一个标识)point(“execu

16、tion (*add(*)”)/ASpectPublic class SecurityHandler/定义 pointcut ,pointcut 的名称就是 allAddMethod 此方法不能有返回值和参数,该方法只能是一个标识/pointcut 的内容是一个表达式,描述那些对象那些方法(订阅 Joinpoint)pointcut(“execution(*add*()”)Private void allAddMethod();/定义 advice 标识在哪个切入点何处植入这个方法/在所有的 Add 方法之前执行before (”allAddmethod()”)Private void che

17、ckSecurrity()/定义完了 Aspect 得配置一下 让 IOC 容器认识,Spring 的核心是 IOC ,在 Spring 的配置文件中: http:/www.springframework.org./schema/aop,http:/www.springframework.org/aop/spring-aop-2.0.xsd./.,/.,.加入.这样一句话2:启用/这个是我们的切面/把需要切面的类引入这样 Spring 就知道了在客户端 BeanFactory Factory=new ClassPathXmlApplicationContext(“applicationContext.xml”);UserManager userManager =(UserManager)factory.getBean(“userManager”);采用配置文件的方式在配置文件中配置Spring 和 Hibernate 集成 声明式事物1:配置 sessionFactory2;配置事物管理器3:配置事物的传播特性(隔离级别)4 哪些类哪些方法参与事物

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报