2017-01-17 18 views
-1

私は1つのクエリを持っています。そのクエリは入力を持っています、入力がデータベースで見つかった場合、それは合計値を返します。入力がdbで見つからない場合は、例外がスローされます。クエリが例外をスローするときにNullpointerExceptionを処理する方法は?

String Query="SELECT SUM(tot) FROM Test where Id=?"; 

double sum = getJdbcTemplate().queryForObject(
     Query, new Object[] { Id }, Double.class); 

return sum; 

デシベルで存在Idは、それが返されます合計は、それはNullPointerException.Iがexception.Ifは私が合計値を設定したい、その後にNullPointerを得たことを処理したい戻りますvalue.Otherwise 0

+0

例外をキャッチ。 –

+0

は直接ヌルポインタですか? –

答えて

0
として

代わりに、プリミティブdoublejava.lang.Doubleを使用することができ、その後、プログラム的nullをチェック:

String Query="SELECT SUM(tot) FROM Test where Id=?"; 

Double sum = getJdbcTemplate().queryForObject(
      Query, new Object[] { Id }, Double.class); 

return Optional.ofNullable(sum).orElse(0.0); 
関連する問題