文字列型の結果をクエリ型の名前付きクエリに返す方法....私が試したコード
public String getTargetEmail(){
Query query= em.createNamedQuery("BC_READ_SYSTEM_PROPERTIES_BY_NAME");
return (String)query.toString();
}
しかし、これは次のようなものを返しますorg.hibernate.ejb.QueryImpl@3e4d072b
文字列型の結果をクエリ型の名前付きクエリに返す方法....私が試したコード
public String getTargetEmail(){
Query query= em.createNamedQuery("BC_READ_SYSTEM_PROPERTIES_BY_NAME");
return (String)query.toString();
}
しかし、これは次のようなものを返しますorg.hibernate.ejb.QueryImpl@3e4d072b
QueryオブジェクトでtoStringを呼び出すと、その文字列表現を取得するだけです。あなたは実際にこのようなクエリを実行する必要があります
return (String) query.getSingleResult();
クエリが常に1つの結果のみを返すようにします。そうでない場合、getSingleResultを呼び出すと、結果が1つ以上返される場合はNonUniqueResultException例外がスローされ、結果が返されない場合はNoResultExceptionがスローされます(ドキュメントを確認してください) 。