java - 我们需要为Spring Boot中的每个表都编写实体类吗?

标签 java mysql spring-boot

我有以下要求:

修改练习 1 中的 Spring boot 应用程序 MovieMax 以使用 Spring Data JPA,以便将数据保存在 MySQL DB 中。

从剧院表中获取剧院详细信息,从电影表中获取电影详细信息。

预订电影应更新theatremovieshow表和预订表中的相应详细信息

以下脚本可用于创建表:

创建表user(userid varchar(8)主键,用户名varchar(25),密码varchar(10),emailid varchar(30),电话int);

创建表剧院(theaterid varchar(8) 主键,剧院名称 varchar(30),seatavailable int(3),城市 varchar(25));

创建表movie(movieid varchar(8)主键,moviename varchar(40),语言varchar(15),类别varchar(20),islive boolean);

创建表 Theatermovieshow( showid varchar(8) 主键,

theaterid varchar(8) 引用 theatre(theaterid),

movieid varchar(8) 引用 movie(movieid),

showtime varchar(8),

开始日期,

结束日期,

票价双倍(6,2));

创建餐 table 预订(bookingid int(5), userid varchar(8)引用user(userid),

showid varchar(8) 引用 Theatermovieshow(showid),

noofseats int,

支付金额双倍(8,2),

显示日期,

预订日期);

验证:

执行时,应从数据库中获取所需的详细信息。

验证预订详细信息是否已保留在相应的表中。

我需要为每个表编写实体类吗?我正在使用 spring Boot

最佳答案

您不需要为每个表创建类。您可以使用 native 查询。 引用https://stackoverflow.com/a/50956683/1039555的答案:-

Create a method in the repository class with specific query (native query):

@Query(value="select * from emp", nativeQuery=true)
Object getAllFromEmp();

Keep this method in the repository interface and call it from the service class

Or you can use EntityManager object as below

Query q = entityManager.createNativeQuery("SELECT * FROM emp e");
List<Object[]> empObject= q.getResultList();

对于更新,请使用诸如executeUpdate()之类的方法。

关于java - 我们需要为Spring Boot中的每个表都编写实体类吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52865449/

相关文章:

java - 只能使用一次 getter 方法

java - 将单词的行分开并存储到数组中

mysql - 使用参数调用特定列的存储过程

spring-boot - 在Spring Cloud Config中,curl客户端如何工作?

java - 禁用 .jar java 库中的 Logger

java - Spring Cloud : Ribbon and HTTPS WITHOUT Eureka

php - 如何将文本保存到数据库tinyMCE

php - 如何用数组查询mysql数据

java - 当我模拟一个类时, stub 值不会被返回

java - 无法重写 OnActivityResult 方法