- 浏览: 1308148 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
kay11:
...
JAVA生成简单的随机字符串(a-zA-Z0-9) -
zhangliguoaccp:
您好关于登录页面的验验证码这块怎么解决的?还有登录成功后,跳转 ...
JAVA,模拟HTTP登录 -
107x:
不错,谢谢!
<c:foreach 循环 map -
wenjin:
不知楼主是不还在想请叫一下我自己开的Tomcat下载一个文件C ...
Android 下载文件及写入SD卡 -
zyywgf:
JSTL c标签,fn标签,fmt标签
package dao;
import java.util.ArrayList;
import datebase.DBOperException;
import datebase.DBSource;
import java.sql.*;
import struts.form.TestForm;
import vo.userVO;
import tool.Page;
public class userDAO {
String sql = null;
//控制分页的属性
int page = 1;
int maxPage = 1;
//最大记录数量
private int maxRecordNumber=0;
public int getMaxPage() {
return maxPage;
}
public int getPage() {
return page;
}
public void setMaxPage(int maxPage) {
this.maxPage = maxPage;
}
public void setPage(int page) {
this.page = page;
}
/**
* @return maxRecordNumber
*/
public int getMaxRecordNumber() {
return maxRecordNumber;
}
/**
* @param maxRecordNumber 要设置的 maxRecordNumber
*/
public void setMaxRecordNumber(int maxRecordNumber) {
this.maxRecordNumber = maxRecordNumber;
}
/**
*
* @param testForm FORM对象
* @param requestpage 被请求的页
* @param pageNum 每页的数量(显示)
* @return
* @throws DBOperException
*/
public ArrayList selectUSERBASICINFO(TestForm testForm,int requestpage,int pageNum) throws DBOperException{
//广告信息列表
ArrayList adlist = new ArrayList();
// 需要的数据库对象
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
//查询条件
sql = "select userid,userpassword,phone,email from userbasicinfo where sex=?";
// 得到连接
conn = DBSource.getConnection();
//pstmt = conn.prepareStatement(sql);修改之前的语句
pstmt = conn.prepareStatement(sql,
ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY);//修改过的语句
pstmt.setString(1,testForm.getSex());
System.out.println(testForm.getSex());
//执行查询
rs = pstmt.executeQuery();
//得到最大的数量
int pageNumber = pageNum;
boolean last = rs.last();//将cursor移到最后
if(last){
int rowNumber = rs.getRow();//获取符合的数据条数
//设置列表中的显示数量
maxRecordNumber = rowNumber;
maxPage = rowNumber/pageNumber;
if(rowNumber % pageNumber > 0){
maxPage++;
}
}
//如果输入的页大于最大的页面,则选择最大的页面
if(requestpage >= maxPage){
page = maxPage;
}else{
this.page = requestpage;
}
//把查询到的历史信息组合成历史信息对象,然后添加到全部历史对象中
if(page > 1 && last){
rs.absolute(pageNumber * (page - 1));
}else if(page == 1 && last){
rs.beforeFirst();//将cursor移到初始状态
}
//把查询到的历史信息组合成历史信息对象,然后添加到全部历史对象中
int currentPosition = 0;
//把查找到的全部广告基本信息对象放到集合对象中
while(rs.next()&& currentPosition < pageNumber && last){
//创建一个VO对象???????????到底放while外面还是放while里面
userVO uservo= newuserVO();
uservo.setEmail(rs.getString("email"));
uservo.setPhone(rs.getString("phone"));
uservo.setUserid(rs.getString("userid"));
uservo.setUserpassword(rs.getString("userpassword"));
//把属性加入列表
adlist.add(uservo);
currentPosition ++ ;
}
} catch (SQLException ex) {
try {
conn.rollback();
} catch (SQLException e) {
e.printStackTrace();
}
ex.printStackTrace();
throw new DBOperException("数据库更新失败!");
} finally {
try {
// 关闭连接
rs.close();
pstmt.close();
conn.close();
} catch (SQLException ex1) {
ex1.printStackTrace();
}
}
//返回得到广告显示信息的列表
return adlist;
}
}
java.sql.SQLException: 对只转发结果集的无效操作: last
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:111)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:145)
at oracle.jdbc.driver.BaseResultSet.last(BaseResultSet.java:81)
at org.apache.tomcat.dbcp.dbcp.DelegatingResultSet.last(DelegatingResultSet.java:328)
at dao.userDAO.selectUSERBASICINFO(userDAO.java:86)
at struts.action.TestAction.execute(TestAction.java:54)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at tool.EncodeFilter.doFilter(EncodeFilter.java:42)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)
2008-1-22 20:07:28 org.apache.struts.action.RequestProcessor processException
警告: Unhandled Exception thrown: class datebase.DBOperException
2008-1-22 20:07:28 org.apache.catalina.core.ApplicationContext log
信息: null
产生错误代码行:
pstmt = conn.prepareStatement(sql);
boolean last = rs.last();
将pstmt = conn.prepareStatement(sql);
改为:pstmt = conn.prepareStatement(sql,ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
ResultSet.TYPE_SCROLL_INSENSITIVE 双向滚动,但不及时更新,就是如果数据库里的数据修改过,并不在ResultSet中反应出来。
ResultSet.TYPE_SCROLL_SENSITIVE 双向滚动,并及时跟踪数据库里的更新,以便更改ResultSet中的数据。
ResultSet.CONCUR_READ_ONLY 只读取ResultSet 。
ResultSet.CONCUR_UPDATABLE 用ResultSet更新数据库 。
发表评论
-
LinkedHashMap
2016-01-13 09:18 620public static void main(Strin ... -
计算星期几,本周的开始结束日期,上一周的开始结束日期
2015-11-04 15:03 1248package com.yinhe.util; imp ... -
java pattern matcher字符串替换
2015-10-28 13:56 850<div class="iteye-blog ... -
jfreechart实现仪表盘dashbord
2015-08-24 17:13 798package com.htcf.dashbord; ... -
java中byte,String,InputStream之间的转换
2012-09-20 17:09 21040import java.io.ByteArrayInpu ... -
StringBuffer清空方法,效率最高
2012-08-10 11:42 1727StringBuffer清空方法大致有4种: Stri ... -
日期大小写转换
2012-07-23 10:53 1860import java.util.Calendar; i ... -
web.xml不认<taglib>解决办法:
2012-07-11 15:24 905在web.xml不认<taglib>解决办法: ... -
VO,PO,TO,BO,POJO,DAO解释
2012-03-20 14:47 1378O/R Mapping:Object Relation ... -
Java 推算日期(计算距今多少年,多少月,多少天的日期)
2011-10-24 16:13 4769import java.text.SimpleDateForm ... -
jdk与jre的区别
2011-07-05 11:31 1175今天突然有朋友问, ... -
JAVA混淆 RetroGuard (转)
2011-06-17 13:28 63521、 下载并将retroguard.jar拷贝 ... -
JavaScript检测上传文件类型
2011-04-22 16:41 1804很实用的一个JS代码,判断一个上传表单允许上传的文件类型,扩展 ... -
比较全的文件操作(创建,删除,复制.文件,文件夹,复制图片)
2011-03-21 18:57 1228package com.potevio.zjhs.util; ... -
id,pid,数据库递归调用展示树形菜单的示例
2011-03-01 15:11 7369public class TreeDAO{ ... -
dtree 树形菜单(checkbox默认选中)
2011-01-24 15:07 5822采用dtree实现树形菜单展示,并有默认checkbox的选中 ... -
Java处理带返回值的存储过程Procedure (SQL Server)
2010-12-27 11:06 4755package com.zjx.test; import ... -
学JAVA很好的一个资源网站
2010-11-19 15:24 1307http://www.verycd.com/topics/93 ... -
某人关于不重复登录的简单处理说明
2010-11-02 13:39 12811.用的是servlet的监听器:(1)用的是HttpSess ... -
java获取资源文件(**.properties)
2010-11-01 15:57 1064import java.io.IOException; im ...
相关推荐
主要介绍了jQuery中:last-child选择器用法,实例分析了:last-child选择器功能、定义及匹配父元素的最后一个子元素用法技巧,具有一定参考借鉴价值,需要的朋友可以参考下
CSS3选择器--结构化伪类选择器;...:first-child和:last-child选择器;:nth-child(n)和:nth-last-child(n)选择器;:nth-of-type(n)和:nth-last-of-type(n)选择器;:empty选择器;:target选择器;总结;;THANKS
本文实例讲述了jQuery中:only-child选择器用法。分享给大家供大家参考。...注意:这里有必要结合上面的代码再对概念进行一下说明。这里所说的父元素并不是li,而是li的父元素。很多人往往误以为是匹
orange.small:last-of-type,apple.small:last-of-type 是orange.samll和apple.small元素的最后一个元素 第二十五关 bento:empty bento元素里没有包括额外元素 第二十六关 apple:not(.small) apple里没有组是.small...
赠送jar包:seata-all-1.3.0.jar; 赠送原API文档:seata-all-1.3.0-javadoc.jar; 赠送源代码:seata-all-1.3.0-sources.jar; 赠送Maven依赖信息文件:seata-all-1.3.0.pom; 包含翻译后的API文档:seata-all-...
org.vaadin.addons.dcharts-widget-0.10.0-dcharts-widget-0.10.0.jar
Last updated: 25 Jul 2009 Files libevent 1.4.12 Happily, libevent will now build out of the box on Windows (at least with VC2003 and VC2008, I haven't tested others). I don't like their projects ...
&:last-child:nth-child(1) { // 相关样式 } } 很好理解:div下面即是最后一个元素也是第一个元素不就是只有一个子元素吗? 用css选择器匹配只有两个子元素 div{ &:nth-last-child(2):nth-child(2) { } } 依样...
my $ua = LWP::UserAgent->new;...use RDF::Trine qw(iri);my $g = RDF::Generator::HTTP->new(message => $response, graph => iri('http://example.org/graphname'), blacklist => ['Last-Modified', '
** LAST MODIFICATION 12-11-1997 ** ** AUTHOR Remon Spekreijse ** ** ************************************************************************************ ** author: mrlong date:2007-12-25 ** ** 改进...
牛肉(=为什么) 用 clojure.test 编写的这样的测试( deftest my-test ( is ( = { :first-name " John " :last-name " Smith " } { :first-name " Johnny " :last-name " Smith " }))) 将产生以下输出: FAIL in (my...
例如,要运行模型25年,请执行以下操作: payu run -n 25 注意:我们注意到某些模块会干扰git命令,例如matlab/R2018a 。 如果在安装过程中遇到问题,最好先进行module purge然后再重新启动。 了解payu payu旨在帮助...
E:last-child 最后一个元素 表示给指定元素的父元素中的最后一个指定元素设置一个统一的样式,E表示指定元素 E:nth-child(n) 表示给指定元素的第n个兄弟元素设置一个统一的样式,n可以取任意值,并且n为整数 E:nth...
在制品。 向前走! React 样式组件 用于样式元素的 React 组件。 支持的组件 伪类 hover伪元素 任何元素的通用悬停样式 链接相关的伪类选择器 ... :nth-last-of-type(N) :nth-last-child(N) :only-of-type
开发资料\我的资料\keil错误集V1.0.pdf 一、 main.c(35): warning: #128-D: loop is not reachable from preceding code 原因,前面有一个while(1){ …….} 二、 main.c(54): warning: #1-D: last line of file ends...
EurekaLog 7.5 (18-August-2016) 1)..Important: Installation layout was changed. All packages now have version suffix (e.g. EurekaLogCore240.bpl). No files are copied to \bin folder of IDE....
人力资源分析数据集汇聚了对大量员工的信息数据统计,包括企业因素(如部门)、员工行为相关因素(如参与过项目数、每月工作时长、薪资水平等)、以及工作相关因素(如绩效评估、工伤事故),这些因素都有很好的分析...
一款轻量级全功能的截屏软件。支持窗口,全屏,滚动区域截屏。也支持录屏。
http last-modified字体头