我有以下要求:
修改练习1的Spring引导应用程序MovieMax以使用Spring Data JPA,以便将数据保留在MySQL DB中。
从剧院表中获取剧院详细信息,从电影表中获取电影详细信息。
预订电影应更新theatremovieshow表和预订表中的相应详细信息
以下脚本可用于创建表:
创建表用户(userid varchar(8)主键,用户名varchar(25),密码varchar(10),emailid varchar(30),电话int);
创建表剧院(剧院式varchar(8)主键,剧院名称varchar(30),可使用的int(3),城市varchar(25));
创建表movie(movieid varchar(8)主键,moviename varchar(40),语言varchar(15),类别varchar(20),islive布尔值);
创建表Theatermovieshow(showid varchar(8)主键,
theaterid varchar(8)引用了Theater(theaterid),
movieid varchar(8)引用movie(movieid),
showtime varchar(8),
开始日期,
结束日期
机票价格加倍(6,2));
创建表预订(bookingid int(5),userid varchar(8)引用user(userid),
showid varchar(8)引用theatremovieshow(showid),
noofseats int,
已付双倍(8,2)
显示日期
bookingdate日期);
验证:
执行时,应从数据库中获取所需的详细信息。
验证预订详细信息是否保留在相应的表中。
我是否需要为每个表编写实体类?我正在使用Spring Boot
答案 0 :(得分:0)
您不需要为每个表创建类。您可以使用本机查询。 引用https://stackoverflow.com/a/50956683/1039555的答案:-
在存储库类中使用特定查询创建一个方法(本机 查询):
@Query(value="select * from emp", nativeQuery=true) Object getAllFromEmp();
将此方法保留在存储库界面中,然后从 服务等级
或者您可以如下使用
EntityManager
对象Query q = entityManager.createNativeQuery("SELECT * FROM emp e"); List<Object[]> empObject= q.getResultList();
有关更新,请使用executeUpdate()
之类的方法。