首页 > 编程语言 >Java反应式编程(2)

Java反应式编程(2)

时间:2022-11-15 08:22:05浏览次数:47  
标签:Web Java 可以 编程 点击 反应式 里面

您好,我是湘王,这是我的博客园,欢迎您来,欢迎您再来~

 

看了前面对反应式编程的说明,可能很多人都会打退堂鼓了。Lambda都已经够难理解的了,又来了一个反应式编程!实在卷不动了~

其实很好肝。

就像之前学习编程,或者说学习Java的同学,也不是全都要把面向对象编程OOP搞懂了才能往下学的吧,之前的OFP也是一样,现在轮到ORP这种编程范式也还是这样的,比如我们可以到Github上看有关反应式编程的资料:

 

 

 

 

右边是目录,包括一些概念性的介绍,还有各种文档,包括最主要的操作符。而且为了降低学习的难度,官方还特意提供了大量的示例代码。比如点击【Creation】,可以跳转到创建相关的操作符界面:

 

 

 

 

然后再点击某一个操作符,就可以看到这个操作符的示例代码:

 

 

 

 

完全可以通过这种方式慢慢熟悉它。

不过光看这些示例代码肯定还是不够的,它只能让你熟悉它,但是要想真正掌握,用到项目里面,这种方式还是不够的。所以可以用更高级的方式。那是什么方式呢?——

其实大多数的学习,只要按照官方文档就能入门了,做个Demo出来完全是小意思。就像Spring框架可以在Spirng.io站点通过脚手架自己选择组件一样,反应式编程中也有一个很出名的框架,叫Vert.x。通过访问vertx.io网站,也能通过脚手架搭建一个最简单的Demo出来:

 

 

 

 

然后再选择【START】-> 【App generator】

 

 

 

然后再在页面上创建项目

 

 

 

接下来,在页面上点击【Show dependencies panel】就出现了可供选择的依赖包,可以看到下面左边的紫色大类里面列出了像Web啊、Data Access啊、Testing啊什么的,大家感兴趣的话可以自己访问网站点击试试看,这里面都有什么。

 

 

 

为了便于演示,所以就只选择开发中常用的一些技术组件,在现在的互联网应用中,Web和数据库这两个依赖,几乎是必选的,所以选中左边【Web】大类里面的【Vert.x Web】,【Vert.x Web Client】是用来访问其他HTTP服务的,所以这里不选。

 

 

 

接下来,咱们需要访问数据库里的数据,所以在左边的列表中点击【Data Access】,选择需要的数据库组件,比如MySQL,可以不用选择JDBC。

 

 

 

选好了依赖组件包之后,就可以点击创建项目包,或者还可以选择用哪个JDK版本来开发,比如就像我桌面上现在这样的:

 

 

 

点击创建之后,浏览器会下载一个starter.zip包,解压后导入到idea当中:

 

 

 

初次使用vertx项目,可能有的人还不知道怎么运行,OK~那就跟我一起来简单设置一下试试看。

首先双击pom文件,打开它,找到<main.verticle>和<launcher.class>这两个标签,并且把这两行的内容拷贝下来,因为马上要用到了,不然你就得记住,反正我是记不住:

 

 

 

然后在右上角点击【Add Configuration】,弹出增加配置界面:

 

 

 

增加一个新配置:

 

 

 

增加一个新应用配置:

 

 

 

在【Main Class】里面写上<launcher.class>标签里面的内容,在【Program arguments】里面写上run <main.verticle>标签里面的内容,写完后点击【Apply】或者【OK】保存,记得不要忘了加上【run】!!!~~~

 

 

 

完成后先记得用maven编译并且打包一下:

 

 

 

编译完成后点击右上角的【运行】

 

 

 

因为咱们默认就是在8080端口启动,所以当出现【HTTP server started on port 8080】的时候,表示应用已经成功运行:

 

 

 

然后在浏览中访问本地的8080端口  ,就可以看到返回的服务端数据了。

 

 


 

 

感谢您的大驾光临!咨询技术、产品、运营和管理相关问题,请关注后留言。欢迎骚扰,不胜荣幸~

 

标签:Web,Java,可以,编程,点击,反应式,里面
From: https://www.cnblogs.com/xiangwang1111/p/16890339.html

相关文章

  • Java 同步锁ReentrantLock与抽象同步队列AQS
    AbstractQueuedSynchronizer抽象同步队列,它是个模板类提供了许多以锁相关的操作,常说的AQS指的就是它。AQS继承了AbstractOwnableSynchronizer类,AOS用于保存线程对象,保存什......
  • JAVA学习
    JAVA问题解决综合问题语句FILEf=newFILE("Grades.txt");在IDEA中运行时,读取的目标文件不一定是源码所在目录下的"Grades.txt",而是源码类所属的父模块中最高级的模......
  • javaScript书写位置
    1.内部javaScript   直接写在html文件里,用script标签包住  规范:script标签写在</body>上面2.外部js:代码写在以.js结尾的文件里语法:通过scr......
  • Javascript的字符串不可变性
    JS的字符串不可变指的是字符串值是不变的,只是变量指向的地址变化了,重新在内存中开辟了空间.vara='111';vara='222';此时字符串'111'的空间依然存在内存中,重新开辟......
  • 使用JAVA实现循环相克令
    一、问题描述:循环相克令是说有两个人在玩游戏,分别出猎人、枪、狗熊中的一个,其中猎人胜枪,枪胜狗熊,狗熊胜猎人。他们两个人进行若干次比赛,然后我们判断一下每次的胜负。二、......
  • 【Java】Springboot + Redis + AOP切面实现字典翻译
     使用案例演示:先开发了一个简单的Demo:普通DTO类注解翻译的字段和翻译来源  在需要翻译的方法上注解@Translate  接口返回结果:  框架思路:1、标记的......
  • netty高性能编程-第4章Netty概述
    4.1原生NIO存在的问题1)NIO的类库和API繁杂,使用麻烦:需要熟练掌握Selector、ServerSocketChannel、SocketChannel、ByteBuffer等。2)需要具备其他的额外技能:要熟悉J......
  • java调用WPS或pdfcreator的com接口实现doc转pdf
    使用了jacob.jar来调用activex控件,本机需安装WPS或pdfcreator。还需要jacob.jar以及jacob.dll请看附件jacob.dll需要放置在系统system32下,如果系统是c盘:C://windows/sys......
  • java——接口作为方法的参数和返回值
    接口作为方法的参数和返回值packagecn.itcast.day11.demo07;importjava.util.ArrayList;importjava.util.List;/*java.util.List正是ArrayList所实现的接口。......
  • java-io基础
    一、流的分类1、按操作的数据单位或传输方式:字符流,字节流。字节是给计算机看的,字符是给人看的2、数据的流向:输入流,输出流3、流的角色:文件流(节点流),处理流从数据来源或操......