java调用数据库的表_使用Java 14的新记录类型连接数据库表 - Minborg

本文介绍如何使用Java14的预览记录功能与SpeedmentStream ORM将数据库表连接到Java Stream中。通过具体示例展示了如何设置项目、配置pom.xml文件及实现表连接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

您是否知道可以使用Java 14的预览记录功能将数据库表连接到Java Stream中?阅读这篇简短的文章,并了解如何使用Speedment Stream ORM完成它  。我们将从如何设置您的项目开始。

下载Java 14。转到Speedment Initializer并下载您的项目配置(包括pom.xml)。修改pom.xml文件中的以下行:

14

14

...

maven-compiler-plugin

3.8.1

14

--enable-preview

确保您具有支持新Java 14功能的最新版本的ide(例如IDEA 2010.1)。

表,视图和联接可以很容易地转化为标准的Java与Speedment流。这就是在Java 14中的样子:

var speedment = new SakilaApplicationBuilder()

.withPassword("sakila")

.withBundle(JoinBundle.class)

.build();

var joinComponent = speedment.getOrThrow(JoinComponent.class);

var films = speedment.getOrThrow(FilmManager.class);

// Define a Java 14 "record" that can hold a Film and a Language

record FilmLanguage(Film film, Language language) {}

var join = joinComponent.from(films.getTableIdentifier())

.leftJoinOn(Language.LANGUAGE_ID).equal(Film.LANGUAGE_ID)

// Provide the constructor of the Java 14 "record"

// to be used to construct Film/Language composites

.build(FilmLanguage::new);

join.stream()

.forEach(filmLanguage -> System.out.format(

"%s is in %s%n",

filmLanguage.film().getTitle(),

filmLanguage.language().getName())

);

输出结果:

ACADEMY DINOSAUR is in English

ACE GOLDFINGER is in English

ADAPTATION HOLES is in English

joinComponent的几个方法描述:

from()方法获取我们要使用的第一个表(Film)。

leftJoinOn()方法采用我们要连接的第二张表的特定列。

equal()方法从我们要用作连接条件的第一个表中获取一列。

最后,构造我们的对象,该对象又可以用于创建Java Streams。可以反复使用该对象。 注意怎样的构造函数中提供的方法。

还请注意如何从记录FilmLanguage中获取电影和语言实体。这比以前的Java版本有了很大的改进,以前我们必须提供相当长的自定义类像get0()和get1()之类方法或使用元组,而不是更多的描述film()和language()JOIN的类型和条件。

在此处 下载开源Java 14 。

在此处下载Speedment 。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值