您的位置:首页 > 数据库 > MySQL

jsp数据库基础之---从MySQL数据库中查询数据

2016-07-26 17:33 851 查看
上一篇,我们了解了jsp与MySQL数据库的连接时如何操作的,今天,我们就来将昨天建立的连接应用起来,进数据库查询数据并显示在页面上。这里的查询,是最简单的查询,并没有涉及参数化。

Step1:在昨天conDB.java的基础上,增加一个方法,名为getConnection(),用来获取数据库连接实例,以便于进行查询操作,代码如下

public Connection getConnection()
{
return this.conn;
}


完整代码如下:



Step2:在MySQL的test数据库中建立新表,名为personInfo,字段如下

字段名字段属性长度备注
idint11主键、自动编号、非空
namevarchar50非空
birthProvincevarchar50非空
表建好后,添加如下数据



Step3:在之前DataBase Connection的工程中Webcontent下新建一个页面,名为select.jsp,在表头添加初始化代码

<%@ page import="com.Database.*"%>
<%@ page import="java.sql.*"%>
Step4:建立数据库连接,执行查询语句,并返回ResultSet结果集对象
<%
conDB db = new conDB();//新建数据库连接类实例
db.connectDB();//开启与数据库的连接
Statement state = db.getConnection().createStatement();//获得数据库连接实例,并创建Statement对象
ResultSet set = state.executeQuery("select * from personInfo");//执行查询,返回ResultSet对象
%>

值得注意的是要使用connection接口的createStatement()方法返回Statement对象,这样才能发送SQL指令给数据库



完整代码如下:



Step5:使用HTML语言创建表格

<div>
<table border="1">
<thead>
<tr>
<th>ID</th>
<th>name</th>
<th>birthProvince</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>张三</td>
<td>福建</td>
</tr>
</tbody>
</table>
</div>
对应CSS样式如下

div {
width:200px;
margin:0 auto;
}
table{
text-align: center;
}


效果如下



下面,我们将静态的表格转换为动态可实时更新的

之前,我们已经将查询好的结果放在Resultset对象中了,现在我们把数据读取出来显示在屏幕上就好了



<tr>
<td>1</td>
<td>张三</td>
<td>福建</td>
</tr>


替换为

<%
while(set.next())
{
out.println("<tr><td>"+set.getString("id")+"</td><td>"+set.getString("name")+"</td><td>"+set.getString("birthProvince")+"</td></tr>");
}
%>



再次刷新页面



OK!

下面来解释一下把数据从结果集中读取出来的代码

我们使用SQL语句进数据库查询出来的结果集将存在ResultSet对象中

我们要从中逐行读取的时候,需要将“光标”移动

刚开始的时候,
ResultSet
 “光标”最初位于第一行之前,我们需要使用next()方法将其移动到第一行

然后就可以使用getString(String columnLabel)方法来读取行中列的数据了~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: