【quarkus系列】创建quarkus第一个应用程序

embedded/2024/10/21 17:24:35/

文章目录

  • 序言
  • 环境准备
  • 创建项目
  • 项目分析
  • 程序代码
  • 构建
  • 访问项目

序言

Quarkus 是一个设计用于 Kubernetes 和云原生环境的 Java 框架,具有快速启动时间、低内存消耗和强大的开发者体验。溪源将带您一步步创建一个简单的 Quarkus 应用程序。

环境准备

在开始之前,请确保您的系统上已经安装了以下工具:

  • JDK 17+
  • Apache Maven 3.6.2+
  • 官网指南:https://quarkus.io/guides/getting-started

从git克隆官网提供的快速启动项目,官网提供的组件demo(本篇可以先忽略)

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

创建项目

  • maven命令:
mvn io.quarkus.platform:quarkus-maven-plugin:3.10.1:create \-DprojectGroupId=org.acme \-DprojectArtifactId=getting-started \-Dextensions='rest'
cd getting-started

项目分析

打开项目可以看到项目结构
图片描述

程序代码

  • GreetingResource
@Path("/hello")
public class GreetingResource {@GET@Produces(MediaType.APPLICATION_JSON)public String hello() {return "Hello from RESTEasy Reactive";}}
  • application.properties
    配置项目端口(此处设置基本与spring相似,简单上手),不设置默认是8080
quarkus.http.port = 9092

配置项key如图:
图片描述

构建

项目使用的maven,故切换到项目根目录,输入命令

./mvnw quarkus:dev

等待构建运行成功;

__  ____  __  _____   ___  __ ____  ______ --/ __ \/ / / / _ | / _ \/ //_/ / / / __/ -/ /_/ / /_/ / __ |/ , _/ ,< / /_/ /\ \   
--\___\_\____/_/ |_/_/|_/_/|_|\____/___/   
2024-05-13 11:52:39,547 INFO  [io.quarkus] (Quarkus Main Thread) getting-started 1.0.0-SNAPSHOT on JVM (powered by Quarkus 2.13.3.Final) started in 4.359s. Listening on: http://localhost:90922024-05-13 11:52:39,573 INFO  [io.quarkus] (Quarkus Main Thread) Profile dev activated. Live Coding activated.
2024-05-13 11:52:39,574 INFO  [io.quarkus] (Quarkus Main Thread) Installed features: [cdi, resteasy-reactive, smallrye-context-propagation, vertx]

控制台出现以上日志,则表明启动运行成功
着重关注点:
在这里插入图片描述

1、标识项目启动时用的端口号,配置文件application.properties中定义设置;
2、标识项目运行环境,即dev,启动命令中设置quarkus:dev;后面讲述多环境配置;
3、标识项目中使用的项目组件;

访问项目

  • 方式一:
$ curl -w "\n" http://localhost:9092/hello

使用终端,输入以上命令,控制台输出

Hello from RESTEasy Reactive
  • 方式二:
    http请求方式
    点击控制台打印http://localhost:9092,或者浏览器输入地址,进入quarkus项目首页,点击/hello,会直接跳转访问接口;
    在这里插入图片描述

http://www.ppmy.cn/embedded/43159.html

相关文章

python基础语法

如上图所示&#xff0c;这是首先新建一个python文件&#xff0c; 代码的美观特别重要。 变量可以视为一块用来储存数据的空间。&#xff08;想象成一个纸盒子&#xff09; 表示‘赋值运算符’ 不是数学上的‘比较相等’ 变量命名的规则 使用变量 1.读取变量的值 a10 prin…

CTFHUB技能树——SSRF(二)

目录 上传文件 ​FastCGI协议 Redis协议 上传文件 题目描述&#xff1a;这次需要上传一个文件到flag.php了.祝你好运 index.php与上题一样&#xff0c;使用POST请求的方法向flag.php传递参数 //flag.php页面源码 <?phperror_reporting(0);if($_SERVER["REMOTE_ADDR&…

多任务学习模型-AdaTT

AdaTT&#xff08;Adaptive Task-to-Task Fusion Network&#xff09;是一种多任务学习模型&#xff0c;由Meta提出。它旨在通过自适应融合机制有效地模拟复杂的任务关系&#xff0c;并促进特定任务和共享知识的联合学习。 1.AdaTT模型 AdaTT模型的核心特点&#xff1a; 自适…

Go语言数据库框架 — Gorm

Go入门之Gorm 框架_go gorm-CSDN博客 未完待续

element+ 引入图标报错 Failed to resolve import “@element-plus/icons-vue“ from “

element 引入图标报错 Internal server error: Failed to resolve import “element-plus/icons-vue” from “src\components\TimeLine.vue”. Does the file exist? 原因&#xff1a;element-plus需要单独引入 icons 文档 pnpm install element-plus/icons-vue之后就可以…

全文检索ElasticSearch简介

1 全文检索 1.1 什么是全文检索 全文检索是一种通过对文本内容进行全面索引和搜索的技术。它可以快速地在大量文本数据中查找包含特定关键词或短语的文档,并返回相关的搜索结果。全文检索广泛应用于各种信息管理系统和应用中,如搜索引擎、文档管理系统、电子邮件客户端、新闻…

phpmyadmin漏洞汇总

phpmyadmin是一个非常常用的框架&#xff0c;所以学习它的常见漏洞是非常必要的。 参考大佬的文章进行自学&#xff1a;最全phpmyadmin漏洞汇总_phpmyadmin弱口令-CSDN博客 目录 phpmyadmin简介 查看phpmyadmin版本 漏洞及利用 万能密码登入 影响版本 漏洞POC 远程代码…

论文精读--InstructGPT

模型效果取决于数据效果&#xff0c;但在精细度上控制不够&#xff0c;只是大力出奇迹&#xff0c;这样有很大的问题&#xff1a; &#xff08;1&#xff09;数据量太多或者没有这方面的数据&#xff0c;模型学不会怎么办 &#xff08;2&#xff09;安全性问题&#xff0c;模…