时间 | 所做的事情星期四 2021年2月25日 初14 考虑:javaweb-mybatis-spring |
---|---|
早上 | 包子,粥 |
09.00-09.50 | 8、DI依赖注入环境(构造器注入:下标赋值,构造参数类型,构造参数名) 9、依赖注入之Set注入(Spring容器就是通过调用bean的set方法为属性注入值的。而在xml文件中,使用set注入的方式就是通过property标签) |
10.00-10.50 | 10、c命名和p命名空间注入(拓展方式注入) 1.p命名:通过在xml中使用p命名空间注入,可以直接注入属性的值: 2.c命名:通过在xml中使用c命名空间注入,通过构造器注入:construt-args。 c命名空间的用法和p命名空间类似,其对应于constructor-arg,即可以将constructor-arg元素替换为bean的一个以c命名空间前缀开始的属性。 11、Bean的作用域 在Spring中,bean可以被定义为两种模式:prototype(多例)和singleton(单例) 1.单例模式(Spring默认机制)每次从容器中get的时候,都是使用同一个对象scope=“singleton”。默认情况下scope=“singleton”,那么该Bean是单例,任何人获取该Bean实例的都为同一个实例;singleton(单例):只有一个共享的实例存在,所有对这个bean的请求都会返回这个唯一的实例。 2.原型模式:每次从容器中get的时候,都会产生一个新对象 scope="prototype"scope=“prototype”,任何一个实例都是新的实例;prototype(多例):对这个bean的每次请求都会创建一个新的bean实例,类似于new。 12、自动装配Bean。首先使用环境搭建:一个人有两个宠物。使用autowire=“byName”实现自动装配。byName : 当一个bean节点带有 autowire byName的属性时,将查找其类people中所有的set方法名setCat,setDog,setName,获得将set去掉并且首字母小写的字符串,然后去spring容器中寻找是否有此字符串名称id的对象。如果有,就取出注入;如果没有,就报空指针异常。byName 对应id,byType对应class。 |
11.00-11.30 | 13、注解实现自动装配。使用byName和byType还比较麻烦,所以引出了使用注解实现自动装配。 |
中午 | 快递挺不方便的。 |
15.00-15.50 | 13、注解实现自动装配。之前出现了问题,现在已经修正了。14、Spring注解开发 Spring注解方式减少了配置文件内容,更加便于管理,并且使用注解可以大大提高了开发效率! 可以不用提供set方法,直接在名上添加@value(“值”) 注射在set方法上。如果提供了set方法,在set方法上添加@value(“值”); 衍生注解@Controller:web层;@Service:service层;@Repository:dao层; 15、使用JavaConfig实现配置。使用JavaConfig这种方式可以完全替换掉xml文件的配置。全权交给java来实现配置。@Configuration。关于这种Java类的配置方式,我们在之后的SpringBoot 和 SpringCloud中还会大量看到 16、上周内容回顾 |
16.00-16.50 | 17、静态代理模式。代理模式可以在不修改被代理对象的基础上,通过扩展代理类,进行一些功能的附加与增强。值得注意的是,代理类和被代理类应该共同实现一个接口,或者是共同继承某个类。 使用客户租房,代理,房东,这个例子解释了静态代理。静态代理为什么叫做静态呢?因为它的类型是事先预定好的。 18、静态代理再理解。代理模式的优点,不改变原有代码,增加业务功能。UserServiceProxy中增加了新的功能。 19、动态代理详解 优点复杂??? http://www.imooc.com/learn/214在慕课网上学习了讲解代理模式的一个课程–《模式的秘密–代理模式》,感叹于David老师屌炸天的PPT,同时,老师一步一步模仿JDK源码去写code,教我们去简单实现JDK中的动态代理,讲的清晰透彻。在此我做下笔记,课程原地址:http://www.imooc.com/learn/214 |
17.00-17.30 | 20、AOP实现方式一 也没咋看懂。 |
傍晚 | 面。麻汁鸡丝拌面 |
19.00-19.50 | Java mvc:4、初识SpringMVC+6、深入SpringMVC学习 |
20.00-20.50 | 7、使用注解开发SpringMVC+8、Controller配置总结 |
21.00-21.50 | 8、Controller配置总结。实现接口Controller定义控制器是较老的办法。最好不要使用这种方法。 |
02-25
112
01-25
298
08-13