我得到了一个任务,创建一个基本的应用程序与一些数据库处理。我还是个新手,穿春靴什么的。我做了所有GET, PUT, POST, DELETE的东西,没有写任何SQL行,从表创建开始。但是他们要求我提供SQL脚本,我是如何创建数据库结构、连接和其他东西的。我该如何解决这个问题?
添加以下内容到spring.jpa.properties
spring.jpa.properties.javax.persistence.schema-generation.scripts.action=create
spring.jpa.properties.javax.persistence.schema-generation.scripts.create-target=create.sql
spring.jpa.properties.javax.persistence.schema-generation.scripts.create-source=metadata
详情请参阅@baeldung的文章https://www.baeldung.com/spring-data-jpa-generate-db-schema。
最简单的方法是在resources
文件夹中创建一个名为schema.sql
的文件,其中包含有关DDL的所有查询(表创建…)和data.sql
,如果需要,您可以在其中添加INSERT
查询来填充您的数据库。
在应用程序中。属性,然后你必须添加spring.jpa.hibernate.ddl-auto=none
来禁用JPA的模式创建,并让Spring Boot在启动时自动执行这些脚本。
如果你想要更强大的东西,你应该试试Liquibase或Flyway。
您可以使用Jpa Like jparerepository接口。你不需要写任何SQL查询,我们使用它只需将数据库配置为Application.Property
,如数据库类型
您的用户名和密码
public interface UserRepository extends CrudRepository<User, Integer> {}
当执行这段代码时,你可以使用create user, get find all user, find user by id, delete user和update user
并在Entity类中使用@Entity注释将实体类表示表放入数据库
@Entity
@Table(name="user")
public class User{
@Colume(name="id")
private Long id;
@Colume(name="name")
private String name;
//getter and setter here
}
运行该类时,您的数据库契约用户表id和名称
此链接创建带有数据库的spring启动应用程序https://spring.io/guides/gs/accessing-data-mysql/