Tomcat 6 的数据源的配置2

Tomcat 6.0 设置 JNDI 数据源 一直都JNDI这个名字,可是一直都没有去研究过,因为工作中一直都没用到。。。 这次面试的时候用到了。。。 于是乎,找来例子练练手。。 看了Tomcat官方的说明,顺便看到々上善若水々的文章,理解了整个意思。 下面将我的例子写在这里,只希望下次面试的时候,我可以说,来我博客看吧,这些我都会。。 在server.xml中添加: Tomcat标准数据源资源工厂配置项如下: * driverClassName - 所使用的JDBC驱动类全称。 * maxActive - 同一时刻可以自数据库连接池中被分配的最大活动实例数。 * maxIdle - 同一时刻数据库连接池中处于非活动状态的最大连接数。 * maxWait - 当连接池中没有可用连接时,连接池在抛出异常前将等待的最大时间,单位毫秒。 *password - 传给JDBC驱动的数据库密码。 * url - 传给JDBC驱动的连接URL。 * user - 传给JDBC驱动的数据库用户名。 * validationQuery - 一个SQL查询语句,用于在连接被返回给应用前的连接池验证。 * 如果指定了该属性,则必为至少返回一行记录的SQL SELECT语句。 在web.xml中添加: Oracle Test App DB Connection jdbc/SampleData javax.sql.DataSource Container 写一个简单的jsp测试了一下: 1

<!--page import="java.sql.*,javax.sql.*,javax.naming.*"-->

2 3

<!-- 4Connection conn = null; 5try 6 { 7 Context ctx = new InitialContext(); 8 DataSource ds = (DataSource)ctx.lookup("java:comp/env/jdbc/SampleData"); 9 conn = ds.getConnection(); 10 System.out.println("connection pool connected !!"); 11 } catch (NamingException e) { 12 System.out.println(e.getMessage()); 13 } catch (SQLException e) { 14 System.out.println(e.getMessage()); 15 e.printStackTrace(); 16 }finally 17 { 18 conn.close(); 19 } 20-->

我就是这样连接成功了。 写的时候还是看了下々上善若水々 的博客,总感觉他的写得比较全,而我总感觉写不出比他好的,又不能写出和他不同的地方。。就这样子啦。。 PS:在查资料的时候,看到在CSDN中有位朋友谈到了JNDI的用处: JNDI不止用于数据源,其可以用于存储和获得任何类型的已命名的java对象等等. 如果使用JDBC有thin和oci两种连接方式: [先说thin] 打开数据库连接方式:DriverManager.getConnection 1 DriverManager.registerDriver(new oracle.jdbc.OracleDriver()); 2 3 Connection myConnection = DriverManager.getConnection( 4 "jdbc:oracle:thin:@test2000:1521:orac", //orac为oracle的SID 5 "user", 6 "password" 7 ); 或者用前面给出的那个 OracleDataSource myODS = new OracleDataSource(); //其属性简单明了,不难掌握 Connection myConnection = myODSgetConnection("user","password"); [再说OCI](可以使连接池中有多个缓冲的连接) 1 OracleOCIConnectionPool myOOCP = new OracleOCIConnectionPool(); 2 3 // set the attributes for the physical database connections 4 myOOCP.setServerName("test2000"); 5 myOOCP.setDatabaseName("ORCL"); 6 myOOCP.setDriverType("oci"); 7 myOOCP.setPortNumber(1521); 8 myOOCP.setUser("store_user"); 9 myOOCP.setPassword("store_password"); 10 11 // set the values for the dynamic attributes of myOOCP 12 Properties myProperties = new Properties(); 13 myProperties.put(OracleOCIConnectionPool.CONNPOOL_MIN_LIMIT,"5"); 14 myProperties.put(OracleOCIConnectionPool.CONNPOOL_MAX_LIMIT,"10"); 15 myProperties.put(OracleOCIConnectionPool.CONNPOOL_INCREMENT,"2"); 16 myProperties.put(OracleOCIConnectionPool.CONNPOOL_TIMEOUT,"30"); 17 myProperties.put(OracleOCIConnectionPool.CONNPOOL_NOWAIT,"true"); 18 myOOCP.setPoolConfig(myProperties); 19 20 // request a connection instance from myOOCP and store 21 // the connection instance in myConnection 22 OracleOCIConnection myConnection = (OracleOCIConnection) myOOCP.getConnection(); 23 这个就当是个引子,之后对JNDI有个深入的了解和认识。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值