[转] servlet 连接池代码 (三)

此博客展示了TestServlet类的代码,该类继承自HttpServlet。在service方法中,通过DBConnectionManager获取数据库连接,执行SQL查询语句“select * from user”,并将查询结果输出到页面。若无法获取连接则给出提示,最后释放连接资源。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

/*
 * TestServlet.java
 * Created on 2005-1-29
 */

package servlet;

import java.io.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
import db.DBConnectionManager;

/**
 * @author Yewberry
 */

public class TestServlet extends HttpServlet {
 
 private DBConnectionManager connMgr;
 
 public void init(ServletConfig conf)
  throws ServletException {
   super.init(conf);
   connMgr = DBConnectionManager.getInstance();
 }
 
 public void service(HttpServletRequest req,
   HttpServletResponse res) throws IOException {

  res.setContentType("text/html; charset=GBK");
  res.setHeader("Content-Language", "zh");

  String sql = "select * from user";
   PrintWriter out = res.getWriter();
   Connection con = connMgr.getConnection("testDB");
   
   if (con == null) {
    out.println("不能获取数据库连接.");
    //out.println("Can't get DB connection!");
    return;
   }
   ResultSet rs = null;
   ResultSetMetaData md = null;
   Statement stmt = null;
   try {
    stmt = con.createStatement();
    rs = stmt.executeQuery(sql);
    md = rs.getMetaData();
    out.println("<H3>软件列表</H3>");
    while (rs.next()) {
     for (int i = 1; i <= md.getColumnCount(); i++) {
      out.print(rs.getString(i) + ", ");
     }
     out.println("<br>");
    }
    stmt.close();
    rs.close();
   } catch (SQLException e) {
    e.printStackTrace(out);
   }
   connMgr.freeConnection("testDB", con);
 }

 public void destroy() {
   connMgr.release();
  super.destroy();
 }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值