java web中jsp连接mysql数据库 以及数据库连接池的使用

时间:2022-04-27 14:18:04

将mysql-connector-java-5.1.6-bin.jar导入到tomcat的lib目录下。

在java项目中,只需要引入mysql-connector-java-5.1.6-bin.jar就可以运行java项目。

在web项目中,当Class.forName("com.mysql.jdbc.Driver");时myeclipse是不会去查找字符串,不会去查找驱动的。所以只需要把mysql-connector-java-5.1.6-bin.jar拷贝到tomcat下lib目录就可以了。

在jsp页面中导入

<%@page import="java.sql.SQLException" %>
<%@page import="java.sql.Connection"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Driver"%>

连接数据库

<%
        try{
            Class.forName("com.mysql.jdbc.Driver");
            }catch(Exception e){
                e.printStackTrace();
                }
                try {
            Connection connection=DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "123456");
            out.println("数据库连接成功!");
            connection.close();
        } catch (Exception e) {
            out.println("数据库连接失败");
        }
%>



下面是在tomcat7中配置数据源和连接池

JNDI:是一种将对象和名字绑定的技术,容器生产出对象,都和唯一的名字绑定,外部程序可以通过名字来获取该对象。

首先跟上面一样将mysql-connector-java-5.1.6-bin.jar放到tomcat的lib文件下,然后在WebRoot/META-INF下创建一个名为context.xml的配置文件

<?xml version="1.0" encoding="UTF-8"?>
<Context path="/dbtom" docBase="dbtom" reloadable="true" crossContext="true">
<Resource
    name="jdbc/books"
    auth="Container"                                      //两个可选值:Container和Application前者表示用容器创建,后者表示用web应用来创建和管理Resource。
    type="javax.sql.DataSource"                      //指定Resource所属的Java类名
    maxActive="100"
    maxIdle="30"
    maxWait="10000"
    username="root"
    password="123456"
    driverClassName="com.mysql.jdbc.Driver"
    url="jdbc:mysql://localhost:3306/test"/>
</Context>


 <%
try{
Context initContext = new InitialContext();
Context envContext = (Context)initContext.lookup("java:/comp/env");
DataSource ds = (DataSource)envContext.lookup("jdbc/books");
Connection conn = ds.getConnection();
out.print("连接成功");
conn.close();
}catch(Exception e){
out.print("error");
}
%>