JSP如何把从数据库中读取的所有ID存入到数组中,.…
展开全部
提问人的追问 2009-12-07 16:12 sql 2000 回答人的补充 2009-12-07 17:08 不好意思,看了下电脑,没装sql2000,很早的时候就不用了。我用mysql的连接写了一个,测试了下可以用,然后修改了,应该可以再sql2000下运行吧!建表的话,随便怎么建,只要里面有个ID的属性即可。<%@ page language="java" import="java.util.*,java.sql.*" pageEncoding="utf-8"%><%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>jdbc连接数据库</title></head><body><%try{Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
Connection con=java.sql.DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=test","root","root");
Statement stmt=con.createStatement();
ResultSet rst=stmt.executeQuery("select * from testdb");
List mylist=new ArrayList(); //生成一个集合
while(rst.next()){mylist.add(rst.getString("id")); //将id放入集合中}for(int i=0;i<10;i++){
int rannum=(int)(Math.random()*mylist.size()); //生成一个随机数
System.out.println(mylist.get(rannum)); //从集合中取出元素,打印出来。}rst.close();
stmt.close();
con.close();}catch(Exception e){
e.printStackTrace();} %></body></html>总之,就这个样子,,另外,就是数据库驱动,你去下载一下,2000的好像是3个jar包,很久没写代码了。 提问人的追问 2009-12-07 18:14 谢谢,我应经下了。再麻烦下,怎样能使随机抽取出来ID不重复,然后怎么把抽出来的十个ID放到一个组rds中,查询语句:select * from table where ID in('"+rds+"') 回答人的补充 2009-12-07 18:39 你在取出ID集合后,添加如下代码: int[] rds=new int[10]; //定义rds数组,这里数据库中的ID值都不相同。
for(int i=0;i<10;i++){
int rannum=(int)(Math.random()*mylist.size());
rds[i]= Integer.parseInt( mylist.get(rannum).toString()); //针对每次生成的随机数,从数组中取值,放入数组中。
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>jdbc连接数据库</title></head><body><%try{Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
Connection con=java.sql.DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=test","root","root");
Statement stmt=con.createStatement();
ResultSet rst=stmt.executeQuery("select * from testdb");
List mylist=new ArrayList(); //生成一个集合
while(rst.next()){mylist.add(rst.getString("id")); //将id放入集合中}for(int i=0;i<10;i++){
int rannum=(int)(Math.random()*mylist.size()); //生成一个随机数
System.out.println(mylist.get(rannum)); //从集合中取出元素,打印出来。}rst.close();
stmt.close();
con.close();}catch(Exception e){
e.printStackTrace();} %></body></html>总之,就这个样子,,另外,就是数据库驱动,你去下载一下,2000的好像是3个jar包,很久没写代码了。 提问人的追问 2009-12-07 18:14 谢谢,我应经下了。再麻烦下,怎样能使随机抽取出来ID不重复,然后怎么把抽出来的十个ID放到一个组rds中,查询语句:select * from table where ID in('"+rds+"') 回答人的补充 2009-12-07 18:39 你在取出ID集合后,添加如下代码: int[] rds=new int[10]; //定义rds数组,这里数据库中的ID值都不相同。
for(int i=0;i<10;i++){
int rannum=(int)(Math.random()*mylist.size());
rds[i]= Integer.parseInt( mylist.get(rannum).toString()); //针对每次生成的随机数,从数组中取值,放入数组中。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询