value和ref的区别是什么?

value和ref的区别是什么?

在Property标签中有的使用value属性,有的使用ref属性,这两者有什么区别,应该如何使用?

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学你好,在本案例中

value 后边就是新new的一个字符串,(一般一些简单的基本类型使用value)

ref是引用已存在的对象。

具体是使用value还是使用ref要看源码底层name 后边对应属性具体是什么类型的。

比如说:我们用个简单的来举例子:

http://img1.sycdn.imooc.com//climg/5e105b0e093da5c808100379.jpg

如果我们用xml来写这个Cat:

http://img1.sycdn.imooc.com//climg/5e105b5809710f0305300188.jpg

这里test是其他的引用类型,把这个test对象,赋值给Cat的test属性。

而name属性,就直接用value赋值为字符串

而具体我们写的时候用什么,就需要看引入jar包的底层源码了,初学者,记住就好。

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

好帮手慕阿莹 2020-01-04 15:37:30

因为这里只是要的是个名字,而不是要去引用它,引用的时候用ref。用名字的话用value就可以了。

同学可以着重听一下5分35秒到6:00分的视频。

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!


  • 提问者 慕沐8221787 #1
    studentDao和myBeforeAdvice都是配置文件中bean标签里id的值,又怎么区分到底是需要名字还是需要引用呢? <!--配置目标类--> <bean id="studentDao" class="com.imooc.aop.demo3.StudentDaoImpl"/> <!--前置通知类--> <bean id="myBeforeAdvice" class="com.imooc.aop.demo3.MyBeforeAdvice"/> <!--Spring-aop产生代理对象--> <bean id="studentDaoProxy" class="org.springframework.aop.framework.ProxyFactoryBean"> <!--配置目标类--> <property name="target" ref="studentDao"/> <!--配置实现接口--> <property name="proxyInterfaces" value="com.imooc.aop.demo3.StudentDao"/> <!--配置拦截名称--> <property name="interceptorNames" value="myBeforeAdvice"/> <!--该属性强制使用CGLIB--> <property name="optimize" value="true"/> </bean>
    2020-01-04 15:43:47
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
SSM主流框架入门与综合项目实战2018版
  • 参与学习           人
  • 提交作业       205    份
  • 解答问题       4317    个

Java中非常实用的SSM整合开发内容,从Spring开始,到MyBaits的进阶内容,再到SpringMVC的应用,最后是SSM整合开发案例,逐步深入,助你成长为一名Java工程师!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师