在数据库提取部分数据,在JSP上显示的做法如下:
思路:1、创建db连接 2、创建statement 3、执行查询 4、遍历结果并展示
完整代码如下:
<span style="font-size:12px;"><span style="font-size:14px;"><%@ page language="java" import="javasql,javaio,javautil"%>
<%@ page contentType="text/html;charset=utf-8"%>
<html>
<head>
<style type="text/css">
table {
border: 2px #CCCCCC solid;
width: 360px;
}
td,th {
height: 30px;
border: #CCCCCC 1px solid;
}
</style>
</head>
<body>
<%
//驱动程序名
String driverName = "commysqljdbcDriver";
//数据库用户名
String userName = "root";
//密码
String userPasswd = "szy";
//数据库名
String dbName = "studentmanage";
//表名
String tableName = "student";
//联结字符串
String url = "jdbc:mysql://localhost:3306/" + dbName + "user="
+ userName + "&password=" + userPasswd;
ClassforName("commysqljdbcDriver")newInstance();
Connection connection = DriverManagergetConnection(url);
Statement statement = connectioncreateStatement();
String sql = "SELECT FROM " + tableName;
ResultSet rs = statementexecuteQuery(sql);
%>
<br>
<br>
<table align="center">
<tr>
<th>
<%
outprint("学号");
%>
</th>
<th>
<%
outprint("姓名");
%>
</th>
<th>
<%
outprint("专业");
%>
</th>
<th>
<%
outprint("班级");
%>
</th>
</tr>
<%
while (rsnext()) {
%>
<tr>
<td>
<%
outprint(rsgetString(1));
%>
</td>
<td>
<%
outprint(rsgetString(2));
%>
</td>
<td>
<%
outprint(rsgetString(3));
%>
</td>
<td>
<%
outprint(rsgetString(4));
%>
</td>
</tr>
<%
}
%>
</table>
<div align="center">
<br> <br> <br>
<%
outprint("数据查询成功,恭喜你");
%>
</div>
<%
rsclose();
statementclose();
connectionclose();
%>
</body>
</html></span><span style="font-size:24px;color: rgb(255, 0, 0);">
</span></span>
数据库数据返回到jsp页面上的实现方法:
思路:
1、建立jdbc数据库连接
2、创建Statement 对象
3、执行sql,处理返回的结果集
4、循环迭代展示
完整代码如下:
<%@ page import="javasql" %>
<% ClassforName("sunjdbcodbcJdbcOdbcDriver"); %>
<HTML>
<HEAD>
<TITLE>The tableName Database Table </TITLE>
</HEAD>
<BODY>
<H1>The tableName Database Table </H1>
<%
//建立jdbc数据库连接
Connection connection = DriverManagergetConnection(
"jdbc:odbc:data", "Steve", "password");
//创建Statement 对象
Statement statement = connectioncreateStatement() ;
//执行sql,处理返回的结果集
ResultSet resultset =
statementexecuteQuery("select from tableName") ;
%>
<TABLE BORDER="1">
<TR>
<TH>ID</TH>
<TH>Name</TH>
<TH>City</TH>
<TH>State</TH>
<TH>Country</TH>
</TR>
// 循环处理,迭代展示
<% while(resultsetnext()){ %>
<TR>
<TD> <%= resultsetgetString(1) %></td>
<TD> <%= resultsetgetString(2) %></TD>
<TD> <%= resultsetgetString(3) %></TD>
<TD> <%= resultsetgetString(4) %></TD>
<TD> <%= resultsetgetString(5) %></TD>
</TR>
<% } %>
</TABLE>
</BODY>
</HTML>
上面的给出了jsp内嵌java的最初模式,现在一般是三层结构了即MVC结构,就这个例子我来给你解释下是怎么做的,java对连接数据库提供了统一的接口,各个数据库厂商根据提供的接口规范开发自己的连接方法顺序如下:1、用ClassforName()方法加载驱动:ClassforName("commicrosoftjdbcsqlserverSQLServerDriver")newInstance(); 黑体部分为数据库厂商自己开发的驱动。2、定义好连接数据库的url地址,连接串String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs";黑体部分为固定写法不用理会。回到你最初的问题,如何创建数据库,这里你可以去baidu下每个数据库创建的方法,一般数据库安装的时候都有默认的数据库名,和对应的系统管理员工号和密码,DatabaseName=pubs这里说明sql serv 2000中建立了一个名字叫pubs的数据库jdbc:microsoft:sqlserver://localhost:1433固定写法唯一不同的是1433端口号,可能你在安装sql serv 2000的时候改变了该端口号为1500那么这里就应该为jdbc:microsoft:sqlserver://localhost:15003、定义好DatabaseName=pubs的登录用户名和密码 String user="sa";用户名
String password="";密码4、创建Connection对象,通过调用DriverManagergetConnection方法获得。 Connection conn= DriverManagergetConnection(url,user,password);黑体部分就是你定义好的连接串,用户名,密码,不可改变顺序。到这里为止数据库就连接上了,但是连接好了数据库还要做点什么,比如打印出来,接下看。5、通过获得的Connection对象conn创建Statement 对象stmtStatement stmt=conncreateStatement(ResultSetTYPE_SCROLL_SENSITIVE,ResultSetCONCUR_UPDATABLE);黑体部分是定义ResultSet的一些属性的,具体含义可以参考JDK的api。6、定义好你准备取得数据的sql语句,比如下面 select from test说明想从test表中取得所有的数据,关于sql语句可以去查找相关数据库资料。 String sql="select from test";定义好语句后,就用上一步创建好的Statement 对象stmt来执行这个sql语句,并返回一个ResultSet对象。
ResultSet rs=stmtexecuteQuery(sql);执行完这步后rs中已经取得了test表所有的数据,那么接下来要展现在网页上。7、rsnext()对你取得的记录集做一个循环直到没有值为止,rsgetString(1)代表你test表中的第一个字段rsgetString(2)代表你test中的第二个字段,如果还有更多字段可以继续rsgetString(3)rsgetString(N) while(rsnext()) {%>
您的第一个字段内容为:<%=rsgetString(1)%>
您的第二个字段内容为:<%=rsgetString(2)%>
<%}%>8、当所有数据展现完毕,调用close()方法将所有资源关闭。 rsclose();
stmtclose();
connclose();回顾下大致过程:加载驱动 ClassforName();定义好相关的数据,调用DriverManagergetConnection(driver,user,password)获得一个数据库连接conn通过conn创建Statement对象stmt,conncreateStatement();通过stmt执行定义好的sql语句获得数据集ResultSet rs=stmtexecuteQuery(“select from test”);通过rsnext()方法循环遍历数据集的数据,通过rsgetString(1)获得第一条数据的第一个字段内容,这里要注意的是getString是对应数据库是字符类型,如果test表的第一个字段不是字符类型则用rsgetInt(1)获得。展现完毕后关闭所有资源conn stmt rs close方法。
最简单的JSP页面中的数据库 *** 作方法:
<%@ page
language="java"
contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"
%>
<%@page import="javasql"%>
<center>
<H1> <font color="blue" size="12">管理中心</font></H1>
<HR />
<table width="80%" border="1">
<tr>
<th>ID</th>
<th>书名</th>
<th>作者</th>
<th>价格</th>
<th>删除</th>
</tr>
<%
// 数据库的名字
String dbName = "zap";
// 登录数据库的用户名
String username = "sa";
// 登录数据库的密码
String password = "123";
// 数据库的IP地址,本机可以用 localhost 或者 127001
String host = "127001";
// 数据库的端口,一般不会修改,默认为1433
int port = 1433;
String connectionUrl = "jdbc:sqlserver://" + host + ":" + port + ";databaseName=" + dbName + ";user=" + username
+ ";password=" + password;
//
//声明需要使用的资源
// 数据库连接,记得用完了一定要关闭
Connection con = null;
// Statement 记得用完了一定要关闭
Statement stmt = null;
// 结果集,记得用完了一定要关闭
ResultSet rs = null;
try {
// 注册驱动
ClassforName("commicrosoftsqlserverjdbcSQLServerDriver");
// 获得一个数据库连接
con = DriverManagergetConnection(connectionUrl);
String SQL = "SELECT from note";
// 创建查询
stmt = concreateStatement();
// 执行查询,拿到结果集
rs = stmtexecuteQuery(SQL);
while (rsnext()) {
%>
<tr>
<td>
<%=rsgetInt(1)%>
</td>
<td>
<a href="prepareupdateID=<%=rsgetInt("ID")%>" target="_blank"><%=rsgetString(2)%></a>
</td>
<td>
<%=rsgetString(3)%>
</td>
<td>
<%=rsgetString(4)%>
</td>
<td>
<a href="deleteID=<%=rsgetInt("ID")%>" target="_blank">删除</a>
</td>
</tr>
<%
}
} catch (Exception e) {
// 捕获并显示异常
eprintStackTrace();
} finally {
// 关闭我们使用过的资源
if (rs != null)
try {
rsclose();
} catch (Exception e) {}
if (stmt != null)
try {
stmtclose();
} catch (Exception e) {}
if (con != null)
try {
conclose();
} catch (Exception e) {}
}
%>
</table>
<a href="insertjsp">添加新纪录</a>
</center>
("delete from userkey WHERE 编号="+ID[i]+"");
看看你写的引号。。。先检查引号正确了再继续查找你的错误
-----------------------------------
看清楚是哪一行报的这个错误
Type mismatch: cannot convert from int to boolean
不能从整形转换成布尔
你的变量类型定义的问题,类型不符
去tomcat的LOG下面把更详细的错误复制过来
/3jsp(3,78)
你的第3行是什么?
可能是include的问题,你应该这样写
<%@ page include="xxxjsp"%>
<%@ page include="xxxjsp"%>
or
<%@ include file="xxxjsp"%>
<%@ include file="xxxjsp"%>
以上就是关于怎么从数据库中提取数据,在jsp页面显示全部的内容,包括:怎么从数据库中提取数据,在jsp页面显示、数据库数据怎么返回到jsp页面上、jsp连接数据库方法(详细的)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)