Spring 工厂模式与Spring XML简单配置

多XML模式

             xml要多xml格式好一点方便识别

工厂模式:

               可以隐藏对象创建,好处就是我们可以先实现对象前和实现对象后可以做手脚。

为什么要隐藏类的创建过程? 

                                           可以随意变更实现类


生产对象的过程中我们可以添加东西进去:

   服务 为准备一些初始数据 ioc :

                                               可以为我们添加一些依赖数据

                                               可以提前调用方法进行初始化   

   解决 一些重复代码 aop :

                                         例如:日志

                                                         方法调用前 打印日志

                                                         逻辑代码

                                                         方法调用后 打印日志

                                                         方法遇到异常 打印日志

他会使用一种动态代理的技术:

                                             例如创建对象他会在内存中创建一个一样的对象继承与你的对象
                                             例如你要调用里面的方法是他就可以做手脚,可以在调用对象时,写入一些重复执行的代码。

                                             重复代码 例如你每次创建对象前要执行的  对象创建后要执行的  大大的减少了开发的复杂行

                                             解决了代码重复的问题

 

动态类和普通的类是一样的,只不过一种是以文本的形式呈现,而另一种是在内存中呈现的。                                          

先调用动态类中的执行前要调用的重复代码,在通过继承关系调用逻辑代码,再在创建完对象后调用动态类中的对象创建完成后所需要的重复代码

4b7e0b0e7236a9acf18843d1153b1b8450b4cff6

动态继承与实体:

                          所以是子类,所以先调子类他中的重复代码 再调用父类中的逻辑代码。


 Spring环境配置:

                           1.创建Maven工程

                           2.引入spring-context 包  spring环境包 

                           3.创建一个xml文件,applicationContext.xml

                           4.检查spring的环境是否成功

 

ApplicationContext applicationContext =
                new ClassPathXmlApplicationContext("applicationContext.xml");

    ApplicationContext applicationContext=
                new ClassPathXmlApplicationContext("applicationContext.xml");
    //ApplicationContext有个好处会将applicationContext.xml中的类提前加载起来,在你创建对象之前加载起来


  8db7a25cfd2e0d5fa03e9f0e5c3ac7494e4ac10f


Spring中的bean标记:理念应该是 bean看做成是一个个对象 ,一个项目是由一个个对象组建成的。


 使用ApplicationContext 工程模式来创建对象:

 第一步创建你要管理的对象:

 41db2ad4550ff51e442b2e5369ae39ce71c49edb

第二步创建Spring管理对象

68bf1474a51023249cc3d901219f3522fd494657

第三步用工程模式来创建对象,通过名字根据配置的路径来找到对象,也可以通过对象识别来创建对象

fc8131abfd128f1cf501ed4ee8303fdaf0f84745

对象复用小小说明:好处修改直接修改XML不用动源码,因为源码需要编译

他会根据你的属性名称,找到对应的set方法将值通过values塞入进去

setjdbcUrl(String"里面是传入values的值 ")

16c1fa6f24e606e670b45c083def2f91428b6a7e

b3ba604af242ad62558e81d1d2fa47713e5415c2

property 属性:


bean标记:描述就是对象创建配置 

                 id 名称 (全局唯一)

                 name 名称(局部唯一)

                 class(指的是类的全名(包的地址加类名))

                  scope 对象维护方式  singleton 默认 单例模式(ApplicationContext对象中,对象只会创建一次,你就是创建N次他也是同一个对象),prototype 每次都创建新对象

394c322b5d63474ad9dc6a6dc50c8f177697d368

    

嵌套:数组嵌套<array> 标记中嵌套赋值

             

457bd469e65b76540214c4c06f34020b4ded4b5f


name 属性名称

                        setName(String name)

                         setPassWord(String passWord)

                       

                          value 值:value="123" 

                          先看方法的传值类型 然后把123进行转换:例如你这个方法参数设置是 int 他就会将 "" 中的值转换成int类型

                           基本数据类型都能进行通配(根据你方法中的传参类型来进行判断)


对象:引用另一个对象

         bean         

         ref  应用spring环境中的对象(调用的spring中的xml中的对象)

075d494895e6292c7cfa835361d5881c870acb80

d84a8ea43b674fe18ac0ba70df1d87ae9d978ea0


构造器:

           也可以传入依赖的对象

           index 第几个参数  0 ~ N

           value 值

           type 单个参数类型说明 防止构造器重载识别

   5dc5a20806f3f8f90b889cf4c1b2805086891a691de37a466d2e18ff08fec17222e8fc266c09fb96



多XML存在找不见依赖对象的问题所以就需要引用

                                                                          :想通过xml文件建立依赖关系就需要指定xml文件的路径及名称

a605fd3f45c99d647ade9db04de6db3214d98448

                        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值