2017-05-20 2 views
0

午後、SQLの返却のクエリを作成しましたが、返すように変更することはできません 次に、メソッド内でクエリを返しますが、コンボボックスを追加するメソッドまたは返された値を処理するメソッドは、メソッド内で返すだけではありません。SQLクエリの返すメソッド

返品方法を変更するにはどうすればよいですか?

private void onClickLocalizarCidadePorEstado() throws Exception { 
     CidEstController cc = new CidEstController(); 
     try { 
      List<Cidade> c = cc.buscaCidadePorEstado(uf); 
      for(Cidade cidade : c) 
       System.out.println(cidade.getNom_cidade()); 
     } catch (SQLException e) { 
      JOptionPane.showMessageDialog(this, "Ocorreu um erro, tente novamente!n" + 
          e.getLocalizedMessage() 
        ); 
     } catch (NullPointerException e){ 
      JOptionPane.showMessageDialog(this, "Contato n&atilde;o localizdo ou n&atilde;o existe!n" + 
          e.getLocalizedMessage() 
        ); 
     } 
    } 
+0

もっと説明できますか...私はあなたの求めるものは明確ではありません。 –

+2

コードにSQLクエリがありません。 –

答えて

0

変更voidからList<Cidade>にメソッドの戻り値の型、そしてreturn c;forループを交換してください。 (c変数を削除してreturn cc.buscaCidadePorEstado(uf)を実行することもできます)

例外が発生しても何かを返す必要があります。あなたのcatchブロックのそれぞれにreturn null;を入れるか、または呼び出したメソッドがnullの結果をチェックする必要がないようにする場合は、return Collections.emptyList()を入れることができます。代わりに、代わりに異なる例外タイプをスローすることもできます(例:throw new CityLookupException(e);)。 (もちろん、そのクラスを作成する必要があります。)

関連する問題