特色栏目

ASP源码

PHP源码

.NET源码

JSP源码

游戏频道
专题合集
关闭菜单
首页> JSP教程> JSP数据库操作例程(Use Bean)

JSP数据库操作例程(Use Bean)

时间:2009-07-02 17:13:24 作者:互联网
- 数据分页显示 - JDBC 2.0:ODBC
通过jdbc:odbc可以实现Jsp对数据库的操作,在这个例子中我将数据库的连接写在了一个JavaBean中,可以实现重复使用
pa***est.jsp文件:


<%@page contentType="text/html;charset=gb2312" %>
zb***.HtmlTool
"/>
zb***.Jodb"/>


数据库分页测试

<%
//定义ResultSet类
ja***sql.ResultSet rst;

//设定Odbc数据源
Jo***setConnStr("jdbc:odbc:jtest","","");

//设定Jdbc驱动程序
Jo***setDbDriver("su***dbc.odbc.JdbcOdbcDriver");

//执行Sql语句,调用Jodb类的execute方法
rs***odb.execute("select * from gbook");
%>


  <%

int startRowNum;
int pageSize=10;
rst.last();
int ro***unt=rs***etRow();
int pageCount=(rowCount+pageSize-1)/pageSize;
int intPage;
String st***ge=request.getParameter("page");
if(strPage==null)
{
intPage=1;
}
else
{
in***ge=java.lang.Integer.parseInt(strPage);
if(intPage<1)intPage=1;
if(intPage>pageCount)intPage=pageCount;
}
startRowNum=(intPage-1)*pageSize+1;
%>





数据库分页测试


<%= Ht***.getStr(Jo***pageStr(intPage,pageCount,"pa***est.jsp?","en")) %>



  
   
   
   
   
  

<%
for(int i=0;i
rs***bsolute(startRowNum+i);

if(rs***sAfterLast())
{
break;
}

%>

   
   
   
   
  
<%
}
%>
编号 姓 名 电子邮箱 留言
<%= rs***etLong("id") %>  <%= rs***etString("name") %>  <%= rs***etString("email") %>  <%= rs***etString("pnote") %> <%= rs***etRow() %>








Jo***java文件如下:

package zbean;
import java.sql.*;
//import zbean.*;

public class Jodb
{
    public String sdbdriver="su***dbc.odbc.JdbcOdbcDriver";
public String sConnStr;
public long count;
String uid;
String pwd;
Connection conn=null;
ResultSet rs=null;

public Jodb()
{
try
{
Cl***.forName(sdbdriver);
}
catch(ja***lang.ClassNotFoundException e)
{
Sy***m.err.println("Jodb():"+e.***Message());
}
}


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
{
co***DriverManager.getConnection(sConnStr,uid,pwd);
Statement st***conn.createStatement(ja***sql.ResultSet.TYPE_SCROLL_SENSITIVE,ja***sql.ResultSet.CONCUR_READ_ONLY);
rs***mt.executeQuery(sql);
}
catch(SQLException ex)
{
Sy***m.err.println("Jo***execute():"+ex***tMessage());
}
return rs;
}

public long update(String sql)
{
long x=0;
try
{
co***DriverManager.getConnection(sConnStr);
Statement st***conn.createStatement();
x=***t.executeUpdate(sql);
}
catch(SQLException ey)
{
Sy***m.err.println("Jo***update():"+ey***tMessage());
}
return x;
}

public String pageStr(int page,int pageCount,String url,String showStr)
{
//String str="Page:("+page+"/"+pageCount+")  ";
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(ppgae<1)
{ppage=1;}
*/
if(page==1){
str=str+""+nstr+" ";
str=str+""+lstr+" ";
}
if(page==pageCount){
str=str+""+fstr+" ";
str=str+""+pstr+" ";
}
if(page>1&&page str=str+""+fstr+" ";
str=str+""+pstr+" ";
str=str+""+nstr+" ";
str=str+""+lstr+" ";
}

return str;
}

public String[] split(String str,String strIn)
{
char[] temp_array;
te***array=str.toCharArray();
int st***ngth=st***ength();
int st***Length=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;j {
temp_str=temp_str+temp_array[j];
}
if(te***str.equals(strIn))
{
strInTimes++;
strIndex[ii]=i;
i=i+strInLength;
ii++;
}
else
{
i++;
}

}

if(strInTimes<1)
{
String[] back_str=null;
return back_str;
}
else
{
String back_str[]=new String[strInTimes+1];
back_str[0]=s***substring(0,strIndex[0]);
for(int k=1;k {
back_str[k]=s***substring(strIndex[k-1]+strInLength,strIndex[k]);
}
back_str[strInTimes]=s***substring(strIndex[strInTimes-1]+strInLength,st***ength());
return back_str;
}

}

}
相关文章 最新文章

相关应用

热门文章

猜你喜欢

返回顶部