Boa tarde gente. Como faço pra pegar o campo chave de uma lista dinâmica?
O código abaixo está listando os pacientes, porém preciso salvar o campo chave do paciente na tabela. Como faço pra pegar o campo chave nessa lista?
<div class="campo">
<label for="pacconsulta">Paciente</label>
<label for="ListarPaciente"></label>
<select name="ListarPaciente" id="ListarPaciente" style="width: 20em">
<%
DaoPaciente daopacientelista = new DaoPaciente();
List<Pacientetratamento> listarpaciente = daopacientelista.listar();
for(Pacientetratamento p: listarpaciente) {
%>
<option value="Triagem" " ><%= p.getNome() %></option>
<% } %>
</select>
</div>
Supondo que o campo chave é o atributo id
da classe Pacientetratamento
, você pode mudar o option para ser assim:
<option value="<%= p.getId() %>"><%= p.getNome() %></option>
Com isso, ao selecionar a opção na combobox, o valor será atribuído ao campo e enviado no form.
eu fiz assim mesmo, estou desenvolvendo ainda espero que der certo.
eu fiz assim pra pegar o código
public List listar() throws Exception{
List listar = new ArrayList();
String sql = “select * from FTC_PACIENTE”;
String sql_id = “select PAC_COD from FTC_PACIENTE”;
PreparedStatement statement=connection.prepareStatement(sql);
PreparedStatement statement_id=connection.prepareStatement(sql_id);
ResultSet resultSet = statement.executeQuery();
ResultSet resultSet_id = statement_id.executeQuery();
while (resultSet.next()){
while(resultSet_id.next()){
int codigo = (resultSet_id.getInt(sql_id));
Pacientetratamento pacientetratamento = new Pacientetratamento ();
pacientetratamento.setCodigo(resultSet_id.getInt(codigo));
pacientetratamento.setNome(resultSet.getString(“PAC_NOME”));
pacientetratamento.setDatanascimento(resultSet.getString(“PAC_NASCIMENTO”));
pacientetratamento.setmatricula(resultSet.getString(“PAC_MATRICULA”));
pacientetratamento.setSexo(resultSet.getString(“PAC_SEXO”));
pacientetratamento.setEmail(resultSet.getString(“PAC_EMAIL”));
pacientetratamento.setTelefone(resultSet.getString(“PAC_TELEFONE”));
pacientetratamento.setCidade(resultSet.getString(“PAC_CIDADE”));
pacientetratamento.setEstado(resultSet.getString(“PAC_ESTADO”));
listar.add(pacientetratamento);
}
return listar;
}
return listar;
}
Não está funcionando, o código está indo null
RESOLVIDO!!!
É exatamente isso que vc me falou. o problema de está vindo nulo era em outra parte do código cujo qual já resolvi.