使用Spring Boot和H2可以完全工作的原型

我们确实在弹簧上使用了很多h2,特别是对于单元测试。 但是,我们可能希望拥有一个功能齐全的原型来显示数据,而不是进行单元测试。
H2是最理想的选择,它在spring上运行良好,与大多数数据库都具有良好的语法兼容性,并且还为您提供了一个ui来检查数据。

想象一下采访任务的场景。 您希望您的示例能够以最少的审阅者配置开箱即用。 计划是启动一个应用程序并使用一些数据来运行。 在访问该应用程序之前,我们不妨向其中添加一些数据。 然后,我们需要一种适当的方法来显示添加的数据,而无需添加额外的代码。

第一步是转到spring initializr并添加Web和H2依赖项。 另外,我们将添加jdbc属性。

最终结果将给出一个build.gradle文件,如下所示。

buildscript {ext {springBootVersion = '2.0.6.RELEASE'}repositories {mavenCentral()}dependencies {classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")}
}apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'group = 'com.gkatzioura.springbooth2'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = 1.8repositories {mavenCentral()
}dependencies {implementation('org.springframework.boot:spring-boot-starter-jdbc')implementation('org.springframework.boot:spring-boot-starter-web')runtimeOnly('com.h2database:h2')testImplementation('org.springframework.boot:spring-boot-starter-test')
}

由于添加了jdbc属性,因此一旦启动应用程序,便可以执行一些模式脚本。 因此,我们需要创建一个schema.sql文件,其中包含创建模式的sql语句。

CREATE TABLE application_user (ID INT, USER_NAME VARCHAR(50), PASSWORD VARCHAR(255));
INSERT INTO application_user (ID,USER_NAME, PASSWORD) values (1,'test','password-hash');

下一步是启用h2控制台。 我们将使用yaml方法,但是您可以使用属性文件或环境变量来完成。

spring:h2:console:enabled: true

现在,一旦我们运行了Spring应用程序,我们就可以在http:// localhost:8080 / h2-console端点上导航。
我们将获得所需的默认凭据 功能齐全的原型

登录后,我们可以查询在启动sql脚本中插入的用户。

功能齐全的原型

而已! 这样可以为原型,面试任务和博客帖子带来奇迹!

翻译自: https://www.javacodegeeks.com/2018/11/working-prototypes-spring-boot-h2.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/344588.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

饿了吗商品列表_仅仅一字之差,饿了么起诉饿了吗

饿了么与“饿了吗”,仅仅一字之差,相信不少人乍看会以为是一家。但近日公开的一则判决书显示,因为太近似,二者曾对簿公堂。饿了吗公司以败诉收场,被判处立即变更其企业名称,变更后企业名称中不得含有与“饿…

pandas 遍历并修改_Pandas循环提速7万多倍!Python数据分析攻略

乾明 编译整理 量子位 报道 | 公众号 QbitAI用Python和Pandas进行数据分析,很快就会用到循环。但在这其中,就算是较小的DataFrame,使用标准循环也比较耗时。遇到较大的DataFrame时,需要的时间会更长,会让人更加头疼。现…

教程:用Java创建和验证JWT

“我喜欢编写身份验证和授权代码。” 〜从来没有Java开发人员。 厌倦了一次又一次地建立相同的登录屏幕? 尝试使用Okta API进行托管身份验证,授权和多因素身份验证。 Java对JWT(JSON Web令牌)的支持过去需要进行大量工作&#xf…

AWS re:Invent 2018的5大公告

AWS re:Invent刚刚完成。 这是一个巨大的活动,在拉斯维加斯7家最大的酒店中,有50,000多名与会者,并发布了许多新服务。 无服务器通过新的lambda增强功能和更好的容器支持而继续引起人们的广泛关注。 AWS通过新的“ Outposts”功能…

添加右键菜单_如何在Windows文件夹的右键菜单中添加“打开PowerShell”

原文:https://www.howtogeek.com/165268/how-to-add-open-powershell-here-to-the-context-menu-in-windows/如果您喜欢使用Windows PowerShell而不是命令提示符,那么您可能喜欢从右键单击Windows中的文件夹时得到的上下文菜单中直接访问它。以下是如何做…

多云系统的授权

这是我目前正在致力于消耗SPIFFE( 安全生产身份框架 (Every Production Identity Framework For Everyone )在WSO2的Prabath Siriwardena先生的启发下,在Moratuwa大学的Gihan Dias教授的指导下,通过信任和身份验证在动…

级联选择组件_如何开发一个 Antd 级联多选控件

本文也同步发在掘金上, https:// juejin.cn/post/69149942 41940750343 Intro 这篇文章将从零开始介绍如何开发一个 Antd 的级联多选选择器。先看效果: Github,Sandbox 阅读完这篇文章,不仅可以学会如何实现级联多选的功能,还可以顺便学会: 如何发布一个 Typescript 编写…

node mysql安装目录_nodejs 指定全局安装路径和缓存路径

1、前提:已安装 nodejs(nodejs官网 https://nodejs.org), 并且已将其添加到了环境变量 path 中;2、进入cmd命令行,然后输入 node -v ,测试是否安装成功,出现版本号就表示安装成功3、进入cmd命令行,然后输入…

mysql的sql执行原理图_性能测试MySQL之SQL运行原理

一,MySQL运行原理两个一样的图1,SQL语句执行的过程详细说明如上图所示,当向MySQL发送一个请求的时候,MySQL到底做了什么:a, 客户端发送一条查询给服务器。b, 服务器先检查查询缓存,如果命中了缓存&#xff…

mysql宽字节注入_转宽字节注入详解

在mysql中,用于转义的函数有addslashes,mysql_real_escape_string,mysql_escape_string等,还有一种情况是magic_quote_gpc,不过高版本的PHP将去除这个特性。首先,宽字节注入与HTML页面编码是无关的&#xf…

mysql集群软件有哪些_浅谈数据库集群软件优缺点有哪些

满心狼藉回答时间:2019-12-05向TA提问集群(Cluster)是由两台或多台节点机(服务器)构成的一种松散耦合的计算节点集合,为用户提供网络服务或应用程序(包括数据库、Web服务和文件服务等)的单一客户视图,同时提供接近容错机的故障恢复能力。集群…

错误:在keystone中无法找到默认角色user_第四章 keystone认证组件安装1

1、在控制节点安装rabbitmq、memcached组件apt-get -y install rabbitmq-server memcached python-pymysql # 设置openstack用户 rabbitmqctl add_user openstack password #后一个password是密码,需要特别注意,要与后面组件访问时的密码一致 #设置ope…

ubuntu加了张固态_将ubuntu系统迁移到ssd固态

朋友送了一个固态硬盘给我,因此将原机械硬盘上的系统迁移到固态硬盘上。原机械硬盘(dev/sdb)装有win10和ubuntu双系统。分区情况如下:sda1:ESP分区sda2:资料sda3:资料sda4:swap分区,被我干掉了&…

centos编译mysql5.6_centos7上编译安装mysql5.6

注意,在做实验室统一关闭防火墙做的,在生产环境需要做防火墙规则的,大家要注意,做的时候尽量都是模仿生产环境的,比如服务一般都在/data/soft下面,尽量避免在/usr/local/下面。安装编译mysql所需要的软件[r…

使用ELK堆栈进行日志聚合

1.简介 随着微服务的使用,创建稳定的分布式应用程序和摆脱许多遗留问题变得很容易。 但是微服务的使用也带来了一些挑战, 分布式日志管理就是其中之一。 由于微服务是隔离的,因此它们不共享数据库和日志文件,因此实时搜索&#xf…

mysql主从延时这么长_MySQL主从延迟问题解决

今天我们就来看看为什么会产生主从延迟以及主从延迟如何处理等相关问题。坐好了,准备发车!主从常见架构随着日益增长的访问量,单台数据库的应接能力已经捉襟见肘。因此采用主库写数据,从库读数据这种将读写分离开的主从架构便随之…

生成器作为(快速失败)状态机

这个想法是几周前在设计“ Generator”类时想到的,该类必须将输入发送给封装的Writer 。 实际上,它是Builder模式。 但是,规则有些复杂,用户必须以某种方式调用add...()方法,才能正确生成输出。 不用说,我…

源码包编译安装python_Python3.7源码包编译安装-Go语言中文社区

环境:[rootlocalhost python3]# cat /etc/redhat-releaseCentOS Linux release 7.5.1804 (Core)[rootlocalhost python3]#1、下载Python方式一:方式二:进入https://www.python.org/ftp/python/ 这里存放着所有版本的Python源码。往下拉看到最…

java criteria and_criteria用法

Criteria Query通过面向对象化的设计,将数据查询条件封装为一个对象。简单来讲,Criteria Query可以看作是传统SQL的对象化表示,如:Java代码Criteria criteria session.createCriteria(User.class);criteria.add(Expression.eq(&q…

java jdt_在JDT中使用Java 8 Lambda

java jdt旧 Curmudgeon 认识Smalltalk的Dude 在修改Eclipse Java开发工具 (JDT)项目正在开发的Java 8支持时,我一直在使用这种语言。 我承认我对Java 8中的lambda有点不满意。 当然,这来自于知道Smalltalk (和LISP…