程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> JSP編程 >> 關於JSP >> 數據庫的相關操作:如連接、查詢、添加、刪除、修改、分頁顯示

數據庫的相關操作:如連接、查詢、添加、刪除、修改、分頁顯示

編輯:關於JSP

數據庫的相關操作:如連接、查詢、添加、刪除、修改、分頁顯示
 
package study.database;

/**
* <p>Title: jsp(SUN企業級應用的首選)模式學習</p>
* <p>Description: 數據庫的相關操作:如連接、查詢、添加、刪除、修改</p>
* <p>Copyright: Copyright (c) 2004</p>
* <p>Company: </p>
* @author 李艷生
* @version 1.0
*/
import java.sql.*;
import java.io.*;
import java.util.*;

public class Operation {
//數據庫驅動程序
private String strDriver = "";
//數據庫連接字符串
private String strURL = "";
//數據庫用戶名
private String username = "";
//數據庫密碼
private String password = "";

private Connection conn = null;
private Statement stmt = null;
ResultSet rs = null;

/** 讀到數據庫配置信息
*/
private void loadProp(){
InputStream is = getClass().getResourceAsStream("/setup.txt");
Properties props = new Properties();

try{
props.load(is);
}catch(Exception e){
System.err.println("不能讀取配置文件. 請確保setup.txt在classes指定的路徑中");
}

Enumeration propNames = props.propertyNames();
while (propNames.hasMoreElements()) {
String name = (String) propNames.nextElement();
if (name.endsWith(".driver")) {
String poolName = name.substring(0, name.lastIndexOf("."));
strDriver = props.getProperty(poolName + ".driver");
strURL = props.getProperty(poolName + ".url");
username = props.getProperty(poolName + ".user");
password = props.getProperty(poolName + ".password");
}
}
}

/** 在創建Operation對象時連接數據庫
*/
public Operation() {
//讀到數據庫配置信息
loadProp();

try{
Class.forName(strDriver);
}catch(java.lang.ClassNotFoundException e) {
System.err.println("數據庫連接錯誤:" + e.getMessage());
}

try{
conn=DriverManager.getConnection(strURL,username,password);
}catch(SQLException ex) {
System.err.println("數據庫連接錯誤:" + ex.getMessage());
}
}

/** 數據庫查詢
* sql:SQL查詢語句
*/
public ResultSet query(String sql) {
try{
stmt=conn.createStatement();
rs=stmt.executeQuery(sql);
}catch(SQLException ex) {
System.err.println("數據庫查詢錯誤:" + ex.getMessage());
}

return rs;
}

/** 數據庫添加、修改、刪除
* sql:SQL語句
*/
public void update(String sql) {
try{
stmt=conn.createStatement();
stmt.executeUpdate(sql);
}catch(SQLException ex) {
System.err.println("數據庫更新錯誤:"+ex.getMessage());
}
}

/** 得到查詢結果的總記錄數
* rs:查詢結果集
*/
public int totalRecord(ResultSet rs) throws Exception{
int total=0;
//指針移到最後一條記錄上
rs.last();
total = rs.getRow();
rs.first();

return total;
}

/** 分頁顯示
* currPage: 當前頁數
* pageSize: 頁大小
* pageCount: 總頁數
* filename: 使用分頁的文件名(文件名後面要加?,多個參數以&分開,有參數的最後以&結束)
* http://www.knowsky.com/ 返回字符串: <a href="filename?page=當前頁數">
*/
public String showPages(int currPage, int pageSize, int pageCount, String filename){
String addr;

addr = "<table width=100% border=0 align=center cellpadding=0 cellspacing=0><form method=Post name=pageform><tr><td><div align=right>當前第<strong><font color=red>" + currPage + "</font></strong>頁 " +
"共<strong><font color=red>" + pageCount + "</font></strong>頁每頁<strong><font color=red>" + pageSize + "</font></strong>條 ";

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved