使用jdbc连接数据库,关于jdbc详解可以点击:http://wenku.baidu.com/link?url=U68zgjEvwpaXXl_JI7XYN2oW7pJ3UrpVFKwYlSPhygTmWfjbgwQ-mPeockzVTmwr9gqR0Yggee0u06PrEMoOEHNI5DLA9HUwCjP_nvEcvRa,以下有几个实例分别为,jsp连接数据库、获取一个表中字段的个数和名字、数据的遍历和定位、分页显示记录;
一、jsp连接数据库
代码如下:

结果如下:

二、获取一个表中字段的个数和名字
通过connection类的getMetaData()方法可以获取本连接相关的数据库元数据,返回一个DatabaseMetaData对象
�例如:DatabaseMetaDatametadata=con.getMetaData();
通过DatabaseMetaData类的getColumns( )可以获取指定表的属性列信息,返回一个结果集合ResultSet对象,结果集中有4列,行数由属性列的个数决定
例如:�将student表的字段信息以行列的形式存储在一个ResultSet对象中,
ResultSettableMessage=metadata.getColumns(null,null,"student",null);
通过ResultSet对象中getXxx()方法可以查看该行中属性列的信息
若student表有n个字段(n个列属性),tableMessage就刚好有n行,每行4列。每列分别含有信息的次序为"数据库名"、"数据库扩展名"、"表名"、"字段名"。student表有4个字段,那么上述tableMessage有4行,每行有4列。
tableMessage对象调用next方法使游标向下移动一行(游标的初始位置在第1行之前),然后tableMessage调用getXxx方法可以查看该行中列的信息,其中最重要的信息是第4列,该列上的信息为字段的名字。更多DataBaseMetaData对象的讲解,请点击:http://blog.csdn.net/sdliubo/article/details/6546889。实例如下:
代码片段一:

代码片段二:

结果:

三、数据的遍历和定位
除了下面例子中介绍的方法外,ResulSet对象还有以下方法:isAfterLast()判断游标是否在结果集的最后一行后面,返回类型为boolean类型;isBeforeFirst()判断游标是否在结果集的第一行的前面,返回类型为boolean类型;isFirst()判断游标是否在结果集的第一行上,返回类型为boolean类型;next()将游标从当前位置向下移动一行,返回类型为boolean类型;first()将游标移至结果集中的第一行,返回类型为boolean类型;close()立即释放此ResulSet对象的数据库和jdbc资源,无返回类型;实例如下:
代码片段一:

代码片段二:

运行结果如下:

四、分页显示记录
这个实例是上个实例的延伸,一个难点在于当获取到要显示的页数后将结果集的指针定位到该页的第一行,另一个难点在于显示页面时是否显示下一行条件的判断;实例如下:
代码片段一:

代码片段二:

结果如下:

网友评论