求:动态从数据库取出数据,然后在JSP页面上用下拉框〈html:select〉进行显示

crazybrother 2006-05-18 10:06:02
如题:
只是,我希望通过在一个后台类中实现和数据库的交互,并取得数据。JSP页面,只做取得数据,并用下拉框显示出来。并不与数据库的交互!

求教与各位高手!!!先谢谢了!
...全文
862 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuxinqi 2006-11-02
  • 打赏
  • 举报
回复
markup
rickhunterchen 2006-05-18
  • 打赏
  • 举报
回复
看看这里:
http://community.csdn.net/Expert/TopicView3.asp?id=4485712
sole_lodestar 2006-05-18
  • 打赏
  • 举报
回复
数据库读取出来的数据存入到一个list中然后在jsp中调用这个方法

/**
* 根据List对象生成<select>控件
* @param l list
* @param formFieldName form中的名称
* @param defaultValue 默认值
* @return
*/
public static String genSelect(List lis, String formFieldName,
Object defaultValue) {
StringBuffer buf = new StringBuffer();
buf.append("<select name=\"" + formFieldName + "\">");
//if (formFieldName.equals("doc_class")) {
// buf.append("<option><根></option>");
//}
for (int i = 0; i < lis.size(); i++) {
boolean selected = false;
HashMap row = (HashMap) lis.get(i);
Object key = row.keySet().iterator().next();
Object value = row.get(key);
if (key.toString().equals(defaultValue)) {
selected = true;
}
buf.append("<option value=\"" + key + "\"");
if (selected) {
buf.append(" selected");
}
buf.append(">" + value + "</option>");
}
buf.append("</select>");
return buf.toString();
}
rlqiang 2006-05-18
  • 打赏
  • 举报
回复
//比如一个取省份的后台函数
public String getProvinceHtml() {
String str = "select 名称 from 省 order by 名称";
ResultSet rs = //在此执行这个查询语句,返回ResultSet
StringBuffer sBuf = new StringBuffer();
try {
while (rs.next()) {
sBuf.append("<option value='" + rs.getString("名称") + "'>" +
rs.getString("名称") + "</option>\n");
}
return sBuf.toString();
} catch (SQLException ex) {
ex.printStackTrace();
return "";
}
}
//////////////////jsp页面/////////////////////////////
//ub= new 上面那个函数所在类
<td><html:select property="province" size="1" ><option selected="selected" value="">请您选择..</option>
<%=ub.getProvinceHtml()%><option value="其它地区">其它地区</option>
</html:select></td>
zuguanqun 2006-05-18
  • 打赏
  • 举报
回复
把后台得到的数据放到List 里面,然后放到session里面,或者request

jsp页面获得这个List
<%
for(int i=0 ;i<list.size();i++){
%>
< option value="<%=%>"><%=%></option>
<%
}
%>
crazybrother 2006-05-18
  • 打赏
  • 举报
回复
谢谢。明白了。

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧