CDI进阶第七步 注入内置对象
来源:互联网 发布:lambda python java 编辑:程序博客网 时间:2024/04/29 10:37
这个技术是什么意思呢?
就是说CDI可以注入一些容器自带的东西。比如强大的HttpServletRequest.
试想一下,如果CDI不能注入系统自带的资源,比如JPA持久化上下文,那么CDI技术有何意义?现在的web项目大都是要操作数据库的。
但是JPA的持久化上下文,它本身是用JNDI进行管理的。
我先写个EJB自动注入HttpServletRequest的例子。至于CDI的例子也一样。
package cdibeans; import javax.ejb.Stateless;import javax.inject.Inject;import javax.servlet.http.HttpServletRequest; @Statelesspublic class HelloEjb { @Injectprivate HttpServletRequest request;public void hello(){request.setAttribute("greeting", "hello world!");}}
接下来就是servlet的代码
package cdibeans; import java.io.IOException; import javax.ejb.EJB;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse; @WebServlet("/hello.html")public class HelloServlet extends HttpServlet {private static final long serialVersionUID = 1L;@EJBprivate HelloEjb ejb;@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {ejb.hello();req.getRequestDispatcher("/hello.jsp").forward(req, resp);;}}附带jsp的代码
<html><body>==${greeting}==</body></html>
浏览器访问效果。
那么除了request,还可以注入什么?
HttpSession
ServletContext
可以使用@Resource注解,采用JNDI方式注入的有:
UserTransaction
Principal
Validator
ValidatorFactory
0 0
- CDI进阶第七步 注入内置对象
- CDI进阶第三步 CDI验证器
- CDI进阶第五步 CDI事件
- CDI进阶第六步 CDI装饰模式
- CDI技术第七步 生命周期管理
- CDI进阶第八步 CDI初始化与销毁事件
- CDI进阶第四步 自定义注解验证
- CDI进阶第九步 模板注解
- CDI进阶第十步 查找上下文
- CDI技术第九步 构造注入与setter注入
- CDI技术第五步,选择注入的实现类
- CDI进阶第二步 自定义注解拦截器
- CDI技术第八步 动态CDI BEAN
- CDI进阶第一步 CDI拦截器
- CDI系列学习--CDI注入深入理解(结合FacesContext)
- CDI学习第二步,BEAN作用域
- CDI技术第三步,对话作用域
- CDI技术第六步:自定义选择器注解
- matlab求曲线的面积 AUROC
- zabbix监控打印机
- windows 下安装python 的pygraphviz包方法
- javascript的构造函数,原型和以其实现的经典继承
- OpenClinica3.8部署问题
- CDI进阶第七步 注入内置对象
- window.location.href和window.location.replace的区别
- Hadoop—Spark企业应用实战(推荐版)视频教程
- IOS中十六进制的颜色转换为UIColor
- sqlserver 2008 R2 无法打开项 unknown components
- redis 登陆
- ActiveMQ高级应用
- 大数据技术hadoop入门理论系列之二—HDFS架构简介
- 安装双系统教程(windows + centOS7)