小编Mic*_*hel的帖子

Hibernate - 自定义插入数据库

我写这篇文章知道是否有人知道如何做到这一点:

我想做这个插入:

INSERT INTO TABLA (CAMPO1, CAMPO2) VALUES (?, crypt(?,'cdp'))
Run Code Online (Sandbox Code Playgroud)

Crypt是存储在我的数据库中的函数,我希望在我的代码中执行插入操作.实际上,当我想在数据库中插入一些东西时,我使用:

getHibernateTemplate().persist(obj);
Run Code Online (Sandbox Code Playgroud)

但我想做一个"自定义"插入,因为我需要使用该功能.

我正在使用hibernate +注释:

@org.hibernate.annotations.SQLInsert (sql = "INSERT INTO TABLA (CAMPO1, CAMPO2) VALUES (?, crypt(?,'cdp'))")
Run Code Online (Sandbox Code Playgroud)

但是必须从文件中提取密钥"cdp",因此该解决方案对我不起作用.

我想在我的代码上使用一个方法来执行SQL查询(INSERT查询)

java orm hibernate

12
推荐指数
2
解决办法
6万
查看次数

Spring从另一个项目导入应用程序上下文

我有2个项目,其中一个包含在另一个构建路径中,它们都有自己的应用程序上下文定义他的bean.

我想管理全局事务,所以我必须在一个应用程序上下文中导入它们,但我没有找到这样做的方法.

在不同的项目中可能有2个应用程序上下文,并将其中一个导入到另一个项目中.

如果没有可能哪个是最好的解决方案?

我认为成为1中的2个项目.

java spring annotations hibernate transactions

12
推荐指数
2
解决办法
3万
查看次数

syncExec()的SWT问题

这是我在StackOverflow上的第一个问题(抱歉我的英文).我会尽力解释这个问题.

我有一个带有前景玉应用程序的swt应用程序,其中我有一个进度条来通知应用程序的持续时间.要刷新此进度条,我使用:

if(Display.getCurrent() != null) {
    progress.run();
}
else {
   sShell.getDisplay().syncExec(progress);
}
Run Code Online (Sandbox Code Playgroud)

进展是:

Runnable progress = new Runnable() {
    public void run () {
        if (progressBar.isDisposed ()) 
            return;
        int percentage= (numStep*100)/maxSteps;
        progressBar.setSelection(percentage);
        if (numStep >= maxSteps){
            label1.setText("The simulation has been completed.");
            button.setEnabled(true);
        }    
    }
};
Run Code Online (Sandbox Code Playgroud)

我试着分析这个Runnable所花费的时间并且它是恒定的,但是当我分析这条线sSehll.getDisplay().syncExec(progress)需要不同的时间(从0ms到XXXXms)

我读过这个

syncExec(Runnable runnable)导致当前线程(如果它与显示器的用户界面线程不同)等待runnable完成.

但是Runnable是时间常数......

有人可以指导我吗?我不明白为什么有时需要3分钟和其他时间.

谢谢

java swt agents-jade

7
推荐指数
1
解决办法
5606
查看次数

标签 统计

java ×3

hibernate ×2

agents-jade ×1

annotations ×1

orm ×1

spring ×1

swt ×1

transactions ×1