GBase 8s数据库连接 - Tomcat jdbc连接池
使用Tomcat jdbc pool连接到GBase 8s数据库
必需组件:
tomcat 7
数据库连接工具:
GBase 8s JDBC dbtjdbc_2.0.1a2_1.jar
开发环境:
Eclipse
配置前提
1,GBase 8s 数据库服务器已经正常启动
1, 在eclipse环境中 新建 动态Web项目,使用Tomcat 7
2,将gbase 8s的jdbc jar包dbtjdbc_2.0.1a2_1.jar复制到tomcat的lib目录下。
3, 在WebContent/META-INF目录下,创建编写context.xml配置文件
具体内容如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | <? xml version = "1.0" encoding = "UTF-8" ?> < Context > < Resource name = "jdbc/gbase01_jdbc" auth = "Container" type = "javax.sql.DataSource" factory = "org.apache.tomcat.jdbc.pool.DataSourceFactory" maxActive = "10" initialSize = "5" jdbcInterceptors="org.apache.tomcat.jdbc.pool.interceptor.ConnectionState; org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer" validationQuery = "select 1 from dual" testOnConnect = "true" removeAbandoned = "true" username = "gbasedbt" password = "GBase123" driverClassName = "com.gbasedbt.jdbc.Driver" url = "jdbc:gbasedbt-sqli://192.168.1.71:9088/jdbcdb:GBASEDBTSERVER=gbase01;DB_LOCALE=zh_CN.utf8;CLIENT_LOCALE=zh_CN.utf8;IFX_LOCK_MODE_WAIT=30" /> </ Context > |
关于更多的tomcat jdbc的资源配置,参考:http://tomcat.apache.org/tomcat-7.0-doc/jdbc-pool.html
4, 在WebContent/WEB-INF目录下,修改web.xml配置文件,增加以下内容
1 2 3 4 5 6 | < resource-ref > < description >TOMCAT JDBC DB Connection</ description > < res-ref-name >jdbc/gbase01_jdbc</ res-ref-name > < res-type >javax.sql.DataSource</ res-type > < res-auth >Container</ res-auth > </ resource-ref > |
5, 在Java Resources/src目录下,创建TomcatJdbc.java类,用于数据库连接。
具体内容如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | package com.gbasedbt.db; import java.sql.Connection; import java.sql.SQLException; import javax.naming.InitialContext; import javax.naming.NamingException; import org.apache.tomcat.jdbc.pool.DataSource; public class TomcatJdbc { public static Connection getConn() throws NamingException, SQLException { Connection connection = null ; InitialContext context = new InitialContext(); DataSource dataSource = (DataSource)context.lookup( "java:/comp/env/jdbc/gbase01_jdbc" ); connection = dataSource.getConnection(); return connection; } } |
6, 在WebContent目录下,创建编写testTomcatJdbc.jsp动态网页文件
内容如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | <! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <%@page import="com.gbasedbt.db.TomcatJdbc"%> <%@page import="java.sql.SQLException"%> <%@page import="java.sql.ResultSet"%> <%@page import="java.sql.Statement"%> <%@page import="java.sql.Connection"%> < html > < head > <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> < meta http-equiv = "Content-Type" content = "text/html; charset=UTF-8" > < title >使用Tomcat Jdbc Pool连接到GBase 8s数据库</ title > </ head > < body > < p >使用Tomcat Jdbc Pool连接到GBase 8s数据库</ p > <% Connection connection = null; Statement statement = null; ResultSet resultSet = null; try{ connection = TomcatJdbc.getConn(); statement = connection.createStatement(); resultSet = statement.executeQuery("select first 10 tabname from systables"); while(resultSet.next()){ out.println("表名: " + resultSet.getString(1) + "< br >"); } } catch (SQLException e){ e.printStackTrace(); } finally { if(resultSet != null){ try{ resultSet.close(); } catch (Exception e){} } if(statement != null){ try{ statement.close(); } catch (Exception e){} } if(connection != null){ try{ connection.close(); } catch (Exception e){} } } %> </ body > </ html > |
完成配置,测试数据库连接池的连接。