我们需要为springboot中的每个表编写实体类吗?

huwehgph  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(598)

我有以下要求:
修改练习1的spring boot应用程序moviemax以使用spring data jpa,以便将数据持久化到mysql db中。
从影院表获取影院详细信息,从影院表获取电影详细信息。
预订电影应更新Termovieshow表和booking表中的相应详细信息
以下脚本可用于创建表:
创建表user(userid varchar(8)主键,username varchar(25),password varchar(10),emailid varchar(30),phone int);
创建表剧院(theaterid varchar(8)主键,theatename varchar(30),seatsavailable int(3),city varchar(25));
创建表movie(movieid varchar(8)主键,moviename varchar(40),language varchar(15),category varchar(20),islive boolean);
创建表theatermovieshow(showid varchar(8)主键,
theaterid varchar(8)参考剧院(theaterid),
movieid varchar(8)参考电影(movieid),
表演时间varchar(8),
开始日期,
结束日期,
双票(6,2));
创建表booking(bookingid int(5),userid varchar(8)引用user(userid),
showid varchar(8)引用了termovieshow(showid),
noofseats内景,
双倍支付金额(8,2),
显示日期,
预订日期);
验证:
在执行时,应该从数据库中获取所需的详细信息。
验证预订详细信息是否持久保存在相应的表中。
我需要为每个表编写实体类吗?我用的是Spring Boot

lbsnaicq

lbsnaicq1#

不需要为每个表创建类。可以使用本机查询。引用某人的回答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() .

相关问题