java 主键异常怎么捕获

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 主键异常怎么捕获相关的知识,希望对你有一定的参考价值。

* 我们自己如何处理异常呢?
 * A:try...catch...finally
 * B:throws 抛出
 * 
 * try...catch...finally的处理格式:
 *  try 
 *  可能出现问题的代码;
 *  catch(异常名 变量) 
 *  针对问题的处理;
 *  finally 
 *  释放资源;
 * 
 * 
 * 变形格式:
 *  try 
 *  可能出现问题的代码;
 *  catch(异常名 变量) 
 *  针对问题的处理;
 * 
 * 
 * 注意:
 *  A:try里面的代码越少越好
 *  B:catch里面必须有内容,哪怕是给出一个简单的提示
 /*
 * 在try里面发现问题后,jvm会帮我们生成一个异常对象,然后把这个对象抛出,和catch里面的类进行匹配。
 * 如果该对象是某个类型的,就会执行该catch里面的处理信息。
 * 
 * 异常中要了解的几个方法:
 * public String getMessage():异常的消息字符串
 * public String toString():返回异常的简单信息描述
 *  此对象的类的 name(全路径名)
 *  ": "(冒号和一个空格) 
 *  调用此对象 getLocalizedMessage()方法的结果 (默认返回的是getMessage()的内容)
 * printStackTrace() 获取异常类名和异常信息,以及异常出现在程序中的位置。返回值void。把信息输出在控制台。
 */
public class ExceptionDemo 
public static void main(String[] args) 
String s = "2014-11-20";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try 
Date d = sdf.parse(s); // 创建了一个ParseException对象,然后抛出去,和catch里面进行匹配
System.out.println(d);
 catch (ParseException e)  // ParseException e = new ParseException();
// ParseException
// e.printStackTrace();

// getMessage()
// System.out.println(e.getMessage());
// Unparseable date: "2014-11-20"

// toString()
// System.out.println(e.toString());
// java.text.ParseException: Unparseable date: "2014-11-20"

e.printStackTrace();
//跳转到某个指定的页面(index.html)


System.out.println("over");

参考技术A 据我所知没有专门的捕获主键的异常
你可以
try

catch(Exception ex)
ex.printStackTrace();

捕获异常之后,会在控制台打印你所捕获异常的信息。如果你只想捕获主键异常的话,可以把打印出来的主键异常名称来替换Exception. 其实效果是一样的。。。本回答被提问者和网友采纳
参考技术B try

catch(Exception e)

追问

是主键异常,不是所有异常。。。

追答

数据库主键?

那就是SQLException了,具体的子异常你操作一下,看看具体抛出的,然后catch就ok了啊

追问

抛出的主键异常和截断字符串异常都是SQLServerException。这怎么捕获啊,我两个都得捕获,怎么区分?

追答

肯定有子异常的啊,你先不要捕获,直接throws,然后插入主键重复的数据,看看是什么子异常,然后捕获的时候细化到子异常就ok了

参考技术C F8 是当断失断速度

关于获取java异常的方法

参考技术A 直接通过“try.....catch"将异常信息进行捕获,之后输出异常信息即可
如:
try
//需要捕获异常的代码

catch
(Exception
e)

System.out.println(e.getMessage());

解释:以上代码中如果在”//需要捕获异常的代码“
中有错误,会直接进行控制台输出。

以上是关于java 主键异常怎么捕获的主要内容,如果未能解决你的问题,请参考以下文章

MySQL 主键冲突异常如何全部捕获?

php 怎么捕获所有的异常?

java中 方法中抛出异常处理方法

java —— 异常

java axis2 调用webservice 怎么捕获超时异常(即超时了让它停下来,不要报错)

立即执行...捕获记录特定异常