一、IOC
和MyBatis框架做一个对比

下图是spring的测试类
spring框架中,category是直接作为一种类型出现的
get bean获取容器对象

测试类中的两个c应该不是同一个对象,xml文件中先创造名字为c的对象,其中对name属性赋值并引用category实体方法,让它是category类型并通过getName和setName方法确认其name,最后使用测试类
二、注入对象

目录如上图,新增加了Product实体类,并且在xml文件中新增关键字获取Product对象


测试结果如上图,我一开始很不明白为什么把Category的引入去除后还能获取category的name,但是看了一下Porduct类,里面其实是有get name的方法的,只是我下意识的认为只能获取product的内容,但是在经过注入后category的属性意思上是可以视为product的属性的
三、注解方式
还是对比来看一下

15行表示告诉Spring要用注解的方式进行配置;去掉了注入方式用注解来完成
annotation-config:意思是注释-配置

在Product.java中引入注解


我仔细想了下注解有效的原因,感觉它很像一座桥梁,把两个标明注解(一个提示注意注解,一个插入注解)的地方连接起来


但是感觉@Resource(name="c")表意更加直观
注解Category,Product



成功得到结果
我一开始以为有了component的注解后可以不要product中的autowired了,但是是没办法运行的
注入Category对象还是需要有autowired注解
三、教材p248-p249的setter注入和构造器注入

setter注入没看懂和之前在hoe2j的有什么区别?好像就是把测试类的java换成了servlet的结构

构造器注入出现了问题,在更换方法输出后还是不行确定了不是实体类方法的问题,原因应该在xml文件中
暂时到这里吧,有点不舒服,后续内容之后再补
本次用时:三小时
文章对比了Spring框架中的IOC机制与MyBatis框架,通过测试类展示了Spring如何通过XML配置和注解进行对象注入。作者讨论了Category和Product类的注入关系,指出注解在连接对象之间的桥梁作用,并提到了setter注入和构造器注入的区别和应用问题。
714

被折叠的 条评论
为什么被折叠?



