小编Ken*_*ent的帖子

hibernate composite主键包含一个复合外键,如何映射这个

我在那里搜索,没有找到任何类似的话题,所以我发布了一个新问题.

我正在使用现有数据库上的Hibernate.我们不允许更改表结构和数据.应用程序正在从数据库中读取数据,并根据某些逻辑迁移到另一个数据存储区.

现在问题是关于复合PK映射.例如

表A具有复合PK.

Table A
--------
a1 (pk)
a2 (pk)
a3 (pk)
a4 (pk)
foo
bar
========
Run Code Online (Sandbox Code Playgroud)

表B也具有复合PK,并且该复合PK的一部分是A的PK,这里也用作FK.

Table B
--------
a1 (fk,pk)
a2 (fk,pk)
a3 (fk,pk)
a4 (fk,pk)
b1 (pk)
b2 (pk)
b3 (pk)
foo
bar
========
Run Code Online (Sandbox Code Playgroud)

我尝试了几种方法,但没有一种方法可行.谁能告诉一个有效的Hibernate映射解决方案?注释风格更好.

java hibernate hibernate-annotations

8
推荐指数
1
解决办法
2万
查看次数

Bash脚本将日期和时间列转换为.csv中的unix时间戳

我正在尝试创建一个脚本,将.csv文件中的两个列(日期和时间)转换为unix时间戳.所以我需要从每一行获取日期和时间列,转换它并将其插入到包含时间戳的末尾的附加列中.

谁能帮助我?到目前为止,我已经发现了unix命令将任何给出的时间和日期转换为unixstamp:

date -d "2011/11/25 10:00:00" "+%s"
1322215200
Run Code Online (Sandbox Code Playgroud)

我没有使用bash脚本的经验,任何人都可以让我开始吗?

我的列和行的示例:

Columns: Date, Time, 
Row 1: 25/10/2011, 10:54:36,
Row 2: 25/10/2011, 11:15:17,
Row 3: 26/10/2011, 01:04:39,
Run Code Online (Sandbox Code Playgroud)

非常感谢提前!

unix csv bash

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

在bash中匹配前后删除行(使用sed或awk)?

我试图从一个充满交易的文件中删除模式匹配两侧的两行.IE浏览器.找到匹配然后删除它之前的两行,然后删除它后面的两行,然后删除匹配.将此写回原始文件.

所以输入数据是

D28/10/2011
T-3.48
PINITIAL BALANCE
M
^
Run Code Online (Sandbox Code Playgroud)

我的模式是

sed -i '/PINITIAL BALANCE/,+2d' test.txt
Run Code Online (Sandbox Code Playgroud)

但是,这只是在模式匹配后删除两行,然后删除模式匹配.我无法使用sed以任何逻辑方式从原始文件中删除所有5行数据.

shell awk sed

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

保留第一行的同时进行 Grep 操作

我试图理解这种奇怪的行为。基本上,我试图 grep 命令的输出,同时仍然保留第一行/标题。我在这里先向您的帮助表示感谢。

成功案例

ps -ef | { head -1; grep bash; }
Run Code Online (Sandbox Code Playgroud)

输出:

UID        PID  PPID  C STIME TTY          TIME CMD
username  1008     1  0 Jan21 tty1     00:00:00 -bash
username  1173  1008  0 Jan21 tty1     00:00:00 -bash
Run Code Online (Sandbox Code Playgroud)

失败案例

 ls -tlrh / | { head -1; grep tmp; }
Run Code Online (Sandbox Code Playgroud)

输出:

total 100K
Run Code Online (Sandbox Code Playgroud)

(即:它忽略该/tmp文件夹)

linux bash shell grep pipe

7
推荐指数
2
解决办法
2059
查看次数

如何为这个应用程序结构编写setup.py?

我用python(2.7)编写了一个应用程序.结构如下:

kent$  tree myApp
myApp
|-- foo.py
|-- gui
|   |-- g1.py
|   |-- g2.py
|   |-- g3.py
|   `-- __init__.py
|-- icons
|   |-- a.png
|   `-- e.png
|-- logic
|   |-- __init__.py
|   |-- l1
|   |   |-- __init__.py
|   |   |-- la.py
|   |   `-- lc.py
|   |-- l2
|   |   |-- __init__.py
|   |   |-- ld.py
|   |   `-- lf.py
|   |-- logic1.py
|   |-- logic2.py
|   `-- logic3.py
|-- myApp.py
`-- resources
    |-- x.data
    `-- …
Run Code Online (Sandbox Code Playgroud)

python distutils setup.py

6
推荐指数
1
解决办法
1355
查看次数

我可以用 vim 创建无限的标记吗?

我希望能够为现有的单字母标记设置额外的标记。因此,我可以解决我目前面临的两个问题:

  1. 标记是在脚本中设置的,我不想破坏脚本用户已经设置的标记

  2. 我可以设置无限数量的标记,这样我就不必计算它们(我将它们命名为"script_mrk_" . s:mark_count)。

所以,如果表示为函数调用,我可能正在寻找一些东西

setPrivateMark(l:mark_name, l:line, l:pos)
Run Code Online (Sandbox Code Playgroud)

let line_pos = getPrivateMark(l:mark_name)
Run Code Online (Sandbox Code Playgroud)

当然,在使用setPrivateMark和之前设置它之后,解决方案应该能够抵抗对标记上方的缓冲区的更改getPrivateMark(...)

有这样的事情吗?

vim

6
推荐指数
1
解决办法
113
查看次数

在VSCode Vim中隐藏搜索突出显示

我正在尝试从MacVim切换到VSCode,并且使用VSCode Vim扩展。到目前为止,我发现的最烦人的事情是:如果我使用/命令进行搜索-我无法禁用突出显示搜索结果。

您能否帮助我找到一种方法,在完成搜索后如何隐藏搜索结果突出显示?

visual-studio-code

6
推荐指数
3
解决办法
2118
查看次数

编辑上一个命令输出的第n行的快速方法

我经常发现自己正在做这样的工作流程:

$ find . |grep somefile
./tmp/somefile.xml
./test/another-somefile.txt
Run Code Online (Sandbox Code Playgroud)

(评论输出)

$ vim ./tmp/somefile.xml
Run Code Online (Sandbox Code Playgroud)

现在,如果有一些方便的方法来使用find命令的输出并将其提供给vim,那将是很好的.

我提出的最好的是:

$ nth () { sed -n $1p; }
$ find . |grep somefile
./tmp/somefile.xml
./test/another-somefile.txt
Run Code Online (Sandbox Code Playgroud)

(评论输出)

$ vim `!!|nth 2`
Run Code Online (Sandbox Code Playgroud)

我想知道是否有其他的,可能更漂亮的方法来完成同样的事情?

为了澄清,我想要一种方便的方法从先前运行的命令中获取第n行,以便快速打开该文件以便在vim中进行编辑,而无需使用鼠标或制表符剪切和粘贴文件名 - 完成我在文件路径中的操作.

unix vim bash shell

5
推荐指数
1
解决办法
239
查看次数

相同的代码,相同的输入,有时运行速度快,有时慢,为什么?

我写了一些java类来评估/演示不同的排序算法.但是当我运行我的演示类时,我感到困惑.希望你们能给我一个解释.(这个问题不是作业.)

首先,我列出一些与此问题相关的代码.

AbstractDemo

public abstract class AbstractDemo {
    protected final int BIG_ARRAY_SIZE = 20000;
    protected final int SMALL_ARRAY_SIZE = 14;
    protected Stopwatch stopwatch = new Stopwatch();

    public final void doDemo() {
        prepareDemo();
        specificDemo();
    }

    protected abstract void prepareDemo();

    protected abstract void specificDemo();

    protected final void printInfo(final String text) {
        System.out.println(text);
    }
}
Run Code Online (Sandbox Code Playgroud)

SortingDemo

public class SortingDemo extends AbstractDemo {
    private static final String FMT = "%-10s| %-21s| %7s ms.";
    private static final String SPL = AlgUtil.lineSeparator('-', 45);
    private static final …
Run Code Online (Sandbox Code Playgroud)

java warm-up

5
推荐指数
1
解决办法
2162
查看次数

使用awk打印某些列不匹配的行

我有一个标签分隔文件,如下所示:

1       10502   C       T  
1       10506   C       T  
1       10567   G       A 
...
Run Code Online (Sandbox Code Playgroud)

而且我想打印出所有线路,其中column 3 != column 4,除去了情况column 3 = C and column 4 = T.

我试过了

awk '{
if (($3 == $4) || ($3 == C && $4 == T) )
        next ;
else
        print $0; }'
Run Code Online (Sandbox Code Playgroud)

但我不确定会出现什么问题......

awk matching

5
推荐指数
1
解决办法
1万
查看次数