有点疑问啊

有点疑问啊

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

不是有注解吗?直接注入bean不就好了,为什么要利用ApplicationContext去加载配置文件?

我有个疑问啊,假如配置文件就只要一个配置就是开启扫描注解,我在main方法或者@Test里面测试时候要不要利用ApplicationContext去加载配置文件,然后再或去获取bean,还是我直接利用自动注入去获取bean,就可以去调用bean里面的方法


我现在对利用加载配置文件获取bean和注解获取bean有点混淆。我试过在jsp页面利用<%%>去写java代码,在里面new一个业务层对象,去调用方法,业务层里面的Dao(数据库接口类)是注解注入的(在后台运行没问题),当我利用业务层对Dao层进行调用时候,Dao层对象是无法注入对象的,Dao=null的,为什么啊?



正在回答

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

3回答

同学你好,关于同学的问题:

1、可以在web.xml中配置,启动项目时,加载配置文件,如:

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

还可以拦截所有的请求,转发到一个核心控制器中,在核心控制器中加载配置文件,这样访问具体的路径前时就已经加载了配置文件。

2、建议同学加载配置文件再试试。

祝:学习愉快~


好帮手慕阿满 2020-06-01 11:39:32

同学你好,在类上加上注解定义bean,是将bean存入到spring容器中,在main方法或者@Test测试时,如果不使用ApplicationContext加载配置文件,获取spring容器,则无法使用bean。所有需要先加载配置文件,再去获取bean以及调用方法等。

不建议在jsp页面中写Java代码,同学可以新建一个类,在类中写Java代码。dao为null表示没有将dao注入,问一下同学是否加载配置文件。

祝:学习愉快~

  • 提问者 cccca #1
    1、我想问那没@Test和main方法的web程序,是怎么加载配置文件的。 2、我知道不应该写在jsp页面的java代码,但那是测试,我在jsp没加载配置文件,在new一个service层的对象,就调用了dao层里面的方法了,结果注入不了
    2020-06-01 15:10:26
提问者 cccca 2020-05-31 20:48:50

我配置文件就是一个开启扫描注解

问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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