发表于: 2019-10-24 22:26:15

1 937


今天完成的事情:

学习了junit4   注解  (主要)

目前常用的是test    和ignore



断言   其实就是判断


spring 

前面也看过,今天又看了一遍

到aop就有点看不懂了

后面再研究


IOC在配置文件做了什么(控制反转)


配置文件xx.xml下      创建一个<bean  id = user   class= user路径  /bean>
 
在代码中       读取配置文件xxx.xml          get.bean (user)       创建一个user对象


DI 在配置文件做了什么(依赖注入 )


步骤1           配置文件xx.xml  下  <bean  id  = user    class = user路径   /bean>
 步骤2         <bean  id =userserive   class=  user路径  >
                                            

                  <property name =  user      ref(依赖)=user /bean>    


关键是在于ref



重要概念


我们一般称BeanFactory为   IoC容器
ApplicationContext为应用上下文称为  Spring容器。


ApplicationContext的初始化和BeanFactory初始化有一个重大的区别


BeanFactory初始化容器时,并未初始化Bean,第一次访问Bean时才创建。


而ApplicationContext则在初始化时就实例化所有的单实例的Bean。因此ApplicationContext的初始化时间会稍长一点。



Bean的属性注入

Spring支持两种依赖注入方式,分别是属性注入和构造方法注入。用户不但可以将String,int等类型参数注入到Bean中,还可以将集合、Map类型注入到Bean中。
属性注入(使用属性的set方法)
属性注入要求Bean提供一个默认的构造方法,并为需要注入的属性提供对应的set方法。Spring调Bean的默认构造方法创建对象,然后通过反射的方式调用set方法注入属性。
        创建类
        public class User {
                private String username;
                public void setUsername(String username){
                    this.username=username;
                }
                public void speak(){
                    System.out.println("my name is"+username);
                }
            }
            配置文件
            <bean id="user" class="com.cad.domain.User">
                <!--<property>对应一个属性,name是属性的名称,value是属性的值,ref用来引用其他bean-->
                <property name="username" value="张三"></property>
            </bean>
使用有参数构造方法注入
使用构造方法注入前提是Bean必须提供带参的构造方法。
        创建User类
        public class User {
            private String username;
            public User(String username){
                this.username=username;
            }
            public void speak(){
                System.out.println("my name is"+username);
            }
        }
        配置文件
        <bean id="user" class="com.cad.domain.User">
            <!--<constructor-arg>标签对应构造方法的参数,name是参数名称,value是参数值-->
            <constructor-arg name="username" value="jack"></constructor-arg>

        </bean>


Bean的作用域


过了遍jdbc  jdbctemplate  mybatis

对三者流程更熟悉了些



明天计划的事情:


继续推进任务   

 

单元测试    


spring  aop要看看


spring整合mybatis也要做

遇到的问题:

暂无

收获:


返回列表 返回列表
评论

    分享到