【问题标题】:Is Spring affected by the underlying database?Spring受底层数据库影响吗?
【发布时间】:2016-04-28 08:41:56
【问题描述】:

我正在尝试编写有关如何开始使用 Spring-boot+Tomcat+React.js 的指南

这是一个有很多不同开发人员的项目的教育文章。我们知道我们将使用 PostGreSQL,但我希望该指南尽可能切中要害。

Spring 代码是否会受到底层数据库选择的影响?

发件人:https://spring.io/blog/2015/09/01/react-js-and-spring-data-rest-part-1-basic-features

Spring Boot 让程序员可以非常方便地使用内存数据库(例如 H2、HSQLDB 和 Derby)快速开发 Spring 应用程序。这些数据库是轻量级的,易于使用,并在 JPA 和 Hibernate 的帮助下模拟其他 RDBMS。显然,它们不提供持久存储。但它们是一种快速测试 Spring Boot 应用程序持久性功能的方法,无需经历安装数据库服务器的麻烦。当您需要在应用程序启动后填充数据库、测试持久实体映射以及在应用程序结束时删除任何数据时,它们非常适合在开发过程中使用。要使用嵌入式数据库,您不需要任何特殊配置,甚至不需要任何连接 URL。如果您使用的是 Maven,您只需在 POM 文件中指定要使用的数据库的依赖项。当 Spring Boot 在你的类路径中找到数据库时,它会自动设置内存数据库供你使用。

内存数据库在本地环境的早期开发阶段很有用,但它们有很多限制。随着开发的进行,您很可能需要一个 RDBMS 来开发和测试您的应用程序,然后再将其部署为使用生产数据库服务器,例如 Oracle、MySQL 或 PostgreSQL。

例如类(也来自:https://spring.io/blog/2015/09/01/react-js-and-spring-data-rest-part-1-basic-features

@Data
@Entity
public class Employee {
    private @Id @GeneratedValue Long id;
    private String firstName;
    private String lastName;
    private String description;

    private Employee() {}

    public Employee(String firstName, String lastName, String description) {
        this.firstName = firstName;
        this.lastName = lastName;
        this.description = description;
    }
}

在使用 PostGreSQL 而非内存数据库时,无论如何都必须进行修改?

干杯和亲切的问候, 菲利普

【问题讨论】:

    标签: java spring hibernate postgresql spring-mvc


    【解决方案1】:

    没有。

    您在休眠配置中配置数据库。对于普通的 Hibernate,它是 hibernate.propertieshibernate.cfg.xml。它不会影响持久类。

    【讨论】:

    • 使用spring boot配置可以进入application.yml;不需要休眠特定的配置文件,并且在包含项目作为依赖项时更容易覆盖。
    猜你喜欢
    • 2018-10-29
    • 1970-01-01
    • 1970-01-01
    • 2016-08-29
    • 2014-05-30
    • 1970-01-01
    • 2021-09-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多