楼主: 小青豆

[Bug] 【有奖活动】晒出自己的bug,做优秀的程序员,赢大奖!

[复制链接]

该用户从未签到

发表于 2014-8-12 20:14:21 | 显示全部楼层
老秦人 发表于 2014-8-12 17:23
一次才一个奖品你怎么分啊

分一半 嘎嘎嘎 把东西 拆了··

该用户从未签到

发表于 2014-8-12 20:17:00 | 显示全部楼层
非VIP会员信息暂不显示

该用户从未签到

发表于 2014-8-12 20:55:06 | 显示全部楼层
没个帖子包含BUG截图
  • TA的每日心情

    2015-6-25 12:42
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    发表于 2014-8-12 20:55:56 | 显示全部楼层
    唐人街 发表于 2014-8-12 20:14
    分一半 嘎嘎嘎 把东西 拆了··

    这也行啊。。

    该用户从未签到

    发表于 2014-8-13 03:20:08 | 显示全部楼层
    分析:这段代码本来的作用就是让它能够通出修改哭修改他们的属性.所以要是把他的变量改为公用的就没有什么意思了。
    解决方法:因为必须是私有的,所以不能直接赋值取值,要调用set和get方法来进行赋值和取值。
    正确3.jpg
    正确2.jpg
    正确.jpg
    错误3.jpg
    错误2.jpg
    错误.jpg
  • TA的每日心情
    开心
    2019-6-19 10:01
  • 签到天数: 125 天

    [LV.7]常住居民III

     楼主| 发表于 2014-8-13 08:33:43 | 显示全部楼层
    请发相关的bug贴喔,在此回复不予计分的!

    该用户从未签到

    发表于 2014-8-13 12:06:01 | 显示全部楼层
    呀呼
  • TA的每日心情

    2016-11-4 00:00
  • 签到天数: 129 天

    [LV.7]常住居民III

    发表于 2014-8-13 17:14:41 | 显示全部楼层
    1.在做Hibernate+Spring+Struts2的项目时找不到Spring的配置文件,applicationContext.xml。具体异常如下:
    org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [applicationContext.xml]; nested exception is java.io.FileNotFoundException: class path resource [applicationContext.xml] cannot be opened because it does not exist
    java.io.FileNotFoundException: class path resource [applicationContext.xml] cannot be opened because it does not exist
    解决办法:把applicationContext.xml文件往classes文件中复制一份就行了,一般问题就可以解决。

    2.在oracle中不知道怎么生成了好多系统以BIN$开头的表,删除不了 如BIN$VWok2fIGXNbgRAAY/i0zxw==$0
    用purge recyclebin;执行这个sql语句可以解决这个问题。


    3.关键字: java.sql.sqlexception ora-01861 文字与格式字符串不匹配 -----这是在控制台报的错
    java.sql.SQLException: ORA-01861: 文字与格式字符串不匹配,因为我把数据库中为Date格式的写成了123456789,就报了这个错,注意注意啊.
    同时在页面提交时会报org.springframework.dao.DataIntegrityViolationException: Could not execute JDBC batch update; nested exception is org.hibernate.exception.DataException: Could not execute JDBC batch update错误。
    4.文档的名称是:oralce怎么查看用户名密码
    网址是: http://www.myexception.cn/oracle exception/4578.html
    5.11:03:10.968 [http-8080-6] ERROR c.jrboo.common.dao.BaseHibernateDao - 查询失败
    org.springframework.orm.hibernate3.HibernateQueryException: document is not mapped [select d from document as d  where d.state=1]; nested exception is org.hibernate.hql.ast.QuerySyntaxException: document is not mapped [select d from document as d  where d.state=1]
    解决:是由于我的sql语句中实体名写错了。区分大小写,否则找不到。



    6.java.lang.NullPointerException: in is null
    是在发布工作流的时候出的错,是因为你发布的文件路径 不对或文件名错误。解决办法:  ZipInputStream zis = new ZipInputStream(this.getClass().getResourceAsStream("/com/jrboo/jbpm4/jbdl/doc.zip"));  正确写文件名或路径就可以解决。

    7.IMP-00019 IMP-00003 ORA-00001    toad for oracle 导入出错

    因为impdp的bug较多,在我导入数据的时候,有错误,我于是用imp工具



    imp skate/password fromuser=skate touser=skate_new file=/home/oracle/admin/omovo/dpdump/compassweb.dmp ignore=y
    提示下面的错误:

    IMP-00019: row rejected due to ORACLE error 1
    IMP-00003: ORACLE error 1 encountered
    ORA-00001: unique constraint (MOVO_NEW.COMPASSINDEXPLACE_PK) violated

    从错误可以看出,是因为有重复的数据,经过google后,了解到如果表没有constraints, 用ignore=y.可以覆盖表,但如果表
    有constriants,那就要先删除原有的数据,在后在imp.否则会提示上面的错误.

    我的做法是删除已经存在的表,然后在imp,结果ok全部导入

    8.jsp 导出pdf格式报错

    如果使用JSP导出PDF文档,需要导入几个包:iTextAsian.jar(没有的话会提示缺少字体org.apache.jasper.JasperException: Could not load the following font);itext-1.3.1.jar(没有的话会提示缺少导出到PDF的一些包java.lang.NoClassDefFoundError: com/lowagie/text/pdf/FontMapper);jasperreports-1.3.3.jar(基本的编译包);

    9。select CANDIDATE_NO,CANDIDATE_NAME,
           decode(GENDER,'0','男',decode(GENDER,'1','女')) GENDER,
           MAJOR_NAME,
           CTSV.ID_CARD_NO,
           CTSV.THE_YEAR
           from candidate_Total_Score_View CTSV,MAJOR
           where STATE in ('D','F') and CTSV.THE_YEAR='2009' and major.major_id = CTSV.CANDIDATE_TYPE;

    注:   decode(GENDER,'0','男',decode(GENDER,'1','女')) GENDER 相当于if  else  




    4、父窗体获得子窗体的值: dwqk 是iframe的name。

    dwqk.window.document.getElementById("maindeptname").value


    10.

    方法一:oracle卸载不干净的解决办法
    先前安装的是10.1,出了些问题,准备重新安装10.2版,卸载后发现有的服务没有被删掉,删除服务的命令是:sc delete (服务名)
    DOS下执行:
    sc delete OracleOraDb10g_home1TNSListener
    sc delete OracleDBConsoleorcl

    之后再安装就可以了


    方法二:
    Oracle卸载卸不干净,Oracle彻底删除的办法(winxp)

    用oracle的卸载程序并不能完全卸载干净。如之前的命名的oracle sid 不能再使用。会提示sid存在。下面是在winxp下完全卸载oracle的方法。
    1、开始->设置->控制面板->管理工具->服务  
         停止所有Oracle服务。  
    2、开始->程序->Oracle  -  OraHome81->Oracle  Installation  Products->Universal  Installer  
         卸装所有Oracle产品  
    3、运行regedit,选择HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE,按del键删除这个入口。  
    4、运行regedit,选择HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services,滚动这个列表,删除所有Oracle入口  
    5、从桌面上、STARTUP(启动)组、程序菜单中,删除所有有关Oracle的组和图标  
    6、重新启动计算机,重起后才能完全删除Oracle所在目录  
    7、删除与Oracle有关的文件,选择Oracle所在的缺省目录C:\Oracle,删除这个入口目录及所有子目录.
  • TA的每日心情

    2016-11-4 00:00
  • 签到天数: 129 天

    [LV.7]常住居民III

    发表于 2014-8-13 17:15:34 | 显示全部楼层
    11.  oracle 创建数据库表空间和用户



    建表空间
    CREATE TABLESPACE ZZZS_DATA01 DATAFILE 'D:\oracle\product\10.2.0\oradata\zzzs\zzzs_data01.dbf' SIZE 300M AUTOEXTEND ON NEXT 10M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 256K ;     

    CREATE TABLESPACE ZZZS_DATA02 DATAFILE 'D:\oracle\product\10.2.0\oradata\zzzs\zzzs_data02.dbf' SIZE 200M AUTOEXTEND ON NEXT 10M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 256K ;  

    CREATE TABLESPACE ZZZS_DATA03 DATAFILE 'D:\oracle\product\10.2.0\oradata\zzzs\zzzs_data03.dbf' SIZE 300M AUTOEXTEND ON NEXT 10M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 512K ;

    CREATE TABLESPACE ZZZS_INDEX01 DATAFILE 'D:\oracle\product\10.2.0\oradata\zzzs\zzzs_index01.dbf' SIZE 300M AUTOEXTEND ON NEXT 10M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K ;     

    CREATE TABLESPACE ZZZS_INDEX02 DATAFILE 'D:\oracle\product\10.2.0\oradata\zzzs\zzzs_index02.dbf' SIZE 200M AUTOEXTEND ON NEXT 10M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K ;  

    CREATE TABLESPACE ZZZS_INDEX03 DATAFILE 'D:\oracle\product\10.2.0\oradata\zzzs\zzzs_index03.dbf' SIZE 300M AUTOEXTEND ON NEXT 10M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 256K ;
    --------------------------------------------------------------------------------------------------------------------------------------------------------
    建用户
    CREATE USER zzzs IDENTIFIED BY zzzs DEFAULT TABLESPACE zzzs_DATA01 TEMPORARY TABLESPACE temp;

    GRANT connect,dba to zzzs;
    12、在sqlplus中写
    create user xgxt

      identified by "xgxt"

      default tablespace USERS

      temporary tablespace TEMP

      profile DEFAULT;

      

    grant connect to xgxt;

    grant dba to xgxt;

    grant resource to xgxt;

      

    grant unlimited tablespace to xgxt;

    提示授权成功则完成xgxt用户的创建以及授权。

    13。登录toad报oci version is not support 错误。

    解决方法:在环境变量的path中加入oracle的安装路径如: d:\oracle\product\10.2.0\db_1\bin; 这样就解决了。

    14.ireport 显示数据库图片   Blob类型  流
         例如:数据库图片字段PICTURE_ATTACH类型为blob,在邦定字段时,

    设置ireport中字段(Fields)PICTURE_ATTACH属性:

    该字段类型 Field Class设置为 java.io.InputStream

    然后添加一个图片来显示该图片字段,选择图片,设置属性:

    属性image expression设置为 $F{PICTURE_ATTACH}

    属性Expression class 设置为java.io.InputStream

    15.Tomcat报OutOfMemery 的错 , 原因是内存泄露。

    解决方法:在配置tomcat的JDK中Optional  Java VM arguments:中加入
    -Xmx512M -Xms256M -XX:MaxPermSize=256m就可以加大内存。

    16.控制台出现的一部分信息,因为他很影响我启动的时间,等的太久了,如何让不必要的信息不显示出来,hibernate上的show_sql属性已经删除了,信息也少了点,上面那些如何让他不显示啊?因为其他SSH的项目也不见它有上面的信息啊!高人指点以下啊...

    解决:修改log4j级别,log4j.rootLogger=INFO修改成log4j.rootLogger=ERROR



    17、保存reportprint 用:JasperFillManager.fillReportToFile(reportFile.getPath(), destFilePathName, parameters, odsObject);要用的时候jasperPrint = (JasperPrint)JRLoader.loadObject(destFilePathName);

    这个jasperprint相当于把数据都保存在这里面了就连图片也能保存到里边。

    18.oracle查找所有用户:select * from dba_users;
    19.Oracle语法中 Nvl(FieldName,2)意思是如果FieldName为Null,那么返回2,否则返回FieldName的值。

    20.oracle创建表的自增,自增需指定表的主键ID
    CREATE TABLE Student
    (
    ID int,
    stuName VARCHAR2(20),
    stuSex varchar2(10),
    stuSchool varchar2(20),
    stuClass varchar2(10),
    constraint PK_Student primary key (ID)
    );
    create sequence SEQ_Student
    increment by 1
    start with 1

    删除自增
    drop sequence seq_student;

    查所有的自增

    select * from all_sequences
  • TA的每日心情

    2016-11-4 00:00
  • 签到天数: 129 天

    [LV.7]常住居民III

    发表于 2014-8-13 17:17:52 | 显示全部楼层
    21.
    select * from user_sys_privs; ---查询数据库登录用户有什么权限



    22.表格不撑大,换行 解决办法:style="table-layout:fixed;word-break:break-all"

    23.Oracle 中的函数(lpad nvl Upper  Replace)

    lpad
    在Oracle/PLSQL中,lpad函数将左边的字符串填充一些特定的字符,
    其语法格式如下:      
      lpad( string1, padded_length, [ pad_string ] )
      其中string1是需要粘贴字符的字符串
      padded_length是返回的字符串的数量,如果这个数量比原字符串的长度要短,lpad函数将会把字符串截取成padded_length;

      pad_string是个可选参数,这个字符串是要粘贴到string1的左边,如果这个参数未写,lpad函数将会在string1的左边粘贴空格。
      例如:
      lpad('tech', 7); 将返回' tech'
      lpad('tech', 2); 将返回'te'
      lpad('tech', 8, '0'); 将返回'0000tech'
      lpad('tech on the net', 15, 'z'); 将返回 'tech on the net'
      lpad('tech on the net', 16, 'z'); 将返回 'ztech on the net'
      
      
    nvl
    通过查询获得某个字段的合计值,如果这个值为null将给出一个预设的默认值

    例如:

    select nvl(sum(t.dwxhl),1)

    from tb_jhde t

    就表示如果sum(t.dwxhl) = NULL 就返回 1


    另一个有关的有用方法

    declare i integer

    select nvl(sum(t.dwxhl),1) into i from tb_jhde t where zydm=-1这样就可以把获得的合计值存储到变量i中,如果查询的值为null就把它的值设置为默认的1

    通过查询获得某个字段的合计值,如果这个值位null将给出一个预设的默认值
      select nvl(sum(t.dwxhl),1) from tb_jhde t where zydm=-1
    这里关心的nvl的用法,nvl(arg,value)代表如果前面的arg的值为null那么返回的值为后面的value

    另一个有关的有用方法
    declare
    i integer
    select nvl(sum(t.dwxhl),1) into i from tb_jhde t where zydm=-1
    这样就可以把获得的合计值存储到变量i中,如果查询的值为null就把它的值设置为默认的1

    Upper()
    功能将字符串中的小写字母转换为大写字母。
    语法Upper( string )
    参数string:要将其中的小写字母转换为大写字母的字符串返回值String。函数执行成功时返回将小写字母转换为大写字母后的字符串,发生错误时返回空字符串("")。如果string参数的值为NULL,Upper()函数返回NULL。
    eg:select  upper('AaCdD')  from dual;
    UPPER('AACDD')

    Replace函数
    描述
    返回一个字符串,该字符串中指定的子字符串已被替换成另一子字符串,并且替换发生的次数也是指定的。

    语法

    Replace(expression, find, replacewith[, start[, count[, compare]]])
    Replace函数语法有如下几部分:
    部分 描述
    expression 必需的。字符串表达式,包含要替换的子字符串。
    find 必需的。要搜索到的子字符串。
    replacewith 必需的。用来替换的子字符串。
    start 可选的。在表达式中子字符串搜索的开始位置。如果忽略,假定从1开始。
    count 可选的。子字符串进行替换的次数。如果忽略,缺省值是 -1,它表明进行所有可能的替换。
    compare 可选的。数字值,表示判别子字符串时所用的比较方式。关于其值,请参阅“设置值”部分。


    设置值
    compare参数的设置值如下:
    常数 值 描述
    vbUseCompareOption -1 使用Option Compare语句的设置值来执行比较。
    vbBinaryCompare 0 执行二进制比较。
    vbTextCompare 1 执行文字比较。
    vbDatabaseCompare 2 仅用于Microsoft Access。基于您的数据库的信息执行比较。


    返回值

    Replace的返回值如下:
    如果 Replace返回值
    expression长度为零 零长度字符串("")。
    expression为Null 一个错误。
    find长度为零 expression的复本。
    replacewith长度为零 expression的复本,其中删除了所有出现的find 的字符串。
    start > Len(expression) 长度为零的字符串。
    count is 0 expression.的复本。

    说明

    Replace函数的返回值是一个字符串,但是,其中从start所指定的位置开始,到expression字符串的结尾处的一段子字符串已经发生过替换动作。
    并不是原字符串从头到尾的一个复制。


    24.oracle 中列转行的函数

    SELECT MO, MAX(NM) AS NUM, WM_CONCAT(FTYPE) as ftype
      FROM (SELECT D.MODULE AS MO,
                   D.FUNCTIONTYPE AS FTYPE,
                   SUM(SUM(NUM)) OVER(PARTITION BY D.MODULE) AS NM,
                   ROW_NUMBER() OVER(PARTITION BY D.MODULE ORDER BY SUM(D.NUM) DESC) AS RN
              FROM GOS_SYS_VISIT D
             WHERE D.MODULE IN (1, 2, 8, 10, 5, 3, 12, 4, 6)
             GROUP BY D.MODULE, D.FUNCTIONTYPE)
    WHERE RN <= 3
    GROUP BY MO

    其中WM_CONCAT(FTYPE)是将列转为行的函数用法。 查询FTYPE列是以点分开的一行显示。
    图片

    25.ORACLE 中数据库中类型为clob类型,插入时候数据大于4000报错。需要在hibernate映射中把字段的类型改为type="com.topsuntech.gOS.query.type.OracleClobType"  就好了。(这个类型是我们公司自己封装好的!)

    26.

    出错描述: struts 开发中抛出异常java.lang.IllegalArgumentException No destination bean specified

    原因: 前面传递过来的表单于后面要显示的表单不一致,或着说前面没绑定表单,而你却使用了如下语句:   

    // 语句的作用是初始化UserForm让UserForm的值都为空  

    User user = new User();     

    UserForm userForm = (UserForm)form;     BeanUtils.copyProperties(userForm,user);

    处理: 在相对应的action里面加入attribute和name参数绑定到对应的表单就行了

    27.这个就是解决框架的那个页面单独独立出来的

    <script language="JavaScript">
    if (window != top)
    top.location.href = location.href;
    </script> 把这个添加到head中就可以了
    28.重要的函数js和java函数。

    ceil():将小数部分一律向整数部分进位。
    如:
    Math.ceil(12.2)//返回13
    Math.ceil(12.7)//返回13
    Math.ceil(12.0)// 返回12
    floor():一律舍去,仅保留整数。
    如:
    Math.floor(12.2)// 返回12
    Math.floor(12.7)//返回12
    Math.floor(12.0)//返回12
    round():进行四舍五入
    如:
    Math.round(12.2)// 返回12
    Math.round(12.7)//返回13
    Math.round(12.0)//返回12



    28、给textarea输入11个字符后加回车,解决办法: document.getElementById('textarea的ID').value.replace(/(.{11})/ig,'$1\n');

    29、在pl/sql中使用exp/imp工具实现oracle数据导出/导入
    Oracle 数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把 dmp文件从本地导入到远处的数据库服务器中。 利用这个功能可以构建两个相同的数据库,一个用来测试,一个用来正式使用。
    执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行,
    DOS中可以执行时由于 在oracle 8i 中 安装目录\ora81\BIN被设置为全局路径,
    该目录下有EXP.EXE与IMP.EXE文件被用来执行导入导出。
    oracle用java编写,SQLPLUS.EXE、EXP.EXE、IMP.EXE这两个文件有可能是被包装后的类文件。
    SQLPLUS.EXE调用EXP.EXE、IMP.EXE所包裹的类,完成导入导出功能。
    下面介绍的是导入导出的实例。
    数据导出:
    1 将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp中
       exp system/manager@TEST file=d:\daochu.dmp full=y
    2 将数据库中system用户与sys用户的表导出
       exp system/manager@TEST file=d:\daochu.dmp owner=(system,sys)
    3 将数据库中的表inner_notify、notify_staff_relat导出
        exp aichannel/aichannel@TESTDB2 file= d:\data\newsmgnt.dmp tables=(inner_notify,notify_staff_relat)
    4 将数据库中的表table1中的字段filed1以"00"打头的数据导出
       exp system/manager@TEST file=d:\daochu.dmp tables=(table1) query=\" where filed1 like '00%'\"
    上面是常用的导出,对于压缩,既用winzip把dmp文件可以很好的压缩。
    也可以在上面命令后面 加上 compress=y 来实现。

    数据的导入
    1 将D:\daochu.dmp 中的数据导入 TEST数据库中。
       imp system/manager@TEST file=d:\daochu.dmp
       imp aichannel/aichannel@HUST full=y file=file= d:\data\newsmgnt.dmp ignore=y
       上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。
       在后面加上 ignore=y 就可以了。
    2 将d:\daochu.dmp中的表table1 导入
    imp system/manager@TEST file=d:\daochu.dmp tables=(table1)
    基本上上面的导入导出够用了。不少情况要先是将表彻底删除,然后导入。
    注意:
    操作者要有足够的权限,权限不够它会提示。
    数据库时可以连上的。可以用tnsping TEST 来获得数据库TEST能否连上。

    您需要登录后才可以回帖 登录 | 注册青鸟豆号

    本版积分规则

    Copyright 1999-2019 Beijing Aptech Beida Jade Bird Information Technology Co.,Ltd

    北大青鸟IT教育 北京阿博泰克北大青鸟信息技术有限公司 版权所有

    京ICP备11045574号-3 京公网安备11010802013845号

    快速回复 返回顶部 返回列表