Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
排序CREATE TABLE语句,其中包含Java中的引用_Java_Sorting_Jdbc_Annotations - Fatal编程技术网

排序CREATE TABLE语句,其中包含Java中的引用

排序CREATE TABLE语句,其中包含Java中的引用,java,sorting,jdbc,annotations,Java,Sorting,Jdbc,Annotations,我的项目即将创建我自己的持久性实现。也许这很容易,但我找不到解决办法。我用自己的annotation@Entity注释了类,在annotation Processor中,我想创建SQL create table语句,并将它们保存到文件中,然后执行它们。但我如何对这些陈述进行排序?我在表中有引用,我必须首先创建非引用表,然后在此第一个表上创建表引用。我将是具体的。假设您有3个类:Person Department和Company。它们被注释为实体,我想为CREATETABLES创建SQL语句。但是

我的项目即将创建我自己的持久性实现。也许这很容易,但我找不到解决办法。我用自己的annotation@Entity注释了类,在annotation Processor中,我想创建SQL create table语句,并将它们保存到文件中,然后执行它们。但我如何对这些陈述进行排序?我在表中有引用,我必须首先创建非引用表,然后在此第一个表上创建表引用。我将是具体的。假设您有3个类:Person Department和Company。它们被注释为实体,我想为CREATETABLES创建SQL语句。但是公司对部门的引用和个人对部门的引用,所以我必须首先创建部门表,然后创建个人或公司。我在Annotation Processor中创建语句,因此我必须处理带注释的元素。现在我只是对要写入文件的字符串进行排序。但是它不是很漂亮

     ArrayList<String> sortedListOfCommands = new ArrayList<>();

        for(String command: listOfCommands){
            if(!command.contains("FOREIGN"))
                sortedListOfCommands.add(command);
        }

        for(String command: listOfCommands){
            if(!sortedListOfCommands.contains(command))
                sortedListOfCommands.add(command);
        }
ArrayList sortedListofCommand=new ArrayList();
for(字符串命令:listOfCommands){
如果(!command.contains(“FOREIGN”))
sortedListOfCommands.add(命令);
}
for(字符串命令:listOfCommands){
如果(!sortedListOfCommands.contains(命令))
sortedListOfCommands.add(命令);
}
显示您已经尝试过的内容,并说出发生了什么以及应该发生什么通过SQL字符串中的什么进行输入?