如何在 Spring 实体类中保留 ArrayList?

Ali*_*mad 2 spring crud spring-mvc

我有以下用户实体类的成员变量声明,并UserRepository为实体创建了以下成员变量声明,并UserRepository在控制器类中自动装配了实例。

一切工作正常,但是当我在实体类中声明数组列表时,我的控制器崩溃了。

我的问题是如何在实体类中声明列表并通过控制器中的公共函数访问它。

@Entity
public class Users {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private long id;

    private String name;

    private  ArrayList <String> courses = new ArrayList<String>();

   //Omitted Class Member Functions
    }
Run Code Online (Sandbox Code Playgroud)

以下是错误跟踪

 - ERROR 3040 --- [           main]
   org.hibernate.tool.hbm2ddl.SchemaExport  : HHH000389: Unsuccessful:
   alter table video_courses drop constraint FK_gb79j8mlvu17uvv38mp0x9ts
 - 2014-08-22 11:10:07.210 ERROR 3040 --- [           main]
   org.hibernate.tool.hbm2ddl.SchemaExport  : user lacks privilege or
   object not found: PUBLIC.VIDEO_COURSES
Run Code Online (Sandbox Code Playgroud)

Ali*_*mad 6

我错过了 实体声明中的@ElementCollection和 注释。@CollectionTable

 @Entity
    public class Users {

            @Id
            @GeneratedValue(strategy = GenerationType.AUTO)
            private long id;

            private String name;

            @ElementCollection
            @CollectionTable(name="listOfUsers")
            private  ArrayList <String> courses = new ArrayList<String>();

           //Omitted Class Member Functions
        }
Run Code Online (Sandbox Code Playgroud)