本文共 4251 字,大约阅读时间需要 14 分钟。
vs code编写java
在本系列有关云原生应用程序的前几篇文章中,我共享了云原生软件的 。 但是现在,您可能希望在本地计算机上实现这些高级Java应用程序,而又不会经历陡峭的学习过程。 在本文中,我将使用开放源码技术和 (VS Code),以更简便,更熟悉的方法,加速传统云原生Java堆栈以及无服务器,响应式应用程序的开发。
Quarkus是为GraalVM和OpenJDK HotSpot量身定制的Kubernetes原生Java堆栈。 它由同类最佳的Java库和标准精心制作而成,具有实时编码,统一配置,超快速启动,较小的内存占用以及统一的命令式和响应式开发。 VS Code是用于编辑代码的开源集成开发环境(IDE)。
首先,导航至Quarkus的“ 页面,以生成包含RESTful端点的Quarkus项目。 将所有变量(即Group,Artifact,Build Tool,Extensions)保留为默认设置,然后单击页面右上方的Generate your application 。 请注意,RESTEasy JAX-RS扩展名是默认选择的。
ZIP文件将自动下载到您的本地计算机上。 使用以下命令提取文件:
$ unzip code-with-quarkus.zip Archive: code-with-quarkus.zip creating: code-with-quarkus / inflating: code-with-quarkus / pom.xml ...
无论是还是通过软件包管理器(dnf,apt,brew等),都以您喜欢的方式下载并安装VS Code。 完成后,使用VS Code的命令行工具打开解压缩的Quarkus项目:
$ cd code-with-quarkus / $ code .
您将看到带有以下内容的项目结构:
通过VS Code的扩展功能将Quarkus工具添加到您的IDE中。
使用Quarkus开发模式运行应用程序。 要运行该应用程序,您需要:
移至code-with-quarkus目录,然后在VS Code的终端中键入mvn compile quarkus:dev 。
您将看到Java应用程序在以下方面运行良好:
通过Web浏览器访问端点时,您将看到返回代码hello 。
现在,您可以更改代码了! 返回VS Code,然后打开src / main / java / org / acme中的ExampleResource.java文件。 将返回码替换为“ 欢迎使用Quarkus的Java原生Java!”。 不要忘记保存文件。
返回Web浏览器并重新加载页面。
就像魔术! 在后台,Quarkus自动为您重建,打包和部署了该应用程序,仅用了半秒钟。 这是用于提高开发效率的基本云本机Java运行时功能之一。
继续在Quarkus中运行您的云原生Java应用程序。
要添加内存数据库(H2)事务功能,请按F1,然后单击Quarkus:向当前项目添加扩展 。
在搜索栏中输入h2 ,然后在结果中双击JDBC Driver-H2 Data 。
选择以下三个扩展,这将简化您的持久性代码并返回JSON格式的数据:
按Enter键添加那些依赖项。
您应该在新的VS Code终端中看到以下内容:
您还应该在POM.xml中找到以下提取的依赖项 :
第一步是定义库存对象的模型(实体)。 由于Quarkus使用Hibernate ORM Panache,因此在src.main.java.org.acme目录中创建一个Inventory.java文件,并将以下代码粘贴到其中:
package org.acme ; import javax.persistence.Cacheable ; import javax.persistence.Entity ; import io.quarkus.hibernate.orm.panache.PanacheEntity ; @ @Cacheable public class Inventory extends PanacheEntity { public itemId ; public location ; public int quantity ; public link public Inventory ( ) { } }
接下来,镜像服务的抽象,以便将来可以将清单服务注入到各个地方(例如RESTful资源端点)。 在src.main.java.org.acme目录中创建一个InventoryResource.java文件,并将以下代码添加到其中:
package org.acme ; import java.util.List ; import javax.enterprise.context.ApplicationScoped ; import javax.ws.rs.Consumes ; import javax.ws.rs.GET ; import javax.ws.rs.Path ; import javax.ws.rs.Produces ; @Path ( "/services/inventory" ) @ApplicationScoped @Produces ( "application/json" ) @Consumes ( "application/json" ) public class InventoryResource { @GET http : //localhost:8080/services/inventory public List < Inventory > getAll ( ) { return Inventory. listAll ( ) ; } }
不要忘记保存这些文件。 返回您的Web浏览器并访问一个新的端点 。 你会看见:
如果您在执行此操作时遇到问题或遇到错误,则可以查找并重用 。
如果您想了解更多信息,Quarkus提供了一些 , 显示了如何使用Quarkus扩展,事件驱动的编程,无服务器开发和Kubernetes部署来开发高级云原生Java应用程序。
翻译自:
vs code编写java
转载地址:http://hdbzd.baihongyu.com/