天天看点

20170722日常总结

1.当确定一个方法不提供给外部调用时,权限修饰符应写成private,而不是public

2.使用ibatis,出现无效标识符的错误原因:

  。本身的sql有错误

  。语句配置错误,如:

   <select id="a" resultMap="">

     ....

   </select>

正确的配置为

   <select id="a" parameter="java.util.Map" resultClass="java.util.Long">

     ....

   </select>

3. select * from (select p.my_name as name) where name=""

   而不是  select * from (select p.my_name as name) where my_name=""

4.容易犯的错误

  错误: System.out.println("--->" + rsp == null);

  正确: System.out.println("--->" + rsp == null);

5. 哪里需要用到java变量,就在哪里新建该变量,遵循就近原则

6. java.class.classCastException

 解决:

 。把不能强转的vo继承对应的父类

 。使用一个新的vo(已继承父类)包装不能强转的vo

7、private static ApDzfqApplicationVo dzfqVO;

   这个声明是不合适的,因为它会公用一个VO,而不是新建VO,假如期待每个都是一个新的实例,

   需要去掉static修饰符。

8. svn提交代码:

 。特别注意配置文件的提交

 。提交的时候,最好详细写清楚每个功能描述信息

 。提交的时候,都要检查下每个要提交的文件

9.axis webservice出现的faultString:no such operation错误

 。检查webservice的方法名和配置文件里的方法名称

 。junit测试的时候,声明的serviceName是否写错

10.删除一个list集合,不能使用for的方式remove删除。正确做法为使用iterator去删除

11. 假如子类和父类有意义相似的字段,应该优先调用子类的字段

12. 把相同的代码块抽取到service层,业务层代码关联越少,通用性则更强大。

13. 为什么有些方法体里面直接返回一个null或者方法体里什么都没有

  。给方法调用者进行方法重写,优先执行子类重写的方法

14.webservice的VO类最好不要直接配置在xxx-sqlmap.xml文件中,而是新建一个VO类与之对应,方便日后的修改

15. oracle的group by函数:分组的条件越少,sql执行效率越高。先是group by,再是执行order by

16. oracle数据库查询的结果为0.98,到了java控制台显示为 .98

   解决:对这个字段进行格式化: to_char('number','fm9990.099')

17. 查看某个端口是否启用

netstat -ano|findstr 1521

18. ora-01745:无效的主机/绑定变量名

 原因:。sql语句缺少逗号分隔符 ,

       .使用了oracle关键字

19. 假如一个字段的值为null,在调用toString(),则会出现空指针错误。

    假如一个字段的值为"",在调用Integer.parse(),则会出现java.lang.NumberFormatException错误。

20. freemarker.core.parseException:encountered"<"

  解决:

  。符号存在问题

  。使用别的输入法试试

  。使用word 2007试试

21. java.io.FileNotFoundException: c:\wfis_log.txt(拒绝访问)

 在C盘修改该文件提示需要管理员权限。文件的使用权限导致出现该错误。对所要操作的文件进行权限的添加。

22. jboss中的deploy目录不能备份当前应用。一是会导致jboss启动慢;二是jboss启动的时候出现实例已经

 初始化的错误。

23. class文件的反编译文件不等于它原来的java源文件。

24. 程序卡死、应用卡死的时候,极大可能是程序中出现了死循环的操作。

25.count(case when xxx then 1 else null end),当else条件时,count函数并不会做加1操作

26. nexted exception is org.springframework.beans.TypeMisMatch  Exception:

   failed to convert proerty value of type[java.lang.String] to required type [java.lang.class]

   for property['loopResult FiledClass']

 可能原因:

 class类名与配置文件中的class类名不一致;大小写不一致

27. String startDay = "20150700";

    String closeDay = "201220910";

startDay.CompareTo(closeDay);  -1

closeDay.CompareTo(startDay);  1

28. 通过查询得到一个对象VO时,首先要确定该VO是否会为空,再去获取该对象VO的属性,

否则容易出现空指针错误。

29. List list = new ArrayList();

list.add("1");

list.add("2");

list.add("3");

list.add("4");

可以利用 List subList = list.subList(0,3);

作分批次提交,再使用subList.clear();