草庐IT

Try-Catch-Continue

全部标签

java - Hibernate、Spring、@Transactional - 围绕 try/catch?

我正在使用Spring3和Hibernate3.6开发一个网络应用程序。我对@Transactional注释和代码结构有一些疑问。->当我使用@Transactional(使用Spring进行事务管理)时,是否必须在调用它们时使用try/catch包围@Transactional注释的方法?例如,当我得到一个加载、更改并返回一个对象的方法时,我从另一个类调用它:我是否必须用try/catch包围调用?也许出了什么问题,没有返回对象,数据库连接失败..我不知道。直到现在,我认为@Transactional关心所有可能发生的异常,并在发生错误时回滚此事务中的每个操作。但如果它发生了,我必须

java跳过catch子句直接跳到finally in apache pdfbox

在这件事上,我双手插在头发上。我正在使用ApachePDFBox,因为我想在JAVA中逐行读取pdf文件,然后再处理内容。但是我有以下问题..我在一个单独的java程序中使用了下面的代码(在main方法中)并且它在那里工作正常。但是,当我在我的tomcat服务器小程序中将它与quartz调度程序结合使用时,出现了问题,我无法弄清楚原因。请记住,我将下面的行从工作的单独测试程序复制并粘贴到我自己的更大项目中,因此它们是完全相同的代码。然而,在我更大的项目中,程序一直运行到我放置断点的Stringx1=..行。当我尝试越过它时,它不会给出任何错误、控制台输出或任何东西,而是直接跳过catc

java - 扩展的 try-with-resources 语句到底捕获了什么?

在下面的代码块中:try(/*resourcesdeclaration*/){//somedangerouscode}catch(Exceptione){//errorhandlingandreporting}如果tryblock中的代码和自动close()语句都抛出异常,会发生什么情况?哪个会被catchblock捕获?两个都?只有其中之一?如果有,是哪一个?此外,如果try成功但close不成功怎么办?会进入catchblock吗? 最佳答案 引自JLS部分14.20.3.1:Inabasictry-with-resources

java - 对于基于 I/O 的流,我应该在 flatMap 中使用 try-with-resource 吗?

AStream是一个AutoCloseable,如果基于I/O,应该在try-with-resourceblock中使用。通过flatMap()插入的基于I/O的中间流怎么样?示例:try(varfoos=foos()){returnfoos.flatMap(Foo::bars).toArray(Bar[]::new);}对比try(varfoos=foos()){returnfoos.flatMap(foo->{try(varbars=foo.bars()){returnbars;}}).toArray(Bar[]::new);}flatMap()文档说:Eachmappedstre

JAVA + try catch(FileNotFoundException e) 进入 catch(Exception e)?

我有一些命令可以在磁盘上创建一个文件。因为必须在其中创建文件的文件夹是动态的,所以我有一个问题(FileNotFoundExceptione)。在同一个tryblock中,我已经有了一个catch(Exceptione)block。出于某种原因,当我运行我的代码并且该文件夹尚不存在时,将使用catch(Exceptione)block,而不是FileNotFoundExceptionblock。虽然调试器很清楚(至少对我而言),但显示了FileNotFoundException:java.io.FileNotFoundException:c:\mydata\2F8890C2-13B9-

java - 如果 catch block 或 finally block 有一些异常会发生什么?

这个问题在这里已经有了答案:Exceptionthrownincatchandfinallyclause(12个答案)关闭8年前。在异常处理中,如果catchblock或者finallyblock出现Exception会怎样?

java - 预期异常时避免空 catch block

我正在尝试使用SimpleDateFormat解析日期。由于我的服务采用多种日期格式,因此我采用了this方法:String[]formats={"yyyy-MM-dd'T'HH:mm:ss.SSSZ","yyyy-MM-dd'T'HH:mm:ss.SSS'Z'","yyyy-MM-dd'T'HH:mm:ss.SSS-HH:mm","EEEMMMddHH:mm:ssZyyyy"};for(Stringformat:formats){try{returnnewSimpleDateFormat(format).parse(dateString);}catch(ParseExceptione

java - 如何检索 'try' block 中被抑制的异常?

从Java7开始,我们可以使用try-with-resources语句:staticStringreadFirstLineFromFile(Stringpath)throwsIOException{try(BufferedReaderbr=newBufferedReader(newFileReader(path))){returnbr.readLine();}}如果br.readLine()和br.close()都抛出异常,readFirstLineFromFile将throwtryblock的异常(br.readLine()的异常),以及隐式finallyblock的try-with

java - 在 catch 子句中抛出异常

我有两段代码:classPreciseRethrow{publicstaticvoidmain(String[]str){try{foo();}catch(NumberFormatExceptionife){System.out.println(ife);}}staticprivatevoidfoo()throwsNumberFormatException{try{inti=Integer.parseInt("ten");}catch(Exceptione){throwe;}}}和:classPreciseRethrow{publicstaticvoidmain(String[]str

java - while 循环中带标签的 continue 语句

以下简单示例会导致编译时错误。但不清楚原因。publicstaticvoidmain(String[]args)throwsjava.lang.Exception{inti=0;d:{System.out.println("d");}while(i--和--publicstaticvoidmain(String[]args)throwsjava.lang.Exception{inti=0;d:{System.out.println("d");while(iDEMO但以下工作正常:publicstaticvoidmain(String[]args)throwsjava.lang.Exce