我在jsp中有两个下拉列表,必须从数据库中获取下拉列表并在jsp中显示它.我是第一次使用jsp.你能给我一个从数据库中获取下拉列表并在jsp下拉元素中显示值的想法.谢谢你提前
如何从数据库中获取下拉值并在jsp中显示:
动态从Mysql中获取数据到(下拉)选择Jsp中的选项.这篇文章说明了从mysql数据库中获取数据并在Jsp中的select选项元素中显示.在阅读这篇文章之前你应该知道以下帖子,即:
如何将Mysql数据库连接到jsp.
如何在MySql中创建数据库并将数据插入数据库.使用以下数据库,说明'从Mysql动态获取数据到(下拉)
在Jsp'中选择选项:
id City
1 London
2 Bangalore
3 Mumbai
4 Paris
Run Code Online (Sandbox Code Playgroud)
以下代码用于在MySql数据库中插入数据.使用的数据库是"City",username ="root",密码也设置为"root".
Create Database city;
Use city;
Run Code Online (Sandbox Code Playgroud)
Create table new(id int(4), city varchar(30));
Run Code Online (Sandbox Code Playgroud)
insert into new values(1, 'LONDON');
insert into new values(2, 'MUMBAI');
insert into new values(3, 'PARIS');
insert into new values(4, 'BANGLORE');
Run Code Online (Sandbox Code Playgroud)
以下是在Jsp中从Mysql动态获取数据到(下拉)选择选项的代码:
<%@ page import="java.sql.*" %>
<%ResultSet resultset =null;%>
<HTML>
<HEAD>
<TITLE>Select element drop down box</TITLE>
</HEAD>
<BODY BGCOLOR=##f89ggh>
<%
try{
//Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection connection =
DriverManager.getConnection
("jdbc:mysql://localhost/city?user=root&password=root");
Statement statement = connection.createStatement() ;
resultset =statement.executeQuery("select * from new") ;
%>
<center>
<h1> Drop down box or select element</h1>
<select>
<% while(resultset.next()){ %>
<option><%= resultset.getString(2)%></option>
<% } %>
</select>
</center>
<%
//**Should I input the codes here?**
}
catch(Exception e)
{
out.println("wrong entry"+e);
}
%>
</BODY>
</HTML>
Run Code Online (Sandbox Code Playgroud)

你可以学习JSP页面直接访问数据库(MySQL的)一些教程在这里
笔记:
在jsp页面中导入sql标记库
<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%>
然后在页面上设置数据源
<sql:setDataSource var="ds" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://<yourhost>/<yourdb>" user="<user>" password="<password>"/>
Run Code Online (Sandbox Code Playgroud)现在在页面上查询你想要的内容
<sql:query dataSource="${ds}" var="result"> //ref defined 'ds'
SELECT * from <your-table>;
</sql:query>
Run Code Online (Sandbox Code Playgroud)最后,您可以使用c:forEachtag 在页面上填充下拉列表以迭代select元素中的结果行
<c:forEach var="row" items="${result.rows}"> //ref set var 'result'
<option value='<c:out value="${row.key}"/>'><c:out value="${row.value}"/</option>
</c:forEach>
小智 5
我在我的代码中做了这个
注意:我是初学者。
这是我的jsp代码。
<%
java.sql.Connection Conn = DBconnector.SetDBConnection(); /* make connector as you make in your code */
Statement st = null;
ResultSet rs = null;
st = Conn.createStatement();
rs = st.executeQuery("select * from department"); %>
<tr>
<td>
Student Major : <select name ="Major">
<%while(rs.next()){ %>
<option value="<%=rs.getString(1)%>"><%=rs.getString(1)%></option>
<%}%>
</select>
</td>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
104297 次 |
| 最近记录: |