您的位置:首页 > 数据库

JSP初学者数据库教程(一)查询

2007-12-28 10:22 316 查看
首先声明,本人亦是JSP新手,只是想把自己在学习J2EE所遇到的很常见的问题发给大家,希望对新手有一定的作用,共同学习!

环境:Win XP,SQL Serer2000 SP4, JDBC for SQL Serer2000 SP3, tomcat5.0.28

(关于环境变量的配置,和驱动程序的配置,请参阅本人“JSP连接SQL Server 2000”)

(自己用SQLServer 建立一个数据库,名字为“369”,在里面建立一个表,名字是“tb_stu”)

数据库的查询操作:

代码如下:

<%@ page contentType="text/html;charset=gb2312" language="java" import="java.lang.*, java.io.*, java.sql.*, java.util.*" errorPage=""%>

<html>
<head>
<title> DB bian li</title>
</head>

<body>

<% Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=369";
String user="sa";
String password="";
Connection conn=DriverManager.getConnection(url,user,password);//创建连接
int rowcount;
int introw;
int row;
java.lang.String strrow;
strrow=request.getParameter("row");//取得待显示记录的行码
if(strrow==null)//即QueryString里没有strrow这个参数,此时只显示地一条记录
{
introw=1;

}
else
{
introw=java.lang.Integer.parseInt(strrow);
if(introw<1) introw=1;
}

Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from tb_stu";
ResultSet rs=stmt.executeQuery(sql);
rs.last();//指针指向结果集最后一条记录
rowcount=rs.getRow();//获取记录总数
if(introw>rowcount)
introw=rowcount;//如果introw大于表中记录数,显示最后一记录
if(rowcount>0)
{
rs.absolute(introw);//将指针定位到待显示的记录行上
}
%>
<!--显示数据-->

<tr>
<td><%=rs.getString("name")%></td>
<td><%=rs.getString("age")%></td>
<td><%=rs.getString("sno")%></td>
</tr>
</table>
<hr>
<div align="center">
<p>tb_stu表中共有<font soze="4" color="#ff0000"><%=rowcount%></font>条记录,这是第<font soze="4" color="#ff0000"><%=introw%></font>条记录</p>
<p><a href="everyrecord.jsp?row=1">第一条记录</a>  
<%if(introw<rowcount){%>
<a href="everyrecord.jsp?row=<%=introw+1%>">下条记录  </a>
<%}%>
<%if(introw>1){%>
<a href="everyrecord.jsp?row=<%=introw-1%>">上一条记录</a>
  
<%}%>
<a href="everyrecord.jsp?row=<%=rowcount%>">最后一条记录</a>
<%
rs.close();
stmt.close();
conn.close();
%>
</div>

</body>
</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: