Springmvc/Hibernate プロジェクト (MySQL データベース) で影響を受ける行を返すことに問題があります。
これは私の DAO ファイルで、データベース内の影響を受ける行のサイズを返す必要があります。コントローラーファイルでこのメソッドを実行すると、常に「null」になります。たぶん、これは休止状態と春のスレッドの問題ですか? Spring コントローラーにこの行が必要です。できれば助けてください。下記参照:
@Transactional
public Integer addStudenci(String imie, String nazwisko, String nrIndeksu,
String email, Integer rok, Integer semestr, String przedmiot,
String login, String haslo) {
Session session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
String query = "insert ignore into studenci(imiona,nazwisko,nr_indeksu, email, rok, semestr, przedmiot_krztalcenia, login, haslo) values(:imie,:nazwisko,:nrIndeksu,:email,:rok,:semestr,:przedmiot,:login,:haslo)";
Integer addInt=-1;
addInt= sessionFactory.getCurrentSession().createSQLQuery(query)
.setParameter("imie", imie).setParameter("nazwisko", nazwisko)
.setParameter("nrIndeksu", nrIndeksu)
.setParameter("email", email).setParameter("rok", rok)
.setParameter("semestr", semestr)
.setParameter("przedmiot", przedmiot)
.setParameter("login", login).setParameter("haslo", haslo)
.executeUpdate();
tx.commit();
session.close();
return addInt;
}
このメソッドのサービス ファイル:
@Transactional
public Integer addStudenci(String imie, String nazwisko, String nrIndeksu,
String email, Integer rok, Integer semestr, String przedmiot,
String login, String haslo) {
return loginDAO.addStudenci(imie, nazwisko, nrIndeksu, email, rok, semestr,
przedmiot, login, haslo);
}
これは、多数の行を読み取るための単純なコードです (サービスのメソッドを使用)。
Integer addNumber = -1;
addNumber = loginService.addStudenci(name_student, nazwisko_student,
nrInd_student, email, rokI, semestrI,
przedmiot_ksztalcenia, login, haslo);
System.console().writer().println(addNumber);
if(1 == addNumber) {
String temat = "Przesłanie hasła do logowania!";
try{
SendMail.Wyslij_maila(email, temat, hasloSend, "System zarządzania projektami na PWR");
}
catch(Exception ex) {
;
}
}
else {
nrInd_student = fields1;
}
そして、コントローラーで(このクエリから)レコードの数を知る必要があります。
何か案が?