Record N for N (many for many), where I need to send according to the image an Array

0

I'mdoingaNtoN(manytomany)signup,whereIneedtosendanArrayofdrugs,Unitanddosageaccordingtotheimage.ThequestionishowtogetthisArrayinonlyonerequestandpersistinDAOinthetablewiththatarray.Thisispossible,becauseinDAOI'mgoingtoregisteranarraybygoingthrougheachcolumnofthetbelaandgivingtheinsertinJAVA.

-------------------------------------------------------------------------------CONTROLLER

HttpSessionsession=request.getSession(true);IntegeridAnimal=(Integer)session.getAttribute("idAnimal");
String obsRecAnimal = request.getParameter("observacao_receituario_animal");
String dataEmissaoRec = request.getParameter("data_emissao_receituario_animal");
String medAnimal = request.getParameter("medicamento_animal");
String unidDoseAnimal = request.getParameter("unidade_dose_medicamento_animal");
String posologiaAnimal = request.getParameter("posologia_receituario_animal");


Animal animal = new Animal();
ReceituarioAnimal receituario = new ReceituarioAnimal();
receituario.setDataEmissaoReceituarioAnimal(Conversoes.converterData((dataEmissaoRec).replace("-", "/")));
receituario.setObservacaoReceituarioAnimal(obsRecAnimal);
receituario.setMedicamentoAnimal(medAnimal);
receituario.setUnidadeDoseMedicamentoAnimal(unidDoseAnimal);
receituario.setPosologiaReceituarioAnimal(posologiaAnimal);
animal.setIdAnimal(idAnimal);
receituario.setAnimal(animal);

DAO

public Integer cadastrar(ReceituarioAnimal recAnimal) throws Exception {

    PreparedStatement stmt = null;
    ResultSet rs = null;
    Integer idReceituarioAnimal = null;
    String sql = "INSERT INTO receituarioanimal(data_emissao_receituario_animal, "
            + "medicamento_animal, unidade_dose_medicamento_animal, id_animal, "
            + "observacao_receituario_animal, "
            + "posologia_receituario_animal) VALUES (?, ?, ?, ?, ?, ?, ?, ?) RETURNING id_receituario_animal;";
    try {
        stmt = conn.prepareStatement(sql);
        stmt.setDate(1, new java.sql.Date(recAnimal.getDataEmissaoReceituarioAnimal().getTime()));
        stmt.setString(2, recAnimal.getMedicamentoAnimal());
        stmt.setString(3, recAnimal.getUnidadeDoseMedicamentoAnimal());
        stmt.setInt(4, recAnimal.getAnimal().getIdAnimal());
        stmt.setString(5, recAnimal.getObservacaoReceituarioAnimal());


        rs = stmt.executeQuery();
        if (rs.next()) {
            idReceituarioAnimal = rs.getInt("id_receituario_animal");
        }
    
asked by anonymous 16.10.2018 / 23:26

0 answers