JSP数据库操作例程(Use Bean)
导读:收集整理的这篇文章主要介绍了JSP数据库操作例程(Use Bean ,觉得挺不错的,现在分享给大家,也给大家做个参考。 - 数据分页显示 - JDBC 2.0:ODBC 通过jdbc:o...
收集整理的这篇文章主要介绍了JSP数据库操作例程(Use Bean),觉得挺不错的,现在分享给大家,也给大家做个参考。 - 数据分页显示 - JDBC 2.0:ODBC 通过jdbc:odbc可以实现Jsp对数据库的操作,在这个例子中我将数据库的连接写在了一个JavaBean中,可以实现重复使用
pagetest.jsp文件:
!DOCTYPE HTML PubLIC "-//W3C//DTD HTML 4.0 TransITional//EN">
%@page contentType="text/html; charset=gb2312" %>
jsp:useBean id="Htool" scope="session" class="zbean.HtmlTool"/>
jsp:useBean id="Jodb" scope="session" class="zbean.Jodb"/>
html>
head>
title> 数据库分页测试/title>
/head>
%
//定义ResultSet类
java.SQL.ResultSet rst;
//设定Odbc数据源
Jodb.setConnStr("jdbc:odbc:jtest","","");
//设定Jdbc驱动程序
Jodb.setDbDriver("sun.jdbc.odbc.JdbcOdbcdriver");
//执行Sql语句,调用Jodb类的execute方法
rst=Jodb.execute("select * From gBook");
%>
%
int startRowNum;
int pageSize=10;
rst.last();
int rowcount=rst.getRow();
int pageCount=(rowCount+pageSize-1)/pageSize;
int intPage;
String strPage=request.getParameter("page");
if(strPage==null)
{
intPage=1;
}
else
{
intPage=java.lang.Integer.parseint(strPage);
if(intPage1)intPage=1;
if(intPage> pageCount)intPage=pageCount;
}
startRowNum=(intPage-1)*pageSize+1;
%>
body>
div align="center">
center>
p> 数据库分页测试/p>
p> %= Htool.getStr(Jodb.pageStr(intPage,pageCount,"pagetest.jsp?","en")) %> /p>
table border="1" width="600" bordercolorlight="#000000" cellspacing="0" cellpadding="2" bordercolordark="#FFFFFF">
tr>
td width="49"> font size="2"> 编号/font> /td>
td width="91"> font size="2"> 姓 名/font> /td>
td width="174"> font size="2"> 电子邮箱/font> /td>
td width="250"> font size="2"> 留言/font> /td>
/tr>
%
for(int i=0; ipageSize; i++){
rst.absolute(startRowNum+i);
if(rst.isAfterLast())
{
break;
}
%>
tr>
td width="49"> %= rst.getLong("id") %> /td>
td width="91"> %= rst.getString("name") %> /td>
td width="174"> %= rst.getString("email") %> /td>
td width="250"> %= rst.getString("pnote") %> %= rst.getRow() %> /td>
/tr>
%
}
%>
/table>
/center>
/div>
/body>
/html>
Jodb.java文件如下:
package zbean;
import java.sql.*;
//import zbean.*;
public class Jodb
{
public String sdbdriver="sun.jdbc.odbc.JdbcOdbcDriver";
public String sConnStr;
public long count;
String uid;
String pwd;
Connection conn=null;
ResultSet rs=null;
public Jodb()
{
try
{
Class.forName(sdbdriver);
}
catch(java.lang.ClassNotFoundException e)
{
System.err.PRintln("Jodb():"+e.getMessage());
}
}
public void setDbDriver(String y)
{
sdbdriver=y;
}
public void setConnStr(String x,String z,String a)
{
sConnStr=x;
uid=z;
pwd=a;
}
public ResultSet execute(String sql)
{
rs=null;
try
{
conn=DriverManager.getConnection(sConnStr,uid,pwd);
statement stmt=conn.createStatement(java.sql.ResultSet.TYPE_SCROLL_SENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);
rs=stmt.executeQuery(sql);
}
catch(SQLException ex)
{
System.err.println("Jodb.execute():"+ex.getMessage());
}
return rs;
}
public long update(String sql)
{
long x=0;
try
{
conn=DriverManager.getConnection(sConnStr);
Statement stmt=conn.createStatement();
x=stmt.executeUpdate(sql);
}
catch(SQLException ey)
{
System.err.println("Jodb.update():"+ey.getMessage());
}
return x;
}
public String pageStr(int page,int pageCount,String url,String showStr)
{
//String str="Page:("+page+"/"+pageCount+")& nbsp; & nbsp; ";
String str="";
String fstr;
String pstr;
String nstr;
String lstr;
//int page=currPage;
//int pageCount=pageCt;
if(showStr=="cn")
{
fstr="第一页";
pstr="上一页";
nstr="下一页";
lstr="最末页";
}
else if(showStr=="en")
{
fstr="First";
pstr="Previous";
nstr="Next";
lstr="Last";
}
else
{
String[] temp_array=split(showStr,",");
if(temp_array==null)
{
str="Please input String like: "First,Previous,Next,Last"";
return str;
}
fstr=temp_array[0];
pstr=temp_array[1];
nstr=temp_array[2];
lstr=temp_array[3];
}
/*
int npage;
npgae=page+1;
int ppage;
ppage=page-1;
if(npage> pageCount)
{ npae=pageCount; }
if(ppgae1)
{ ppage=1; }
*/
if(page==1){
str=str+"a href="+url+"page="+(page+1)+"> "+nstr+"/a> & nbsp; ";
str=str+"a href="+url+"page="+pageCount+"> "+lstr+"/a> & nbsp; ";
}
if(page==pageCount){
str=str+"a href="+url+"page=1> "+fstr+"/a> & nbsp; ";
str=str+"a href="+url+"page="+(page-1)+"> "+pstr+"/a> & nbsp; ";
}
if(page> 1& & pagepageCount){
str=str+"a href="+url+"page=1> "+fstr+"/a> & nbsp; ";
str=str+"a href="+url+"page="+(page-1)+"> "+pstr+"/a> & nbsp; ";
str=str+"a href="+url+"page="+(page+1)+"> "+nstr+"/a> & nbsp; ";
str=str+"a href="+url+"page="+pageCount+"> "+lstr+"/a> & nbsp; ";
}
return str;
}
public String[] split(String str,String strIn)
{
char[] temp_array;
temp_array=str.toCharArray();
int strlength=str.length();
int strInLength=strIn.length();
int strInTimes=0;
int strIndex[]=new int[strLength];
int i=0;
int ii=0;
while(i=strLength-strInLength)
{
String temp_str="";
for(int j=i; ji+strInLength; j++)
{
temp_str=temp_str+temp_array[j];
}
if(temp_str.equals(strIn))
{
strInTimes++;
strIndex[ii]=i;
i=i+strInLength;
ii++;
}
else
{
i++;
}
}
if(strInTimes1)
{
String[] back_str=null;
return back_str;
}
else
{
String back_str[]=new String[strInTimes+1];
back_str[0]=str.substring(0,strIndex[0]);
for(int k=1; kstrInTimes; k++)
{
back_str[k]=str.substring(strIndex[k-1]+strInLength,strIndex[k]);
}
back_str[strInTimes]=str.substring(strIndex[strInTimes-1]+strInLength,str.length());
return back_str;
}
}
} 您可能感兴趣的文章:
- jsp读取数据库实现分页技术简析
- JSP连接MySql/MS SQL Server/Oracle数据库连接方法[整理]
- JSP如何连接DB2数据库
- Jsp连接Access数据库(不通过建立ODBC数据源的方法)
- JSP连接Access数据库
- 加快JDBC设计中JSP访问数据库
- JSP数据库操数据分页显示
- 在JSP中访问Oracle数据库
- jsp连接数据库大全
- 如何使用JSP连接DB2数据库
- JSP学习之数据库开发小结
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: JSP数据库操作例程(Use Bean)
本文地址: https://pptw.com/jishu/604554.html
