- JBoss Weld CDI for Java Platform
- Ken Finnegan
- 177字
- 2021-08-13 16:49:54
Is my class a bean?
For almost every Java class that we as developers have ever written, the answer would be yes, most definitely, as long as the Java class has either a constructor with no parameters or a constructor that is annotated with @Inject
.
There is only one requirement that CDI mandates for a Java class to be injected as a bean, and that's for the Java class to be packaged into an appropriate archive (such as a JAR or WAR) that contains a descriptor file called beans.xml
. This descriptor file needs to be present in the META-INF
folder of a JAR or the WEB-INF
folder of a WAR.
It's perfectly fine for beans.xml
to be completely empty or only contain the following XML content:
<beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/beans_1_0.xsd"> </beans>
For most applications, the sole purpose of beans.xml
is to notify CDI that there are beans within the archive that need to be scanned, so that they are available to have beans injected into them as well as be injected into other beans that may not be present within this archive.
- PHP動態網站程序設計
- 精通Nginx(第2版)
- 深入理解Android(卷I)
- 移動UI設計(微課版)
- Delphi程序設計基礎:教程、實驗、習題
- NativeScript for Angular Mobile Development
- Modular Programming in Java 9
- Linux操作系統基礎案例教程
- 微信小程序項目開發實戰
- Building Serverless Applications with Python
- Visual FoxPro程序設計
- FPGA Verilog開發實戰指南:基于Intel Cyclone IV(進階篇)
- 軟件品質之完美管理:實戰經典
- Creating Stunning Dashboards with QlikView
- R語言:邁向大數據之路(加強版)