Python 官方文档:入门教程 => 点击学习
目录springmain方法调用Dao层和Service层的方法如何在普通类中直接访问service层或dao层第一种方案第二种方案Spring main方法调用Dao层和Servi
在WEB环境中,一般serviceImpl中的dao之类的数据库连接都由容器启动的时候创建好了,不会报错。
但是在main中,没有这个环境,所以需要获取环境:
ApplicationContext ctx = new FileSystemXmlApplicationContext("src/applicationContext.xml");
PianoServiceImpl pianoService = (PianoServiceImpl) ctx.getBean("pianoServiceImpl");
//然后再调用方法
return pianoService.getPriceByBrand(brand);
最近遇到一个问题,如何在工具类中去访问dao层与service层的方法,因为可能本人底子比较薄弱,一开始未想到错误点在哪,后来debug才发现我的service或 dao 都是空的。
因为平时在调用service层时都是在controller中,有配置扫描注入,spring会根据配置自动注入所依赖的服务层。
但因我们写的工具类不属于controller层,所以当所写接口需要调用服务层是,常常会为NULL。
下面 我直接来分享自己的解决方案:
写个方法 implements ApplicationContextAware 接口
然后在你的工具类中
ApplicationContext appCtx = SprinGContextUtil.getApplicationContext();
StatusMapper statusMapper = (StatusMapper)appCtx.getBean(StatusMapper.class);
这样直接调用就好
网上看到的,未验证过
1.将此工具类加上@Component注解
2.将所需调用的服务类设置成静态属性,并通过方法直接将服务层设置成工具类自己的属性即可。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。
--结束END--
本文标题: Spring main方法中如何调用Dao层和Service层的方法
本文链接: https://lsjlt.com/news/159090.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0