notes[java]

一 .  从数据库取数据注意的问题

从数据库取数据的时候

int count = 0;

while(rs.next()){

            for(int i = 1; i <= rs.getMetaData().getColumnCount(); i++){
                  str[count] = rs.getString(i);
                  count++;
    }

}

 i <= rs.getMetaData().getColumnCount();     是取数据库每条记录的所有查询的字段;                    (推荐使用 )

i  <  rs.getMetaData().getColumnCount();      如果没有 "=" 号  将取不到数据库每条记录的最后一个字段;       ( 不推荐使用 )

 

                                                                                                                   2008.07.18       嘉兴

 

二 .  从jsp页面requeset取值 出现乱码的解决方法

        比如b.jsp 从 a.jsp下拉列表中取值 在b.jsp中显示乱码  可以在b.jsp中加上

        <%

         request.setCharacterEncoding("UTF-8");

        %>

         即可解决中文乱码问题。

  

                                                                                                                     2008.07.26       嘉兴

 

 

 

三 .  对只转发结果集的无效操作  ResultSet.last()出错  的解决方法


       分析: 异常出现于移动结果集的指针时,原因是在生成statement对象的时候提供的参数不同
无参数的那个方法使用的是默认参数,statement执行后得到的结果集类型为 ResultSet.TYPE_FORWARD_ONLY.这种类型的结果集只能通过rs.next();方法逐条读取,使用其他方法就会报异常. 如果想执行一些复杂的移动结果集指针的 操作就要使用其他参数了

       解决方法一 :      把  Statement  stmt = conn.createStatement(); 
       改为 Statement  stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);      就可以了;

       解决方法二 :直接在sql中加入count(*)的记录方法,这样的效率是最高的,因为计算行数是在数据库中进行,所以当然快;


顺便介绍一下ResultSet的各个参数:


1. ResultSet.TYPE_FORWARD_ONLY (略)
2. ResultSet.TYPE_SCROLL_INSENSITIVE 双向滚动,但不及时更新,就是如果数据库里的数据修改过,并不在ResultSet中反应出来。
3. ResultSet.TYPE_SCROLL_SENSITIVE 双向滚动,并及时跟踪数据库里的更新,以便更改ResultSet中的数据。
4. ResultSet.CONCUR_READ_ONLY 只读取ResultSet
5. ResultSet.CONCUR_UPDATABLE 用ResultSet更新数据库
参考资料:http://www.mypm.net/blog/user1/mywes/archives/2007/13800.html

                                                                                                                         

                                                                                                                                                              2008.07.29       嘉兴

 

 

 

四 . 去掉页面超链接下划线的方法(html/jsp)

    可以用CSS语法来控制超链接的形式、颜色变化。

  下面做一个这样的链接:未被点击时超链接文字无下划线,显示为蓝色;当鼠标在链接上时有下划线,链接文字显示为红色;当点击链接后,链接无下划线,显示为绿色。 
  实现方法很简单,在源代码的<head>和<head>之间加上如下的CSS语法控制: 
   <style type="text/css">
   <!--
   a:link { text-decoration: none;color: blue}
   a:active { text-decoration:blink}
   a:hover { text-decoration:underline;color: red}
   a:visited { text-decoration: none;color: green}
   -->
   </style> 
  其中:
  a:link 指正常的未被访问过的链接;
  a:active 指正在点的链接;
  a:hover 指鼠标在链接上;
  a:visited 指已经访问过的链接;
  text-decoration是文字修饰效果的意思;
  none参数表示超链接文字不显示下划线;
  underline参数表示超链接的文字有下划线 
  
  同样,如果讲none替换成overline则给超链接文字加上划线,换成line-through给超链接文字加上删除线,blink则使文字在闪烁。 
 
                                                                               2008.07.30       嘉兴
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值