zoukankan      html  css  js  c++  java
  • 配置文件来连接数据库(Mysql)

    转载:C博客:独孤雄

     使用配置文件来连接数据库,专业术语来说即连接池。

    连接池是负责分配管理和释放数据库连接,它允许用程序重复使用一个现有的数据库连接而不再重复建立连接,

    释放空闲时间超过最大空闲时间的数据库连接以避免因为没有释放数据库而引起的数据库遗漏。

    连接池的创建分为以下几个步骤:

    1.配置context.xml文件(tomcat/conf)。

     1 <Resource name="jdbc/databasename" 
     2     auth="Container"
     3     type="javax.sql.DataSource" 
     4     driverClassName=“com.mysql.jdbc.Driver" 
     5     url="jdbc:mysql://127.0.0.1:3306/databasename" 
     6     username=“数据库用户名"           
     7     password=“用户密码"
     8     maxActive="100" 
     9     maxIdle="30"              
    10     maxWait="10000" 
    11 />

    2:数据库的驱动包放入服务器的lib文件夹中

    3:从MyEclipse中取得这样的连接,具体代码如下

     1 package com.upc.dao;
     2 
     3 import java.sql.Connection;
     4 import java.sql.ResultSet;
     5 import java.sql.Statement;
     6 
     7 import javax.naming.Context;
     8 import javax.naming.InitialContext;
     9 import javax.sql.DataSource;
    10 
    11 public class DBConnection {
    12 
    13     protected Connection conn;
    14     protected Statement ps;
    15     protected ResultSet rs;
    16     protected String sql;
    17     
    18     public Connection getConn(){
    19         try {
    20             Context context=new InitialContext();
    21             DataSource ds=(DataSource)context.lookup("java:comp/env/jdbc/数据库名称");
    22             return ds.getConnection();
    23         } catch (Exception e) {
    24             e.printStackTrace();
    25             return null;
    26         }
    27     }
    28     public void closeAll(Connection conn,Statement stmt,ResultSet rs){
    29         try {
    30             if(rs!=null){
    31                 rs.close();
    32                 rs=null;
    33             }
    34             if(stmt!=null){
    35                 stmt.close();
    36                 stmt=null;
    37             }
    38             if(conn!=null){
    39                 conn.close();//连接池执行con.close并不会关闭与数据库的TCP连接,而是将连接还回到池中去
    40                              //如果不close掉的话,这个连接将会一直被占用,直至连接池中的连接耗尽为止
    41                 conn=null;
    42             }
    43         } catch (Exception e) {
    44             e.printStackTrace();
    45         }
    46     }
    47 }

    之后便可以建立业务类从而对数据库进行操作

  • 相关阅读:
    修改linux下某一个文件夹下所有文件内容
    jenkins对结果进行断言问题
    linux 循环处理文件夹下所有文件脚本
    LR java Vuser 相关依赖JAR包,配置文件处置方法
    Jmeter函数 唯一取值 笔记
    jmeter+java vuser+rmi+dubbo脚本
    eclipse快捷键
    猫狗队列
    用固定长度的数组实现stack queue
    两个单链表相交的问题
  • 原文地址:https://www.cnblogs.com/-rfq/p/7105921.html
Copyright © 2011-2022 走看看