测试glassfish配置的mysql数据库连接池

本文介绍如何在GlassFish服务器上配置MySQL数据库连接池,并通过示例代码展示如何在JSP页面中使用此连接池来查询数据库。

 启动glassfish服务器,在浏览器地址栏中通过 http://localhost:4848登陆到管理页面。

在 "资源 ->JDBC->JDBC 资源" 页面中新建jndi,填写新的jndi名称,并选择已经配置完都数据池。

如下: 新建名称: jdbc/MySQlPool

池名称: MySQlConnPool

状态: 已启用

 

 --------------------------------------------------------------------------

 

配置后在在domain1/config/domain.xml中会新加一行:

 这个jndi-name里都字符串就是我们今后在jsp中直接可以使用都连接名称,通

过Context类中的lookup方法,得到一个DataSource 。

再使用DataSource 的getConnection()方法,直接就返回一个Connection对象。

接下来都就是JDBC的操作了。

使用后需要关闭Connection对象。

 

-----------------------------------------------------------------------------------

 


在NetBeans中新建项目中,使用Java Web类别,选择一个web应用程序
index.jsp如下

 
 
<%@ page contentType="text/html; charset=gb2312"%>
<%@ page import="javax.naming.*" %>
<%@ page import="javax.sql.*" %>
<%@ page import="java.sql.*" %>
<html>
    <head>
          <title>JSP测试glassfish配置的mysql数据库连接池</title>
    </head>
    <body>
        <h1>测试glassfish配置的mysql数据库连接池</h1>
      <%
    Connection conn=null;
    Statement stmt=null;
    ResultSet rs=null;
    ResultSetMetaData md=null;
    try
    {
        Context initCtx=new InitialContext();
        DataSource ds=(DataSource)initCtx.lookup("jdbc/MySQlPool");
        if(ds!=null) {
            out.println("已经获得DataSource连接<br>");
            out.println(ds.toString()+"<br>");
            conn=ds.getConnection();
            stmt=conn.createStatement();
            out.println("DataSource连接成功!<p>");
            rs=stmt.executeQuery("select * from person");
            md=rs.getMetaData();
            out.println("<table border=1  width=80% align=center bgcolor=#ffdddd>");
            out.println("<tr>");
            for(int i=0;i<md.getColumnCount();i++) {
                out.println("<td>"+md.getColumnName(i+1)+"</td>");
            }
            while(rs.next()) {
                out.println("<tr>");
                out.println("<td>"+rs.getString(1)+"</td>");//可能要减少字段
                out.println("<td>"+rs.getString(2)+"</td>");
                out.println("<td>"+rs.getString(3)+"</td>");
                out.println("</tr>");
            }
            out.println("</table>");
            conn.close();
        }
    }
    catch(Exception e)
    {
    out.println(e.toString());   
    }
%>
    </body>
</html>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值