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

文章目录

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

序言

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.mzph.cn/bicheng/17218.shtml

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

相关文章

Neo4j安装部署及python连接neo4j操作

Neo4j安装部署及python连接neo4j操作 Neo4j安装和环境配置 安装依赖库&#xff1a; sudo apt-get install wget curl nano software-properties-common dirmngr apt-transport-https gnupg gnupg2 ca-certificates lsb-release ubuntu-keyring unzip -y 增加Neo4 GPG key&…

为什么并行化将会是下一代的区块链解决方案?

原文标题&#xff1a;《Parallel Execution: The Next Generation of Blockchains》撰文&#xff1a;Paul Timofeev 、Mike Jin、Gabe Tramble 编译&#xff1a;Chris&#xff0c;Techub News 区块链是虚拟机&#xff0c;一种软件基础的计算模型&#xff0c;它运行在任何人都可…

Pytorch深度学习实践笔记10(b站刘二大人)

&#x1f3ac;个人简介&#xff1a;一个全栈工程师的升级之路&#xff01; &#x1f4cb;个人专栏&#xff1a;pytorch深度学习 &#x1f380;CSDN主页 发狂的小花 &#x1f304;人生秘诀&#xff1a;学习的本质就是极致重复! 《PyTorch深度学习实践》完结合集_哔哩哔哩_bilibi…

C++的第一道门坎:类与对象(一)

1.面向过程与面向对象 1.1面向过程 我们之前学习的C语言就是一种面向过程的语言&#xff0c;面向过程的语言强调的是具体实现的过程&#xff0c;一般用函数来具体实现。我们用面向过程的思想&#xff0c;就可以把炒菜分为以下几个步骤: 1.2面向对象 而对于面向对象的语言而言…

【简单介绍下容器是什么?】

&#x1f3a5;博主&#xff1a;程序员不想YY啊 &#x1f4ab;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家 &#x1f917;点赞&#x1f388;收藏⭐再看&#x1f4ab;养成习惯 ✨希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出…

【Spring】Spring AOP底层原理:JDK动态代理和CGLIB动态代理

目录 1、代理模式 1.1、静态代理 1.2、动态代理 2、JDK 动态代理 2.1、jdk动态代理简介 2.2、使用JDK动态代理机制步骤 3、CGLIB 动态代理 3.1、CGLIB 动态代理的特性 3.2、CGLIB的核心类 3.3、CGLIB 动态代理步骤 4、JDK 和 CGLIB 创建代理对象的区别 ​编辑 1、…

(四)手把手教你内网穿透,实现外网主机访问内网服务器

背景&#xff1a;书接上回&#xff0c; 服务器的使用-CSDN博客 课题组成员都有自己的账号&#xff0c;且能通过内网访问服务器&#xff0c;进行远程连接了。我们知道内网中的主机可以访问公网的主机&#xff0c;反之不可以访问。那么如果课题组成员在家不在内网区域内&#x…

源码编译安装LAMP与部署

目录 一、LAMP架构的简述 1.LAMP搭建时各组件安装顺序 二、编译安装Apache httpd服务 1.关闭防火墙&#xff0c;将安装Apache所需软件包传到/opt目录下 2.安装环境依赖包​编辑 3.配置软件模块 4.编译及安装 5.优化配置文件路径&#xff0c;并把httpd服务的可执行程序文…

基于51单片机的智能灯光控制系统

一.硬件方案 智能灯光控制系统由单片机最小系统、人体感应模块、关照强度模块、灯光控制模块、电源模块和灯泡组成。本文以STC89C52单片机为核心&#xff0c;通过利用光照度和红外人体感应相结合主动与被动的探测方法&#xff0c;现了室内无人或者关照充足时灯光自动光灯&…

Kubernetes 容器资源管理Resources和探针Probe

资源配额 Resources 在 Kubernetes 中&#xff0c;resources 配置用于设置容器的资源请求和限制&#xff0c;以确保集群中的资源&#xff08;如 CPU 和内存&#xff09;得到合理分配和使用。 在之前的pod中&#xff0c;不写 resources 字段。就意味着 Pod 对运行的资源要求“…

Java面试八股之AQS对资源的共享方式

AQS对资源的共享方式 AQS设计了一套灵活的机制&#xff0c;不仅支持独占&#xff08;Exclusive&#xff09;锁模式&#xff0c;也支持共享&#xff08;Shared&#xff09;锁模式&#xff0c;使得资源可以被一个或者多个线程以不同的方式访问。这两种模式通过控制一个内部的vol…

pyqt QTableView表格控件

pyqt QTableView表格控件 QTableView效果代码 QTableView QTableView 是 PyQt中的一个控件&#xff0c;用于显示表格数据。它通常与 QAbstractItemModel 或其子类&#xff08;如 QStandardItemModel&#xff09;一起使用&#xff0c;以提供和管理表格中的数据。 效果 代码 i…

wordpress主题 ACG美化插件v3.4.2支持zibll主题7b2主题美化

独具一格的二次元风格&#xff0c;打造全新的子比美化方向 大部分代码均为CSS、JS做成插件只是为了方便懒人小白站长 后台全功能一览&#xff0c;大部分美化均为网上通用流传&#xff0c;

2.冒泡排序

样例输入 5 8 3 6 4 9 样例输出 3 4 6 8 9 以下是解题答案&#xff1a; class demo1{public static void main(String[] args) {Scanner scnnew Scanner(System.in);int[] array new int[scn.nextInt()];if(array.length>0&&array.length<200){for(int…

python列表访问的深入解析

新书上架~&#x1f447;全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我&#x1f446;&#xff0c;收藏下次不迷路┗|&#xff40;O′|┛ 嗷~~ 目录 一、正向索引与负索引的奥秘 二、切片&#xff1a;高效访问多个元素 切片示例 三、切片的…

Java 文件操作和输入输出流

在 Java 编程中&#xff0c;文件操作和输入输出流是非常常见和重要的任务&#xff0c;它们允许你读取和写入文件、处理数据流等。 文件操作概述 文件操作是指对文件进行创建、读取、写入、删除等操作的过程。在 Java 中&#xff0c;文件操作通常涉及到使用文件对象、输入输出…

OpenBayes 一周速览|TripoSR 开源:1 秒即 2D 变 3D、经典 GTZAN 音乐数据集上线

公共资源速递 This Weekly Snapshots &#xff01;5 个数据集&#xff1a; FER2013 面部表情识别数据集 GTZAN 音乐流派分类数据集 MVTec-AD 工业异常检测数据集 UCAS-AOD 遥感目标检测数据集 Oxford 102 Flowers 花卉图片数据集 3 个教程&#xff1a; Latte 全球首个开…

利用ArcGIS Python批量拼接遥感影像(arcpy batch processing)

本篇文章将说明如何利用ArcGIS 10.1自带的Python IDLE进行遥感影像的批量拼接与裁剪。 1.运行环境&#xff1a;ArcGIS10.1 (安装传送门)、Python IDLE 2.数据来源&#xff1a;地理空间数据云 GDEMV2 30M分辨率数字高程数据 3.解决问题&#xff1a;制作山西省的DEM影像 如下…

【WEB前端2024】开源智体世界:乔布斯3D纪念馆-第30课-门的移动动画

【WEB前端2024】开源智体世界&#xff1a;乔布斯3D纪念馆-第30课-门的移动动画 使用dtns.network德塔世界&#xff08;开源的智体世界引擎&#xff09;&#xff0c;策划和设计《乔布斯超大型的开源3D纪念馆》的系列教程。dtns.network是一款主要由JavaScript编写的智体世界引擎…

服务器端口转发,服务器端口转发的作用、好处与坏处

服务器端口转发&#xff0c;服务器端口转发的作用、好处与坏处。 服务器端口转发是一种关键的网络技术&#xff0c;它在网络安全和通信中发挥着不可替代的作用。其主要功能是将来自一个端口的网络流量转发到另一个端口&#xff0c;从而实现内外网之间的流量交互。这种技术通常…