1.配置Tomcat數據源

DBCP數據源與應用服務器整合使用—— 配置Tomcat數據源

查看Tomcat文檔(Tomcat-->TomcatDocument-->JNDI Resources-->定位到JDBC Data Sources),示例代碼:java

<Resource name="jdbc/datasource" auth="Container"  type="javax.sql.DataSource" username="root" password="root"  driverClassName="com.mysql.jdbc.Driver" 
url="jdbc:mysql://localhost:3306/jdbc"  maxActive="8" maxIdle="4"  /> 
<Resource name="jdbc/EmployeeDB " auth="Container" type="javax.sql.DataSource" 
username="root" password="root"  driverClassName="com.mysql.jdbc.Driver" 
url="jdbc:mysql://localhost:3306/jdbc"  maxActive="8" maxIdle="4"  /> 
</Context>
複製代碼

放置位置:在MyEclipse中,在目錄/META-INF/下建立文件context.xml,將上述內容粘貼其中(注:不要寫XML文件的指令頭句)。該文件將被髮布到Tomcat服務器的conf\Catalina\localhost目錄中,並以工程名稱 命名該文件。mysql

下面是調用JNDI,獲取存儲在JNDI容器中的資源的固定格式代碼git

Context initCtx = new InitialContext(); 
Context envCtx = (Context) initCtx.lookup("java:comp/env"); 
dataSource = (DataSource)envCtx.lookup("jdbc/datasource"); 
複製代碼

特別提醒:此種配置下,驅動jar文件需放置在tomcat的lib下 能夠建立工具類JDBCUtils,java來封裝上面獲取鏈接的代碼。 Demo樣例: 封裝JNDI調用DataSource 獲取鏈接的代碼。 複製代碼github

public class JdbcUtils_Tomcat {
         private static DataSource ds;
         static {
             try {
                 Context initCtx = new InitialContext();
                 Context envCtx = (Context) initCtx.lookup("java:comp/env");
                 ds = (DataSource) envCtx.lookup("jdbc/EmployeeDB");
             } catch (Exception e) {
                 throw new RuntimeException(e);
             }
         }
         public static Connection getConnection() throws SQLException{
             return ds.getConnection();
         }
     }
複製代碼

WiHongNoteBooksql

相關文章
相關標籤/搜索