Итак, я делаю веб-сервис и хочу вызвать arraylist из одного класса в другой.
Я уже попробовал несколько кодов, но не могу его получить, поэтому я пришел сюда, чтобы посмотреть, сможете ли выдайте мне руку и посмотрите, смогу ли я наконец закончить это.
Моя операция с веб-сервисом:
@WebMethod(operationName = "findHorarioCurso")
public java.util.ArrayList<HorariosCurso> findHorarioCurso(@WebParam(name = "id_curso") int id_curso){
GereBD bd = new GereBD();
return bd.findHorarioCurso(id_curso);
}
Массив:
public java.util.ArrayList<HorariosCurso> findHorarioCurso(int id_curso){
try{
ArrayList<HorariosCurso> vecHorarioCurso = new ArrayList();
String query="SELECT h.inicio,h.fim,h.dia,c.designacao_curso,c.ano,u.designacao FROM horario h INNER JOIN cursos c ON c.id_curso=h.id_curso INNER JOIN uc u ON u.id_uc=h.id_uc WHERE h.id_curso = "+id_curso;
Statement stmt = conexao.createStatement();
ResultSet lig = stmt.executeQuery(query);
while (lig.next()){
HorariosCurso Horario = new HorariosCurso();
Horario.setInicio(lig.getString("inicio"));
Horario.setFim(lig.getString("fim"));
Horario.setDia(lig.getString("dia"));
Horario.setDesignacaoCurso(lig.getString("designacao_curso"));
Horario.setAno(lig.getInt("ano"));
Horario.setDesignacao(lig.getString("designacao"));
vecHorarioCurso.add(Horario);
}
return vecHorarioCurso;
} catch (SQLException ex) {
System.err.println("Erro de IO" + ex);
}
return null;
}
Я создалустановить и получить в классе HorariosCurso:
public class HorariosCurso {
private String inicio;
private String fim;
private String dia;
private String designacao_curso;
private int ano;
private String designacao;
public String getInicio()
{
return this.inicio;
}
public String getFim()
{
return this.fim;
}
public String getDia()
{
return this.dia;
}
public String getDesignacaoCurso()
{
return this.designacao_curso;
}
public int getAno()
{
return this.ano;
}
public String getDesignacao()
{
return this.designacao;
}
public void setInicio(String inicio)
{
this.inicio = inicio;
}
public void setFim(String fim)
{
this.fim = fim;
}
public void setDia(String dia)
{
this.dia=dia;
}
public void setDesignacaoCurso(String designacao_curso)
{
this.designacao_curso = designacao_curso;
}
public void setAno(int ano)
{
this.ano = ano;
}
public void setDesignacao(String designacao)
{
this.designacao = designacao;
}
}
Клиентский класс, где я пытаюсь получить информацию из этого массива:
case 4:
System.out.println("Encontrar horário de um curso");
idCurso = sq.nextInt();
List<HorariosCurso> h = findHorarioCurso(idCurso);
System.out.println(h.get(1).getDesignacao()+h.get(1).getDesignacaoCurso()+h.get(1).getDia()+h.get(1).getFim()+h.get(1).getInicio());
break;
Когда я нажимаю номер idCurso, я хочучтобы получить следующий набор, который у меня есть в другом классе:
Horario.setInicio(lig.getString("inicio"));
Horario.setFim(lig.getString("fim"));
Horario.setDia(lig.getString("dia"));
Horario.setDesignacaoCurso(lig.getString("designacao_curso"));
Horario.setAno(lig.getInt("ano"));
Horario.setDesignacao(lig.getString("designacao"));