哦,我还在javabean中
rs.last();
int rows=rs.getRow();
之后加了一句:
rs.first();还是不行!55555555555555我只有555555555555了。。
rs.last();
int rows=rs.getRow();
之后加了一句:
rs.first();还是不行!55555555555555我只有555555555555了。。
解决方案 »
- 高分求简单问题:如何在jsp中直接使用js函数
- JS中文字转换成%ED%ER%DF编码?初学最好是有现成的函数拜求
- 哪位大侠帮忙啊! sql转换为hql问题
- 高手帮我看下连接sql数据库问题呀
- 大家帮帮忙啊,怎么实现网页中,"你的位置"这个功能
- 程序员或者是心脏病高发群体。送分。
- xp下tomcatw服务cpu占用率100%,并且不能正常运行的问题(11点前揭帖)
- 100分,收集上传下载的资料
- resin + jfreechart 显示乱码(高分求救!)
- 如何用jsp实现网站计数器的问题?在线等?
- 如何设置tomcat,可以使别人的电脑可以远程访问我的电脑上的jsp网业,在线等待!!谢谢
- 希奇希奇真希奇,我有重要的问题!!!
rs.last();
不知道这样还能不能获得rs,建议你用两次rs=sql.executeQuery(sqls);
试试,第一次算出rows,第二次在取结果集
rs=sql.executeQuery(sqls);
int i=0;
while(rs.next){
shuzhu[i]=rs.getString("employee_no");
i++;
}
用out.print(sz.getShuzhu()+sz.getMessage());
好像不能输出吧,print没有打印数组的功能吧
{
out.println(shuzhu[i]+"<br>");
}
public String put( int i)
{
return shuzhu[i];
}
在jsp中:
<%
String temp=new String();
for(int i=1;i<=rows;i++)
{
temp=sz.put(i);
out.print(temp+"<br>");
}
%>
{
temp=sz.put(i);
out.print(temp+"<br>");
}
public int getRows(){
return ...
}方法
,这样你就可以在jsp页面中定义一个新的数组,让它等于你的sz.getShuzhu(),然后用一个循环就可以输出你的数组了。
比较麻烦,如果大家友好方法可以告诉我,谢谢
public String[] getShuzhu()
{ try{
con=DriverManager.getConnection("jdbc:microsoft:sqlserver://ZSHNB007:1433;databaseName=invoice", "invoice", "invoicedbo");
sql=con.createStatement();
sqls="select employee_no,voted_num from votetable where region='"+region+"' order by voted_num desc";
rs=sql.executeQuery(sqls);
rs.last();
int rows=rs.getRow();
// String[] shuzhu=new String[rows];
List shuzhu = new ArrayList(); while(rs.next) {
shuzhu.add(rs.getString("employee_no"));
}
con.close();
message="ok";
}catch(Exception e){message="no!";}
return shuzhu.toArray(new String[0]);
}二.jsp中取值:for(int j=1;j<=rows;j++)
{
out.println(shuzhu[i]+"<br>");
}
但是你的这个程序还有一个问题,就是当你的sql语句找不到值的时候,你用rs.last()会报错的,所以你还要加一个if(rs.next())的判断才行。而且for循环那块用的好象也不太合理吧??建议你还是用while(rs.next())好一些。用for循环还是在分页的时候用的才多点,平时都是用while()好点。
在jsp中打印出数组的值可以用下列代码:
String a[]=new String(100);
a=sz.getShuzu();
for(int i=0;i<a.length();i++)
{
out.println(a[i]);
}
package beans;
import java.sql.*;
import java.util.*;
public class Shuz{
String sqls,shu,message,region="8";
Connection con;
Statement sql;
ResultSet rs;
String[] shuzhu;
public Shuz()
{
try{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
}
catch(ClassNotFoundException e){}
}public void setShuzhu(String[] a)
{
shuzhu=a;
}public void setRegion(String r)
{
region=r;
}public void setMessage(String m)
{
message=m;
}
public String getMessage()
{
return message;
}public String[] getShuzhu()
{ try{
con=DriverManager.getConnection("jdbc:microsoft:sqlserver://ZSHNB007:1433;databaseName=invoice", "invoice", "invoicedbo");
sql=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
sqls="select employee_no,voted_num from votetable where region='"+region+"' order by voted_num desc";
rs=sql.executeQuery(sqls);
int rows=0;
if(rs.last()){ rows=rs.getRow();}
String shuzhu[]=new String[rows];
rs.beforeFirst();
int i=0;
while(rs.next()){shuzhu[i]=rs.getString("employee_no");i++;}
con.close();
message="ok";
}catch(Exception e){message="no!";}
return shuzhu;
}
}
jsp文件如下:<%@ page contentType="text/html;charset=GBK" %>
<%@ page import="beans.*" %>
<htmL>
<body>
<jsp:useBean id="sz" class="beans.Shuz" scope="page" />
<% sz.setRegion("8") ;
String[] a;
String a[]=sz.getShuzhu();
for (int i=0;i<a.length;i++){out.print(a[i]);}
%>
</body>
</html>
bean通过编译了,可jsp执行不了,又不报错,等半天,没反应。
给看看吧,哥哥姐姐,弟弟妹妹们。
5555555死了
String[] a;
String a[]=sz.getShuzhu();
改成:
String[] a;
a=sz.getShuzhu();
另外<%@ page import="beans.*" %>好像没什么用吧。bean里面
if(rs.last()){ rows=rs.getRow();}
String shuzhu[]=new String[rows];//这一句应该写成:shuzhu=new String[rows];
rs.beforeFirst();
int i=0;
while(rs.next()){shuzhu[i]=rs.getString("employee_no");i++;}
我不敢保证你这么写还能得到结果集,我以前没这么用过,你最好在
while(rs.next()){shuzhu[i]=rs.getString("employee_no");i++;}
里面加上一句System.out.println(shuzhu[i]);看看能不能得到值
package beans;
import java.sql.*;
import java.util.*;
public class Shuz {
String sqls,shu,message,region="8";
Connection con;
Statement sql;
ResultSet rs;
String[] shuzhu;
public Shuz() {
try {
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
}
catch(ClassNotFoundException e){}
} public void setShuzhu(String[] a) {
shuzhu=a;
} public void setRegion(String r) {
region=r;
} public void setMessage(String m) {
message=m;
}
public String getMessage() {
return message;
} public String[] getShuzhu() {
try {
con = DriverManager.getConnection("jdbc:microsoft:sqlserver://ZSHNB007:1433;databaseName=invoice", "invoice", "invoicedbo");
sql = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
sqls = "select employee_no,voted_num from votetable where region='"+region+"' order by voted_num desc";
rs = sql.executeQuery(sqls);
ArrayList list = new ArrayList();
while(rs.next()) {
list.add(rs.getString("employee_no"));
}
con.close();
String shuzhu[] = new String[list.size()];
list.toArray(shuzhu);
message = "ok";
}
catch(Exception e){message="no!";}
return shuzhu;
}
}