在servlet和过滤器类中,我可以通过注释
初始化DataSource变量 @Resource(name = "jdbc/testDB")
protected DataSource ds;
但它是如何通过注释在基础类中初始化的? 通常是thorows NullPointerException
public class AddAuto {
@Resource(name = "jdbc/testDB")
private DataSource ds;
}
答案 0 :(得分:2)
你的容器是什么?
如果是tomcat,资源名称应该是这样的
void init(){
DataSource ds=(DataSource)InitialContext.doLookup("java:/comp/env/jdbc/testDB");
}
我不知道另一个容器,但JBoss与Tomcat相同,而GlassFish也是你的价值。
另外,我建议使用旧的查找功能来帮助你进行调试
Sub poker_is_hard()
Dim r As Range
Dim c As Variant
Dim s As Variant
Dim cs As Variant
Set r = Workbooks("Poker game.xls").Worksheets("Cards").Range("B2:E6")
cs = c & "" & s
For Each cs In r
c = Int(Math.Rnd * 13) + 1
'Card's value
If c = 11 Then
c = "J"
ElseIf c = 12 Then
c = "Q"
ElseIf c = 13 Then
c = "K"
ElseIf c = 1 Then
c = "A"
Else
End If
'Card's symbol
s = Int(Math.Rnd * 4) + 1
If s = 1 Then
s = ThisWorkbook.Worksheets("Symbols").Range("B1").Value
ElseIf s = 2 Then
s = ThisWorkbook.Worksheets("Symbols").Range("B2").Value
ElseIf s = 3 Then
s = ThisWorkbook.Worksheets("Symbols").Range("B3").Value
Else
s = ThisWorkbook.Worksheets("Symbols").Range("B4").Value
End If
Next cs
End Sub
答案 1 :(得分:0)
Container仅在众所周知的组件(如servlet,过滤器)中检查注释。您应该将您的类转换为某个组件:
或者你可以像spring一样使用非Java EE解决方案