Quarkus入门配置

配置

安装graalvm、docker
并配置环境变量

代码

mvn io.quarkus:quarkus-maven-plugin:1.3.1.Final:create \
    -DprojectGroupId=org.acme \
    -DprojectArtifactId=getting-started \
    -DclassName="org.acme.getting.started.GreetingResource" \
    -Dpath="/hello"

或者

git clone https://github.com/quarkusio/quarkus-quickstarts.git
cd getting-started

运行

mvn compile quarkus:dev

打包native-image

安装插件

gu install native-image

打包命令

mvn package native-image

初级学习

JAX-RS 资源

JAX-RS是JAVA EE6 引入的一个新技术。 JAX-RS即Java API for RESTful Web Services,是一个Java 编程语言的应用程序接口,支持按照表述性状态转移(REST)架构风格创建Web服务。JAX-RS使用了Java SE5引入的Java注解来简化Web服务的客户端和服务端的开发和部署。

注解

@Path,标注资源类或者方法的相对路径

@GET,@PUT,@POST,@DELETE,标注方法是HTTP请求的类型。

@Produces,标注返回的MIME媒体类型

@Consumes,标注可接受请求的MIME媒体类型

@PathParam,@QueryParam,@HeaderParam,@CookieParam,@MatrixParam,@FormParam,分别标注方法的参数来自于HTTP请求的不同位置,例如@PathParam来自于URL的路径,@QueryParam来自于URL的查询参数,@HeaderParam来自于HTTP请求的头信息,@CookieParam来自于HTTP请求的Cookie。

默认单例可以使用不同的 *Scoped 注解 (ApplicationScoped, RequestScoped ,等)对它进行配置。

注入

CDI(Contexts and Dependency Injection),即上下文依赖注入

Quarkus 中的依赖注入是基于ArC的,ArC是一个基于 CDI 的依赖注入解决方案,专为 Quarkus 设计。

Bean

分类

  • application 类,
  • 包含 beans.xml 的依赖项 (将忽略内容),
  • 包含 Jandex 索引的依赖项 - META-INF/jandex.idx,
  • application.propertiesquarkus.index-dependency 用到的依赖,
  • Quarkus integration code.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Quarkus配置多个 Persistence Unit 可以使用 `application.properties` 文件中的 `quarkus.datasource.*` 属性来配置。对于每个数据源,您需要指定以下属性: - `quarkus.datasource.db-kind`:数据库类型(如 `postgresql`、`mysql` 等)。 - `quarkus.datasource.username`:用于连接数据库的用户名。 - `quarkus.datasource.password`:用于连接数据库的密码。 - `quarkus.datasource.jdbc.url`:用于连接数据库的 JDBC URL。 - `quarkus.datasource.jdbc.driver`:JDBC 驱动类名称。 - `quarkus.hibernate-orm.*`:Hibernate ORM 配置(这里涉及到多个 Persistence Unit 的配置)。 对于 `quarkus.hibernate-orm.*`,您需要为每个 Persistence Unit 指定一个唯一的名称,例如: ``` quarkus.hibernate-orm."pu1".packages=com.example.pu1.model quarkus.hibernate-orm."pu1".datasource=db1 quarkus.hibernate-orm."pu2".packages=com.example.pu2.model quarkus.hibernate-orm."pu2".datasource=db2 ``` 在以上示例中,我们为两个不同的 Persistence Unit 指定了不同的包名和数据源。注意,`pu1` 和 `pu2` 是您指定的名称,可以是任何名称,只要它们唯一即可。此外,`datasource` 属性必须与您在 `quarkus.datasource.*` 中定义的名称匹配。例如,在上面的示例中,`pu1` 使用名为 `db1` 的数据源,而 `pu2` 使用名为 `db2` 的数据源。 您可以在 `EntityManager` 的 `createNamedQuery` 和 `createNativeQuery` 方法中使用 Persistence Unit 的名称来指定要使用的 Persistence Unit。例如: ```java @PersistenceContext(unitName = "pu1") private EntityManager em1; @PersistenceContext(unitName = "pu2") private EntityManager em2; public void doSomething() { Query query1 = em1.createNamedQuery("findSomething", Something.class); Query query2 = em2.createNamedQuery("findSomething", Something.class); // ... } ``` 在上面的示例中,我们使用 `@PersistenceContext` 注释将两个不同的 `EntityManager` 与不同的 Persistence Unit 相关联,并使用 `unitName` 属性指定要使用的 Persistence Unit 的名称。然后,我们可以使用 `EntityManager` 的方法来执行查询,这些方法将使用与指定的 Persistence Unit 相关联的数据源。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值