
Access一般不提供JDBC,只有ODBC,所以你需要一个JDBC-ODBC桥才可以,在写代码之前还要在本机配置好Access DB的ODBC才可以。
数据库连接代码片断(JSP):
<%
String sitePath = requestgetRealPath("/");
String dbPath = sitePath+"db1mdb";
String strurl="jdbc:odbc:driver={Microsoft Access Driver (mdb)};DBQ="+dbPath;
try
{
ClassforName("sunjdbcodbcJdbcOdbcDriver");
outprintln("access yes1");
Connection conn2=DriverManagergetConnection(strurl);
outprintln("access yes2");
Statement stmt=conn2createStatement();
outprintln("access yes3");
}
catch (Exception e)
{
outprintln(egetMessage());
}
%>
String url="jdbc:mysql:3306//localhost/"+dbName+";
不对称啊,双引号错误
String literal is not properly closed by a double-quote
找到tomcat解压后的目录 C:\programs\apache-tomcat-7042
在conf目录下主要在serverxml和contextxml中添加配置
在serverxml中添加数据库连接地址,在<GlobalNamingResources>中添加如下内容
<Resource auth="Container" driverClassName="orgpostgresqlDriver" factory="orgapachetomcatjdbcpoolDataSourceFactory" initialSize="3" jdbcInterceptors="orgapachetomcatjdbcpoolinterceptorConnectionState;orgapachetomcatjdbcpoolinterceptorStatementFinalizer" jmxEnabled="true" logAbandoned="true" maxActive="5" maxWait="10000" minEvictableIdleTimeMillis="30000" minIdle="3" name="jdbc/userdb" password="123456" removeAbandoned="true" removeAbandonedTimeout="60" testOnBorrow="true" testOnReturn="false" testWhileIdle="true" timeBetweenEvictionRunsMillis="30000" type="javaxsqlDataSource" url="jdbc:postgresql://localhost:5432/userdb" username="postgres" validationInterval="30000"/>
在contextxml添加jndi全局变量,在 </Context>上面添加如下内容:
<ResourceLink global="jdbc/userdb" name="jdbc/userdb" type="javaxsqlDataSource"/>
属性中的name对应的值要和上一步 Resource 里面的name值一样
有多个数据库连接时对应上面多个<Resource>和<ResourceLink>即可
在spring中使用jndi的方法 在applicationContextxml配置文件中添加dataSource
<bean id="dataSource" class="orgspringframeworkjndiJndiObjectFactoryBean"> <property name="jndiName" value="java:comp/env/jdbc/userdb" /> <property name="resourceRef" value="true" /> </bean>
如果是tomcat5以下,则修改conf/serverxml文件,tomcat5及以上则修改/conf/Catalina/localhost目录中的一个xml文件。在</Host>行之前插入如下的一段标签:
(以oralce为例,假设你应用的上下文根是/test,jndi是jdbc/test)
<Context path="/test" docBase="E:\test" >
<Resource name="jdbc/test" auth="Container" type="javaxsqlDataSource"/>
<ResourceParams name="jdbc/test">
<parameter>
<name>username</name>
<value>system</value>
</parameter>
<parameter>
<name>password</name>
<value>manager</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>oraclejdbcdriverOracleDriver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:oracle:thin:@192168027:1521:titan</value>
</parameter>
</ResourceParams>
</Context>
这个容易 运行一个serverlit即可 不需要tomcat直接与 C++ ServerSocket通讯 要知道 没有推送到浏览器这一说 >
在tomcat下的conf--Catalina--localhost里加一个 项目名xml试试,或你百度搜下tomcat配置数据库池 看下他们的例子应该没问题的,我也在为JNDI方式配置数据池烦恼呢,不过我的问题是连不上远程数据库呵呵,本地的是可以连接的!
以上就是关于Tomcat连接access数据库全部的内容,包括:Tomcat连接access数据库、求助:eclipse+tomcat连接数据库!!!!!、怎么用jndi获取tomcat的数据库配置等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)