我想问一下,本来使用spring框架的IOC是准备来降低耦合度,实现java代码被编译成class文件后想要修改调整代码活更新代码可以通过spring框架的xml配置文件来修改bean标签id实现代码的修改,但如果使用注解方式,所有创建对象及引用加载对象放在了java代码中还如何实现spring框架方便修改的功能,使用了注解之后解耦体现在了什么地方?虽然使用注解让java代码中没有明确的指明包含关系,而是通过spring来管理创建对象并进行分配的,可是修改不了,成为了死代码,那意义在哪里?
1条回答
- lppzyt 2019-11-12 16:55关注
1.编译之后生成的class文件,是在硬盘的,此时还没有加载到内存。而spring做的是当程序启动时把需要的对象给放到spring容器中。getBean()的时候
根据名字(beanName)获取。就是配置文件中的id。使用注解默认是类名的首字母小写,当然可以在使用注解时更改@Service(“xxxx”)就可以更改了。
2.配置文件有的功能,都有相应的注解与其对应。
3.IOC包含两个内容。就是如何实例化bean。一个是xml方式,一个是注解方式。拿j2ee来说。
4.从xml形式或者注解形式。一般需要三个步骤。第一步把相应的描述转化成一个beanDefinition。第二步反射进行实例化。第三步给属性赋值。
5.可以实现spring的不同接口在4点的时候执行我们让spring执行的逻辑。具体看一下spring的生命周期。解决 无用评论 打赏 举报
悬赏问题
- ¥15 乘性高斯噪声在深度学习网络中的应用
- ¥15 运筹学排序问题中的在线排序
- ¥15 关于docker部署flink集成hadoop的yarn,请教个问题 flink启动yarn-session.sh连不上hadoop,这个整了好几天一直不行,求帮忙看一下怎么解决
- ¥30 求一段fortran代码用IVF编译运行的结果
- ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
- ¥15 C++ 头文件/宏冲突问题解决
- ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
- ¥50 安卓adb backup备份子用户应用数据失败
- ¥20 有人能用聚类分析帮我分析一下文本内容嘛
- ¥30 python代码,帮调试,帮帮忙吧