(4)FPQuant JHipster_使用数据库
来源:互联网 发布:nginx多端口配置 编辑:程序博客网 时间:2024/06/04 19:21
本文是对JHipster开发文档的部分翻译,供个人学习之用。
原文链接:https://jhipster.github.io/development/
1.运行数据库
如果你使用非嵌入式的数据库如MySQL、MariaDB、PostgreSQL、MSSQL、MongoDB或Cassandra,你需要安装并配置数据库。
最简单和推荐的配合JHipster的方式就是使用Docker组件。(另外再详细讲)
如果你希望手动安装和配置数据库,不要忘记相应地在src/main/resources/config/application-*/yml中配置Spring Boot的属性,例如数据库的URL、用户名和密码。
在开发中使用h2数据库:
如果选择了H2数据库,你将会有一个内存数据库在应用中运行,你可以通过默认的http://localhost:8080/h2-console来访问它的控制台。
为了连接上数据库,选择预配置的选项:
- Driver Class:org.h2.Driver
- JDBC URL:jdbc:h2:mem:jhipster
- User name:
- Password:
在开发中使用MySQL、MariaDB或PostgreSQL:
这要比使用H2更复杂一些,但是有一些好处:
- 数据可以在应用重启后仍然存在
- 应用会启动地更快
- 可以使用./mvnw liquibase:diff 这个goal
2.更新数据库
如果你添加或修改了一个JPA实体,你需要更新你的数据库schema。
用实体生成器更新数据库:
执行流程:
- 运行实体生成器
- 一个新的“change log”将会在src/main/resources/config/liquibase/changelog目录下创建,并且会自动加入到你的src/main/resources/config/liquibase/master.xml文件中
- 查看change log,它将会在你下次运行应用时启用
用Maven的liquibase:diff这个goal来更新数据库:
如果你在开发中选择使用MySQL、MariaDB、PostgreSQL,你可以使用./mvnw liquibase:diff 来自动生成changelog
如果你运行H2的基于硬盘的持久化,这个流程可能并不很适合,但是你可以试着使用它。
Liquibase Hibernate是一个配置在你的pom.xml中的Maven插件,和你的Spring application.yml文件独立。所以如果你改变了默认的设置,你需要同时改动这两份文件。
执行流程:
- 修改JPA实体
- 编译应用(只对已编译的java代码有效,所以不能忘记编译)
- 运行./mvnw liquibase:diff(或./mvnw compile liquibase:diff 来编译之前的操作)
- 新的"change log"将会在src/main/resources/config/liquibase/changelog目录下创建
- 查看change log并将其加入到你的src/main/resources/config/liquibase/master.xml文件中,这样在你下次运行时它就会启用
如果你使用Gradle,可以运行./gradlew liquibaseDiffChangelog来执行相同的流程,如果有必要,在liquibase.gradle中更改数据库的配置。
手动编辑change log来更新数据库:
如果你希望手动更新数据库,这里是执行流程:
- 修改JPA实体
- 在src/main/resources/config/liquibase/changelog目录下创建新的changelog,该文件的前缀是他们的创建时间(yyyyMMddHHmmss),标题描述他们具体是做什么的,比如:20141006152300_added_price_to_product.xml
- 添加changelog文件到src/main/resources/config/liquibase/master.xml文件中,这样它就会在下次运行时启用。
- (4)FPQuant JHipster_使用数据库
- (3)FPQuant JHipster_使用AngularJS1
- (5)FPQuant JHipster_国际化
- (1)FPQuant JHipster_总体配置
- (7)FPQuant JHipster_创建实体
- (8)FPQuant JHipster_创建服务
- (2)FPQuant JHipster_运行Java服务器
- 数据库使用
- 使用数据库
- 数据库使用
- 数据库使用
- 数据库使用
- 数据库使用
- 使用数据库
- 使用_ConnectionPtr接口开发ACCESS数据库(4)
- django基础4--数据库的使用
- 使用OCCI访问Oracle数据库(4)
- 数据库-数据库操作(使用FMDB)
- base标签
- runloop和runtime的区别
- Java矩阵包
- Local declaration of 'XXX' hides instance variable
- 314. Binary Tree Vertical Order Traversal
- (4)FPQuant JHipster_使用数据库
- 自定义控件的方式
- SSL/TLS协议运行机制的概述
- 【c语言】递归实现strlen函数
- maven snapshot和release版本的区别
- 服务器容灾之使用rsync文件异地同步
- 《从一到无穷大:科学中的事实和臆测》小记
- ffmpeg应用实例:从拉流到推流(改进版)
- IOS开发知识概览