博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
vs code编写java_在VS Code中用Quarkus编写Java
阅读量:2526 次
发布时间:2019-05-11

本文共 4251 字,大约阅读时间需要 14 分钟。

vs code编写java

在本系列有关云原生应用程序的前几篇文章中,我共享了云原生软件的 。 但是现在,您可能希望在本地计算机上实现这些高级Java应用程序,而又不会经历陡峭的学习过程。 在本文中,我将使用开放源码技术和 (VS Code),以更简便,更熟悉的方法,加速传统云原生Java堆栈以及无服务器,响应式应用程序的开发。

Quarkus是为GraalVM和OpenJDK HotSpot量身定制的Kubernetes原生Java堆栈。 它由同类最佳的Java库和标准精心制作而成,具有实时编码,统一配置,超快速启动,较小的内存占用以及统一的命令式和响应式开发。 VS Code是用于编辑代码的开源集成开发环境(IDE)。

生成一个Quarkus项目

首先,导航至Quarkus的“ 页面,以生成包含RESTful端点的Quarkus项目。 将所有变量(即Group,Artifact,Build Tool,Extensions)保留为默认设置,然后单击页面右上方的Generate your application 。 请注意,RESTEasy JAX-RS扩展名是默认选择的。

Quarkus Generate application button

ZIP文件将自动下载到您的本地计算机上。 使用以下命令提取文件:

$      
unzip code-with-quarkus.zip
Archive: code-with-quarkus.zip
    creating: code-with-quarkus
/
   inflating: code-with-quarkus
/ pom.xml
   ...

安装VS代码

无论是还是通过软件包管理器(dnf,apt,brew等),都以您喜欢的方式下载并安装VS Code。 完成后,使用VS Code的命令行工具打开解压缩的Quarkus项目:

$      
cd code-with-quarkus
/
$ code .

您将看到带有以下内容的项目结构:

  • Example/ hello中公开的资源
  • 关联的JUnit测试
  • 可通过访问登录页面
  • 用于和JVM HotSpot的Dockerfile
  • 统一的应用程序配置文件

通过VS Code的扩展功能将Quarkus工具添加到您的IDE中。

Add Quarkus tools to VS Code IDE

开始编码

使用Quarkus开发模式运行应用程序。 要运行该应用程序,您需要:

  • 正确配置了JAVA_HOME的JDK 1.8+已安装
  • Apache Maven 3.6.3以上

移至code-with-quarkus目录,然后在VS Code的终端中键入mvn compile quarkus:dev

Run application

您将看到Java应用程序在以下方面运行良好:

  • 大约一秒钟启动
  • 实时编码已激活
  • 启用的CDI和RESTEASY功能

通过Web浏览器访问端点时,您将看到返回代码hello

"Hello" return

现在,您可以更改代码了! 返回VS Code,然后打开src / main / java / org / acme中ExampleResource.java文件。 将返回码替换为“ 欢迎使用Quarkus的Java原生Java!”。 不要忘记保存文件。

Editing the return

返回Web浏览器并重新加载页面。

New return

就像魔术! 在后台,Quarkus自动为您重建,打包和部署了该应用程序,仅用了半秒钟。 这是用于提高开发效率的基本云本机Java运行时功能之一。

Quarkus output

继续在Quarkus中运行您的云原生Java应用程序。

通过Quakrus工具集成数据交易

要添加内存数据库(H2)事务功能,请按F1,然后单击Quarkus:向当前项目添加扩展

Adding extensions in Quarkus

在搜索栏中输入h2 ,然后在结果中双击JDBC Driver-H2 Data

JDBC Driver - H2 Data extension

选择以下三个扩展,这将简化您的持久性代码并返回JSON格式的数据:

  • 带有Panache数据的Hibernate ORM
  • JDBC驱动程序-H2
  • RESTEasy JSON-B网站

Enter键添加那些依赖项。

Add Quarkus extensions

您应该在新的VS Code终端中看到以下内容:

VS Code adding extensions

您还应该在POM.xml中找到以下提取的依赖

dependencies in 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端点

接下来,镜像服务的抽象,以便将来可以将清单服务注入到各个地方(例如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浏览器并访问一个新的端点 。 你会看见:

Inventory endpoint

结语

如果您在执行此操作时遇到问题或遇到错误,则可以查找并重用 。

如果您想了解更多信息,Quarkus提供了一些 , 显示了如何使用Quarkus扩展,事件驱动的编程,无服务器开发和Kubernetes部署来开发高级云原生Java应用程序。

翻译自:

vs code编写java

转载地址:http://hdbzd.baihongyu.com/

你可能感兴趣的文章
android Activity初次的启动的时候播放声音
查看>>
redis desktop manager连接远程linux中的Redis
查看>>
POJ刷题计划
查看>>
css3 背景透明
查看>>
Android适配API23之后权限的动态申请
查看>>
【AUTO Uninstaller - 使用教程】Autodesk系列软件终极完美修复卸载工具【转载】
查看>>
项目管理5大过程9大知识域44个定义
查看>>
扩展easyui treegrid 级联选择
查看>>
[operator]ELK6 index pattern的问题
查看>>
广而告知
查看>>
HTML 自动刷新页面
查看>>
HTML基础3
查看>>
Microsoft NTLM
查看>>
在C#用HttpWebRequest中发送GET/HTTP/HTTPS请求(转)
查看>>
代码自动生成工具版本更新,新增支持Arduino uno R3
查看>>
CSS list-style属性控制ul标签样式
查看>>
课堂小记---JavaScript(3)
查看>>
Python文件操作
查看>>
求解: Windows Phone XAML Controls 为什么是disable状态?
查看>>
【Codeforces 382C】Arithmetic Progression
查看>>