没有合适的资源?快使用搜索试试~ 我知道了~
Apusic服务器解决数据源的资源引用
需积分: 34 5 下载量 6 浏览量
2011-12-16
10:38:39
上传
评论
收藏 33KB DOC 举报
温馨提示
试读
2页
Apusic服务器解决数据源的资源引用 Apusic服务器下数据源的资源引用的解决办法
资源推荐
资源详情
资源评论
AAS 下数据源的资源引用的解决办法
一般情况下,我们要访问一个数据源,会通过 JNDI 名去获取,如
ds = (DataSource) ctx.lookup("jdbc/myDS");
但通常另一种情况也很常见,即应用不是直接通过 JNDI 名去获取数据源的,而
是通过数据源的资源引用去访问数据源的:
ds = (DataSource) ctx.lookup("java:comp/env/jdbc/myDS");
看到这样的关键字“java:comp/env/”,即表示资源引用。可供引用的资源并
不局限于数据源,其他资源也是可以的,如 JMS 的工厂等。
某些应用服务器,好像天生就是需要以资源引用的方式去使用数据源的,如
Tomcat、Resin。以 Resin 为例,在 resin.conf 中,以这样的方式定义数据
源:
<resource-ref>
<res-ref-name>jdbc/test</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<init-param driver-name="com.caucho.jdbc.mysql.Driver"/>
<init-param url="jdbc:mysql_caucho://localhost:3306/test"/>
<init-param user=""/>
<init-param password=""/>
<init-param max-connections="20"/>
<init-param max-idle-time="30"/>
</resource-ref>
在 Web 应用中使用资源引用,按照规范,还得在 web.xml 中进行相应的定义,
如:
<resource-ref>
<res-ref-name>jdbc/DataSource</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
上面这段,定义了一个数据源(注意 res-type)的资源引用,其引用名为
jdbc/DataSource,因此相应的调用代码形如:
ds = (DataSource) ctx.lookup("java:comp/env/jdbc/DataSource");
为使这个资源引用名花有主,我们还需要一个真实的数据源,假定在
datasources.xml 中定义了一个 JNDI 名为 jdbc/real 的数据源,那么接下来
需要做的事也很简单:
在应用的根目录下的 META-INF/apusic-application.xml(此文件如无,则创
建一个)中进行相应的配置,配置样例参考如下:
资源评论
jealin
- 粉丝: 0
- 资源: 6
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功