переход аннотации «один к одному» в спящий режим, не удается обновить значения

#java #hibernate

#java #переход в спящий режим

Вопрос:

У меня есть 2 таблицы, созданные в спящем режиме, которые неправильно обновляют значения. Итак, каждый раз, когда я запускаю код, он вставляет избирателя, и когда я добавляю голосование, он обновляет номер sin в таблице голосов, но не вставляет выбор партии введите описание изображения здесь

введите описание изображения здесь

Я застрял на этой проблеме и не уверен, как правильно обновлять значения, чтобы всякий раз, когда избиратель регистрировал его, добавлял его в таблицу, а затем я проверял, существует ли sin, затем => проголосовать => добавить выбор партии и кто проголосовал (номер sin)

Вот мои методы addVotes и addVoter, где я должен установить все эти параметры в таблицу

 public void addVoter(Voter voter) { 
        Session session = sessionFactory.openSession();
        session.beginTransaction();

        session.save(voter);

        session.getTransaction().commit();
        session.close();    
    }


public void addVote(Votes votes, int sin) { 
    Session session = sessionFactory.openSession();
    session.beginTransaction();

    Voter voter = (Voter)session.get(Voter.class, sin);

    voter.setVotes(votes);
    votes.setVoter(voter);

    session.save(votes);

    session.getTransaction().commit();
    session.close();    
  

servet:

 int sinNumber =  Integer.parseInt(request.getParameter("sinNumber"));

            voteMessage = "User with SIN: "   sinNumber   " already registered. Please vote";
            request.setAttribute("voteMessage", voteMessage);

                        response.sendRedirect("voteParty.jsp");

            String party = request.getParameter("party");

            votes.setParty(party);

            dao.addVote(votes, sinNumber);
  

Ответ №1:

Так работать не будет. один из них должен быть первым постоянным, а затем вызывать сохранение только для второго