WebRenderExt在spring框架实现了接口,如何在WebRenderExt内部注入bean

发布于 2021-12-02 11:55:07 字数 101 浏览 878 评论 7

我实现了WebRenderExt

用的spring继承了beetl,请问下,如果在WebRenderExt里注入beanService


如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

看透却不说透 2021-12-04 00:36:28

如果你用了Spring,就没有必要用Class.forName()来实例化Bean,即使你的Bean没有在应用程序上下文定义,Spring仍然可以够着Bean实例并进行依赖注入。

AutowireCapableBeanFactory接口定义了createBean()方法可以给定任意的Class生成Bean实例(并按照注解配置或autowireMode对他进行自动的依赖注入)。而AutowireCapableBeanFactory可以通过ApplicationContext的getAutowireCapableBeanFactory() 方法得到。

http://docs.spring.io/spring/docs/4.2.6.RELEASE/javadoc-api/org/springframework/beans/factory/config/AutowireCapableBeanFactory.html

等你爱我 2021-12-04 00:33:57

不懂什么叫Beetl的Bean?

掩饰不了的爱 2021-12-04 00:31:59

谢谢您的解答,感谢!

羁拥 2021-12-03 23:56:17

您在看下我上面追加的,这样方式获取也获取不了beetl的bean 但是其他的bean可以!

深巷少女 2021-12-03 23:16:07

还是那句话,可以再filter里做,然后结果放到reqeust里

如果非得在GlobalExt使用,那你的GlobalExt实现得能引用ApplicationContext

然后通过它获取service,你可以在某个spring管理的bean里设置一个静态变量来保存ApplicationContext,类似这种代码

http://www.cnblogs.com/wcyBlog/p/4657885.html

清风夜微凉 2021-12-03 23:13:00

我现在想,在GlobalExt里调用service查询,这需要怎么做呢?

无人问我粥可暖 2021-12-03 23:06:54

   WebRenderExt 是通过Class.forName 加载的,注入不了

  大部分功能都可以在spring filter 里来通过request.setAttribute 来为模板添加公共属性,没有必要等到渲染的时候靠beetl来做

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文