手动建立jetty datasource
看了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>
页:
[1]