jsp中记录集rs传值到行集对象CachedRowSetImpl,有经验的帮忙看看

潜水的小懒猫 潜水的小懒猫 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
package myservlet.control;
import mybean.data.*;
import com.sun.rowset.*;
import java.sql.*;
import java.io.*;

import javax.servlet.*;
import javax.servlet.http.*;

public class HandleDatabase extends HttpServlet{
CachedRowSetImpl rowSet=null;
public void init(ServletConfig config) throws ServletException
{
super.init(config);
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(Exception e){}
}
public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException
{
HttpSession session=request.getSession(true);
Login login=(Login)session.getAttribute("login"); //session获取login,为空就转到登陆界面
boolean ok=true;
if(login==null)
{
ok=false;
response.sendRedirect("login.jsp");
}
if(ok==true)
{
continueDoPost(request,response); //这是post提交的,在这里就使用了下面的方法,显示全部会员
}
}
public void continueDoPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException
{
HttpSession session=request.getSession(true);
Connection con=null;
StringBuffer presentPageResult=new StringBuffer(); //当前内容
ShowByPage showBean=null; //创建分页对象
try{
showBean=(ShowByPage)session.getAttribute("show"); //获取show对象
if(showBean==null)
{
showBean=new ShowByPage(); //创建分页对象
session.setAttribute("show",showBean); //没有show时,就创建sessin周期的bean
}
}
catch(Exception exp)
{
showBean=new ShowByPage();
session.setAttribute("show",showBean);
}
showBean.setPageSize(3); //设置每页显示3条
int showPage=Integer.parseInt(request.getParameter("showPage")); //获取当前显示页
if(showPage>showBean.getPageAllCount()) //当前页大于总页数,就变为1
showPage=1;
if(showPage<=0)
showPage=showBean.getPageAllCount(); //小于总页数,就现在最后一页
showBean.setShowPage(showPage); //把当前页传到bean
int pageSize=showBean.getPageSize(); //获取每页显示的记录数

try{
con=DriverManager.getConnection("jdbc:odbc:zc","sa","");
Statement sql=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
ResultSet rs=sql.executeQuery("select * from member");
rowSet=new CachedRowSetImpl(); //创建行集对象
rowSet.populate(rs);
showBean.setRowSet(rowSet); //再把行集值传到bean
rowSet.last();
int m=rowSet.getRow(); //总行数

int n=pageSize; //n=每页显示的记录数
int pageAllCount=((m%n)==0)?(m/n):(m/n+1); //总页数
showBean.setPageAllCount(pageAllCount); //总页数传到bean
presentPageResult=show(showPage,pageSize,rowSet);
showBean.setPresentPageResult(presentPageResult); //传入当前页的内容
con.close();
}
catch(SQLException exp){
showBean.setPageAllCount(88888);
}
RequestDispatcher dispatcher=request.getRequestDispatcher("showAllMember.jsp");
dispatcher.forward(request,response);
}
public StringBuffer show(int page,int pageSize,CachedRowSetImpl rowSet)
{ // 显示的页数,每页显示的记录数,行集数据
StringBuffer str=new StringBuffer();
try{
rowSet.absolute((page-1)*pageSize+1);
for(int i=1;i<=pageSize;i++)
{
str.append("<tr>");
str.append("<td>"+rowSet.getString(1)+"</td>");
str.append("<td>"+rowSet.getString(2)+"</td>");
str.append("<td>"+rowSet.getString(3)+"</td>");
str.append("<td>"+rowSet.getString(4)+"</td>");
str.append("<td>"+rowSet.getString(5)+"</td>");
str.append("<td>"+rowSet.getString(6)+"</td>");
String s="<img src=/image/"+rowSet.getString(7)+" width=100 height=100/>";
str.append("<td>"+s+"</td>");
str.append("</tr>");
rowSet.next();
}
return str;
}
catch(SQLException exp){}
return str;
}


测试过,rs有值,rowSet为空 ,运行时,直接跳转到showBean.setPageAllCount(7777);
当然showAllMember.jsp页面出现了~~只是数据库的数据没有显示

应该是rowSet为空造成的错误,希望高手看看,帮解决下!为什么rowset为空了?

...全文
软件工程基于Java+Vue的志愿者时长与积分管理系统设计:实现服务记录可信化、激励透明化及数据驱动治理 项目介绍 基于java+vue的志愿者时长记录与积分兑换平台设计与实现(含模型描述及部分示 内容概要:本文介绍了一个基于Java与Vue的志愿者时长记录与积分兑换平台的设计与实现,旨在解决传统志愿服务管理中存在的记录分散、效率低下、激励不足等问题。平台通过前后端分离架构,前端采用Vue构建响应式界面,支持活动浏览、在线报名、签到签退、时长查看、积分商城等功能;后端基于Spring Boot实现身份认证、活动管理、时长核算、积分计算、库存控制等核心服务,并利用MySQL存储业务数据,Redis处理缓存与高并发场景,JWT实现安全认证。系统引入了时长有效区间计算、异常记录识别评分、积分规则引擎、库存原子扣减等多项关键技术模型,确保服务记录的准确性与系统的可靠性。同时,平台支持数据可视化分析,助力组织方进行决策优化与公益治理。; 适合人群:具备Java与Vue基础的软件开发人员、计算机专业学生、参与志愿服务系统开发的项目团队以及社区、学校、公益组织的技术负责人。; 使用场景及目标:①应用于街道社区、高校团委、公益基金会等机构的志愿服务管理系统建设;②实现志愿者服务时长的自动化记录与审核,提升管理效率;③通过积分激励机制增强志愿者参与积极性;④为公益组织提供数据分析支持,优化资源配置与活动策划。; 阅读建议:本文不仅提供了完整的系统架构设计与业务流程说明,还附有核心功能的代码示例(如时长计算、积分规则、异常识别等),建议读者结合实际项目需求进行代码实践与模块拓展,重点关注事务一致性、并发控制与规则可配置性设计。 立即下载

相关推荐

评论 2
收藏 已收藏
分享
返回顶部
潜水的小懒猫
Web 开发 81,108 成员 341,721 内容