java踩坑之路(不定期更新)

1. 使用myeclipse自动补全功能时,选择错误的类,导进错误的包

java踩坑之路(不定期更新)_第1张图片
document对象.png

如上图所示,当使用dom解析xml时选择为导进第二个document包就会导致一系列出错,例如解析器对象调用parse方法返回的是document对象,但在下图中编译器显示错误。


java踩坑之路(不定期更新)_第2张图片
对象不匹配.png

2.myeclipse控制台默认是gbk编码,所以当工作空设置为UTF-8时,从控制台输入数据会导致输出结果出现乱码。(见Day06-拓展部分)

3.当导入的工程出现感叹号时一般是因为环境配置出现问题,此时在工程名右键选择--build path--configure build path,再按下图操作

java踩坑之路(不定期更新)_第3张图片
举例更换jdk版本

点击next之后选择本地的jdk版本


java踩坑之路(不定期更新)_第4张图片
添加jdk版本

4.异常什么时候处理什么时候抛出

  • 当一个方法最终会被别人调用,例如jdbc中注册驱动,则直接选择抛出异常,当某个地方调用这个方法时再去处理异常
  • 而当例如JDBC工具类需要经常调用,一般就将出现异常直接处理而不是抛出。
  • ·Class.forName("com.mysql.jdbc.Driver"); ·
  • 当一个方法需要自己执行的时候,eclipse提示有异常时,则需要自己进行try catch处理

原则:谁调用谁处理

5.jdbc导包选择

书写JDBC工具类时

  • 获取连接:public static Connection getConnection() {} 其中Connection导包注意是选择 java.sql.Connection而不是com.mysql.jdbc.Connection
    java踩坑之路(不定期更新)_第5张图片
    Paste_Image.png

创建预处理对象:PreparedStatement pstmt = conn.prepareStatement(sql);


java踩坑之路(不定期更新)_第6张图片
Paste_Image.png

6.引用声明

如果将一个类的引用声明在try语句中,则在语句外通过 return 返回引用会报错

java踩坑之路(不定期更新)_第7张图片
Paste_Image.png

正确的写法是在类开头声明类的一个空引用,然后在try语句中new对象指向引用,最后才能通过return返回。
java踩坑之路(不定期更新)_第8张图片
Paste_Image.png

特别注意:静态函数里的引用必须事先声明为静态
java踩坑之路(不定期更新)_第9张图片
Paste_Image.png

7.判断数据是否为空

拿到数据一般先判断,特别是变量,如果为空,后面语句直接调用会抛出异常。

8.用eclipse导入web项目时提示的找不到servlet包的错误

解决方法:
1、右击项目名->properties

2、选择下面的Targeted Runtimes

3、选择右边你所打开的Tomcat 服务器->apply->ok即可。

java踩坑之路(不定期更新)_第10张图片
Paste_Image.png

8.eclipse添加模版

即书写关键字后可以通过alt+/直接生成模版代码

java踩坑之路(不定期更新)_第11张图片
添加servlet模版代码

9.表单标签中的标签必须要有name属性,否能不能提交

10.方法中的参数如果是数组的话可以用可变参数代替,例如使用dbutils时query方法

java踩坑之路(不定期更新)_第12张图片
Paste_Image.png

11.实体类的名字一般命名为domain/entity/pojo/bean

12.如果直接将txt文件拖入eclipse会发生乱码的话,就将文本内容全部粘贴到eclipse新建的文本文件中,则原有的编码方式会修改为eclipse已设定的编码方式如utf-8

13.基础语法,赋值语句必须写在方法中

java踩坑之路(不定期更新)_第13张图片
image.png
java踩坑之路(不定期更新)_第14张图片
image.png

14.基础语法,创建对象数组

java踩坑之路(不定期更新)_第15张图片
image.png

15.mysql语句中逗号问题

如下图在最末尾的括号前加逗号则会导致错误,正确写法为去掉都到


java踩坑之路(不定期更新)_第16张图片

16.使用命令行编译java文件时,需要注意该文件是否为ANSI编码,如果是从IDE中拷贝出来的代码一般为UTF-8格式,会导致命令行编译时报错:编码GBK的不可映射字符

17.条件判断语句中如果判断条件调用了一个函数,那么即使返回值让条件语句不执行,但被调用的函数体内的内容还是会执行,例如输出日志信息

java踩坑之路(不定期更新)_第17张图片
image.png

你可能感兴趣的:(java踩坑之路(不定期更新))