Resin:数据库连接
来源:互联网 发布:昆明餐饮软件 编辑:程序博客网 时间:2024/04/30 02:20
前言:在web编程中,数据库连接一直是比较头疼的问题,数据库连接的好坏直接影响到整个网站访问速度的快慢。
目前,在网站建设当中,使用jsp/java servlet/java bean作为动态页面编程已经越来越得到大家的认可。作为免费的web服务器Resin成为中小型站点搭建的选择之一。我选择的是免费数据库mysql。
Resin现在的版本为3.x,它自己本身提供了连接池,配置如下:
resin.conf
<resin>
……
<database>
<jndi-name>jdbc/mysql</jndi-name> //jndi-name
<driver type="org.gjt.mm.mysql.Driver"> //mysql驱动driver
<url>jdbc:mysql://localhost:3306/test</url> //url
<user>root</user> //数据库连接用户名
<password></password> // 密码
</driver>
<prepared-statement-cache-size>8</prepared-statement-cache-size>
<max-connections>20</max-connections> //最大连接数为20
<max-idle-time>30s</max-idle-time>
</database>
……
</resin>
配置好resin.conf,重新启动resin服务器。下面我们就可以编写代码连接数据库了。
用java bean编写代码:
package com.ewe.mysql;
import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.sql.DataSource;
import javax.naming.Context;
import javax.naming.InitialContext;**
* Title: DBConnection.class
* Description: connection mysql
* Copyright: Copyright (c) 2004
* Company: www.ewe.com.cn
* @author bluesunny <hyjun2001@163.com>
*/public class DBConnection {
private Connection con = null;
private Statement stmt = null;
private ResultSet rs = null;
private int resultNum=0;/**
* 构造函数
* 找到数据源,并用这个数据源创建连接
*/
public DBConnection() {
try {
Context initCtx = new InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");
DataSource ds = (DataSource)envCtx.lookup("jdbc/mysql");
con = ds.getConnection();
} catch (Exception ex) {
throw new Exception("Couldn't open connection to database: " + ex.getMessage());
}}
/**
* 执行SQL语句:查询记录
* @param sql SQL语句
* @return ResultSet 记录集
*/
public ResultSet executeQuery(String sql) {
rs = null;
try {
if(con==null) con = ds.getConnection();
stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
rs = stmt.executeQuery(sql);
} catch(SQLException se) {
System.out.println("Query error:" + se.getMessage());
}
return rs;
}/**
* 执行SQL语句 :插入与更新记录
* @param sql SQL语句
* @return int resultNum 更新的记录数
*/
public boolean executeUpdate(String sql) {
resultNum=0;
try {
if(con==null) con = getConnection();
stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
this.resultNum = stmt.executeUpdate(sql);
return true;} catch (SQLException se) {
System.err.println("Update error:" + se.getMessage());
return false;
}
}
/**
* 关闭连接
*/
public void close() {
try {
if (rs != null) {
rs.close();
rs = null;
}
if (stmt != null) {
stmt.close();
stmt = null;
}
if (con != null) {
con.close();
con = null;
}
} catch (SQLException se) {
System.out.println("close error: " + se.getMessage());
}
}
}
好了,到这里,大功算是告成了,下面我们可以写一个jsp页面来测试它,在jsp页面调用这个java bean类,具体的代码略过。
注意:1 . 记得及时关闭数据库连接 2 . 这样的数据库连接可以做为中小型网站 之用,对于大型网站不适合。
- Resin:数据库连接
- Resin配置数据库连接池
- resin数据库连接池配置
- Resin 服务器配置Mysql数据库连接
- 如何在 resin下配置数据库连接池
- tomcat/resin使用全局数据库连接池资源
- 如何在 resin下配置数据库连接池
- JDBC:配置resin中的数据库连接池
- tomcat/resin使用全局数据库连接池资源
- IIS+Resin集成多个站点和数据库连接池
- IIS+Resin集成多个站点和数据库连接池
- resin
- Resin
- resin
- resin
- Eclipse配合Resin开发web,附加mysql数据库连接池配置设置整合与测试
- Eclipse配合Resin开发web,附加mysql数据库连接池配置设置整合与测试
- Mac服务器搭建以及MySQL数据库连接:Apache(Tomcat,Resin),PHP,MYSQL,Navicat
- .Net 实现纳秒级别计算
- 好了,blog激活了
- “雕塑”系统,开放式软件项目协作平台
- “NGNcalc2x项目”详细设计文档:《NGNcalc2x开发手册附件》
- 《如何开放你的项目,获得更多“援助者”的支持》
- Resin:数据库连接
- 《“灯谜”系统--“定单”辅助产生系统》
- 误人子弟、垃圾文章大集合
- 《“雕刻”--“雕塑”系统操作设计》
- 大家好!
- 今天学到的,字段截取时间,字段连接方式
- 在Linux下访问MS SQL Server数据库(转)
- 《“雕塑”系统建造计划》(寻求志同道合的朋友一同发展)
- 读书笔记《测试驱动开发》