executeUpdate()hibernate和spring返回控制器行数

时间:2013-05-19 09:28:35

标签: mysql spring hibernate spring-mvc

我在Springmvc / Hibernate项目(MySQL数据库)中返回受影响的行时遇到问题。

这是我的DAO文件,必须返回数据库中受影响行的大小。 当我在我的Controller文件中执行此方法时,总是有“null”。也许这是hibernate和spring线程的问题?我的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;
}

我必须在我的Controller中知道记录的数量(来自此查询)。

有什么想法吗?

0 个答案:

没有答案