Struts2,Hibernate - 陈旧的数据

时间:2018-03-02 15:58:25

标签: hibernate

这是我的行动:

public class TestPollAction extends ActionSupport {

    private static final long serialVersionUID = 2753118140091192432L;

    public String execute() {
        String temp = "start";
        while(!"accepted".equals(temp)) {
            temp = getJobStatus("2");
            System.out.println("temp: " + temp);
            try {
                Thread.sleep(10000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
        return SUCCESS;
    }   

public static String getJobStatus(String jobId) {
        Session session = HibernateUtil.getSession();
        String jobStatus = null;
        JobBoard jobBoard = null;
        try {
            jobBoard = (JobBoard) session.createQuery("from " + JobBoard.class.getSimpleName() + " where jobId = :jobId )").setParameter("jobId", jobId).uniqueResult();
            jobStatus = jobBoard.getStatus();
        } catch (HibernateException e) {
            // TODO: handle exception
            e.printStackTrace();
        } finally {
            session.flush();
            session.close();            
        }       
        return jobStatus;
    }
}

我从邮递员那里呼唤这个行动。然后使用MySQL Workbench,我正在更新数据库,将状态字段设置为"已接受"然后单击"应用"它将更改提交到数据库。

System.out.println("temp: " + temp);没有向我显示更新后的值,它会一直显示我"开始"。

1 个答案:

答案 0 :(得分:1)

    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-core</artifactId>
        <version>5.2.11.Final</version>
    </dependency>

这是应该使用的。我有不同的依赖。