易截截图软件、单文件、免安装、纯绿色、仅160KB

关于jsp中" 对只转发结果集的无效操作: last "异常

 因为初学,所以,在建立Statement时使用默认参数。导致在使用执行rs.last()时,产生“java.sql.SQLException:对只转发结果集的无效操作:last”的异常。
最后在建立Statement时加入相关参数,就可以解决了。
操作查询结果集的过程中出现异常
 
出现异常的语句: rs.last();
 
异常的详细信息:对只转发结果集的无效操作: last
 
解决办法:  stat = conn.createStatement();
         改为 stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); 就可以了
 
分析: 异常出现于移动结果集的指针时,原因是在生成statement对象的时候提供的参数不同
无参数的那个方法使用的是默认参数,statement执行后得到的结果集类型为 ResultSet.TYPE_FORWARD_ONLY.这种类型的结果集只能通过rs.next();方法逐条读取,使用其他方法就会报异常. 如果想执行一些复杂的移动结果集指针的操作就要使用其他参数了
顺便简单介绍一下各个参数:
ResultSet.TYPE_FORWARD_ONLY   (略)
ResultSet.TYPE_SCROLL_INSENSITIVE  双向滚动,但不及时更新,就是如果数据库里的数据修改过,并不在ResultSet中反应出来。
ResultSet.TYPE_SCROLL_SENSITIVE  双向滚动,并及时跟踪数据库里的更新,以便更改ResultSet中的数据。
ResultSet.CONCUR_READ_ONLY  只读取ResultSet
ResultSet.CONCUR_UPDATABLE  用ResultSet更新数据库


相关文档:

JSP自定义标签学习(高级)

JSP自定义标签学习(高级)
关键字: 自定义标签
BodyTag接口
    接口BodyTag的实现类,它是负责操作主体内容(bodyContent).
定义方法:public void doInitBody();
    public int doAtferBody();
提示,那些在doStartTag()方法之后被调用的方法依赖于doStartTag()方法返回值并且看在JSP页 ......

JSP禁止缓存代码

 //JSP禁止缓存代码

response.setHeader("Pragma","No-cache");

response.setHeader("Cache-Control","no-cache");

response.setDateHeader("Expires", 0);



//网络上的不能正确运行代码参考

if(request.getProtocol().compareTo("HTTP/1.0")==0)

{
......

jsp mysql 插入 读取 图片

建立数据库:
我的数据库images
create table img (
id  int primary key auto_increment,
name varchar(80),
pic  longblob
)
要保证网站根目录 有个 images 文件夹
插入数据库 从本地文件夹
<%@ page contentType="text/html; charset=utf-8" language="java"  import="java.sql.*,java.io.*" ......

JSP服务器环境配置

 要把JSP的运行环境配置好`
具体的资料这有:
Windows下JSP开发环境的配置:
摘 要 要学习JSP开发,必须先搭建一个符合JSP规范的开发环境。本文以实用为原则,介绍了以Tomcat服务器为核心的3种配置JSP环境的方法。
Sun推出的JSP(Java Server Pages)是一种执行于服务器端的动态网页开发技术,它基于Java技术。 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号