六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 305|回复: 0

手动建立jetty datasource

[复制链接]

升级  32%

4

主题

4

主题

4

主题

童生

Rank: 1

积分
16
 楼主| 发表于 2013-1-14 23:46:05 | 显示全部楼层 |阅读模式
看了jetty官方的datasource建立代码 需要在web/inf下面新建一个jetty-env.xml。但是这种方式只适合在整个项目有完整的war包情况下,才能顺利加载,如果你的项目是个多工程的,而且webapp目录还没有生成或者web.xml是编译期生成的,那么你不不能适合这种方式。 在前面的文章中介绍了手动使用jetty嵌入加载web工程,这里给个手动设置jndi datasource的代码例子。
 
 
 /** * 绑定datasource到JNDI */
private void bindDataSource()
{
   DriverManagerDataSource dataSource = new DriverManagerDataSource();         
   dataSource.setDriverClassName("org.hsqldb.jdbcDriver");
   dataSource.setUrl("jdbc:hsqldb:mem:booking");
   dataSource.setUsername("sa");
   dataSource.setPassword("");
   javax.naming.Context context;
   try {
          context = new InitialContext();
          javax.naming.Context compCtx = (javax.naming.Context) context.lookup("java:comp");    
           javax.naming.Context envCtx = compCtx.createSubcontext("env"); NamingUtil.bind(envCtx, 
                                   "jdbc/hsqldb", dataSource); }
   catch (NamingException e)
            { e.printStackTrace();
 
       }
}
 
 
 
spring中使用jndi <!-- jndi test-->
<bean id="dataSourceJNDI" class="org.springframework.jndi.JndiObjectFactoryBean">
      <property name="jndiName"><value>java:comp/env/jdbc/hsqldb</value></property>
</bean>
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表