粉丝4734获赞1.8万

那 spring 布的三啊,它最显著最重大的一个特性可以说就是这个本地化了, 它通过这个 grav vm 啊,将我们的 spring 部的应用可以编译成一个本地的可执行镜像文件,就比如说我现在是 windows 环境,对吧?它可以直接生成一个点 e x e 文件, 那通过它去启动我们的 spring 部的应用呢?比我们直接以前通过 java 干架的这种方式去启动 spring 部的应用呢,这种方式它启动速度更快,并且呢性能更高,内存占用呢也更少, 所以这个方式啊,有可能是我们这个以后的这个 java 的第二次变更了,可能是 我们 java 以后的一个很大的一个变革了,大家都知道我们现在 java 非常的卷,对不对?他已经卷到了一个高度了,那么在这个顶峰之后呢,如果你没有新东西出来,有可能会呈现一个下滑的趋势, 因为你看我现在有很多的一些,比如说够语言,他对我们的 java 的威胁就非常的大,对吧?够语言,他非常的火, 它其实呢,它也是一个编译,编译性的语言,它其实也是,呃,将代码呢编译成一个二进制文件,然后在 windows 生成一个点 exe 文件,其实通过我们这个 grow vm 的方式其实是类似的。 所以说啊,十年前 supreme 它是 java 的春天,它拯救了整个 java, 让我们 java 变得如此的火,对, 对不对?那现在果儿 vm 啊,有可能就是 java 的救世主,他可能能让我们 java 现在目前的这个呃下滑的一个趋势啊,有可能呈现一个新的展示,好吧,有可能不会被垢挤掉,那整个 java 生态呢 啊,可能以后都要向这个 grow vm 靠齐啊,并且这个 grow vm 呢,他将不再依赖 gm, 当然你要将我们的 spring 部的应用,比如说把它编译成一个可执行的 exe 文件,你依然是要通过啊 gm 来的啊, 也就是在我们的开发时候,我们依然是需要呃这个 j d k 的环境的,依,依然需要依赖 g m, 但是我们通过 e x e 文件去执行,你可以把它扔给任何一个 windows 的系统, 它不需要去配置 j d k 的环境,不需要去依赖 g v m。 我们都知道我们的 g r 啊,它是跨平台的,对不对?它为什么能够跨平台呢?就是因为通过 g v m 来做了一个中间的这样的一个翻译,翻译成各个系统可识别的这样的一个底层语言,然后供各个操作系统去执行,对吧?那现在他直接通过 grow vm 直接编译成各个操作系统本地的一个可视烟花文件, 所以说他唯一慢的地方可能就是在变异的时候,那变异完之后,不管是你启动速度还是性能还是内存使用都会比之前的要少,因为它是一个直接你对应的操作系统,一个可识别的一个文件了,不需要再利用 g m 再做一个中间的这样的一个翻译了。能不能明白,那这个鼓让 v m 的实现呢?它其实也依靠我们 spring 六提供的这个 aot 的特性,这 aot 的特性是干嘛呢?说白了就是将我们 spring 底层当中的这些病啊等等的这些实力, 那么我们以前这些病是在我们应用启动的时候去创建的,对吧?那所有的这些动态创建的这些实力啊,必须在编译期间进行 提前编译好,所以说他会在编译期间呢,将我们 supreme 当中的这些实力呢,通通的编译成一个二金制的文件,然后供我们的呃 grow vm 去编译成对应的操作系统可执行的一个对应的文件,那还 还包括一个这个 git, 这个 git 呢就是欧 open 机 gdk 提供出来的,也是进行我们的将我们的骄傲类呢 进行预编议程本地操作系统的一个可执行的进项文件,然后呢生成点 exe 文件用的,通过这两板斧,然后呢配合 provm 就可以呢, 最终将编译好的这些字节码文件最终生成成一个 exe 的文件来进行制性。那我就带着大家呢来尝一下鲜,要实现起来呢,也非常的简单, 我们只需要第一步呢,先装上这个 gram vm 的 sdk, 你直接打开这个 github, 打开这个地址之后呢选择这个 java 一十七来进行下载,下载之后呢进行解压,解压完了,这是第一步,第二步呢 配置黄金变量,你需要将你的 grow vm 呢解解压后的目录配置成一个黄金变量,然后将 gr home, 也就是我们之前的 jdk 的这个地址啊配置成这个 grow vm, 然后呢在 pass 里面加上这个 grow vm 的并的目录。好吧,我相信这可都非常的容易啊,你以前配置 jdk 都做过这些操作对吧?完了之后呢,输出一下 java 的版本,输出一下 grow vm 的版本,看是否配置正确。 然后第三步呢,需要通过 grow vm 去下载这个呃本地化的镜像工具,那只有通过它呢,才能将我们的代码编译成对应操作系统的一个可知性化文件,通过这个命令,好吧,直接去安装, 当然这个过程呢,可能会比较慢,因为他是从 gta 上面去下载资源,可能呢会连接超时,因为大家知道我们国内的这个网啊的一些限制,对吧?可能会超时,所以呢,你可以多试几次,当然你也可以通过一些科学上网的方式来进行安装,好吧, 这是第三步,需要安装这个工具,那完了之后呢,按道理来说,这个工具装完了之后,就可以就可以直接去呃编译成我们的 exe 文件了,但是呢, 在 windows 环境还需要安装这个 visa studio, 我们需要呢依赖这个 c 加加的桌面开发和 windows 十一的 sdk, 好吧,去给他装上这些,这个是必须的。 ok, 因为你装了这个之后呢,你的 系统里面才会有一个什么东西呢?才会有一个这个叉。六十四, native tools 孔孟的这个命令行窗口,好吧,只有通过这个命令行窗口,我们才能将我们的代码编译成 ex 文一文件。你直接通过 windows 自带的这个 cmd 的这个命令窗口,是没有办法去执行的,必须通过它,所以我们才需要装这个玩意。 ok, 然后呢,我们要将我们的这个项目编译成 exe 呢,也非常的简单,就直接来到你的项目的所在目录,就比如说我要将它 编译成 exe 文件,那么我们就来到这个目录 完了之后呢,我们直接运行另外一个命令,也就是这个 melon 的命令,好吧,就是 mv vn, 然后通过这个通过这个 native comply 去编译就完了,好吧,这个编译过程呢,比较久,我就不在这里演示了,因为我刚刚说了, 他唯一比较慢的地方呢,就是这个编译,因为他需要将大量的这些 java 代码先预编译成这个二金制的一些文件,然后才能生成啊, exe 文件才能不依赖 gvm, 好吧。 然后完了之后呢,你就会在你的 tag 里面看到一个 e x e 文件,你可以看到啊,它这些都是欲变异的,在这些里面都是 通过 grew r v m 进行预编译的。好吧,这个呢是 supreme a o t, 也就是我刚刚说的,它需要加一些,并提前的进行预编译,你看包括 indefination 啊,对吧?这些本来都是在我们启动的时候呢,会去给它 创建的,那现在在编译期间呢,他就会把你将这些实力编译好,然后最终编译成一个 e x e 文件,然后你直接呢就可以通过这个 e x e 文件来进行执行了, 我们来执行一下,你看执行速度非常的快,对不对?就用了多少零点四八秒,我在这里呢做了一个对比,大家可以看一下。那执 之前的话,我的启动速度用了一秒多,当然我没有任何的业务代码,就是一个空的 spring 部的一个工程, 如果我们自己的一个实际的应用,可能真正启动时间呢,有可能几十秒,甚至几分钟,对不对? 那你看他现在只要零点零几秒,所以说他这个启动速度呢,是快了很多的,包括这个内存的占用啊, 也是快了非常多的,对吧?内存之前要一百多兆就一个关,我现在的一个空的 spring 不能应用啊,就少了这么多, 所以说我们实际当中呢,我们的项目肯定会对我们的资源占用,对我们的服务器的成本肯定是一个非常大的一个呃,节省的,并且经过测试啊,这个 gravm 的性能比我们之前这种 传统的 gm 性能呢,高出了百分之二十到一百。并且现在非常多的大厂,包括这个阿里云啊,蚂蚁金服啊,快手啊,华为云啊,都利用了这个 grow vm 来运行他们的专案应用,从而呢提升他们的一个性能。 所以说这个有可能真的是以后 java 需要转的另外一个技术了。好吧,你可以 不用,但是必须了解到派上用场的时候呢,能够立马拿出来。所以大家呢,可以拿到我这个文档,在我的视频下方留言,拿到这个文档自己去编译一下,其实挺好玩的。好吧,自由图二扫码添加就可能。

那 spring 布的三啊,它最显著最重大的一个特性可以说就是这个本地化了,它通过这个 bro vm 啊,将我们的 spring 布的应用可以编译成一个本地的可执行镜像文件,就比如说我现在是 windows 环境,对吧?它可以直接生成一个点 e x e 文件, 那通过它去启动我们的 spring 部的应用呢?比我们直接以前通过 java 干架的这种方式去启动 spring 部的应用呢,这种方式它启动速度更快,并且呢性能更高,内存占用呢也更少, 所以这个方式啊,有可能是我们这个以后的这个抓娃的第二次变更了,可能是我们抓娃以后的一个很大的一个变革了,大家都知道我们现在抓娃非常的卷,对不对?他已经卷到了一个高度了,那么在这个 顶峰之后呢,如果你没有新东西出来,有可能会呈现一个下滑的趋势,因为你看我现在有很多的一些,比如说够语言,他对我们的 java 的威胁就非常的大,对吧?够语言,他非常的火,他其实呢,他也是一个边一边一性的语言,他其实也是。 呃将代码呢编译成一个二进制文件,然后在 windows 生成一个点 exe 文件,其实通过我们这个 gravim 的方式,其实是类似的。 所以说啊,十年前 supreme 它是 java 的春天,它拯救了整个 java, 让我们 java 变得如此的火,对不对?那现在 grow vm 啊,有可能就是 java 的救世主,它可能能让我们 java 现在目前的这个呃下滑的一个趋势啊, 有可能呈现一个新的展示 啊,有可能不会被垢挤掉,那整个 g r 生态呢?呃,可能以后都要向这个 grow vm 靠齐啊, 并且这个 grow vm 呢,它将不再依赖 gm。 当然你要将我们的 spring 部的应用,比如说把它编译成一个可执行的 exe 文件,你依然是要通过呃, gm 来的啊, 也就是在我们的开发时候,我们依然是需要呃这个 g d k 的环境的,依,依然需要依赖 g m, 但是我们通过 e x e 文件去执行,你可以把它扔给任何一个 windows 的系统, 它不需要去配置 g t k 的环境,不需要去依赖 g v m。 我们都知道我们的骄傲它是跨平台的,对不对?它为什么能够跨平台呢?就是因为通过 g v m 来做了一个中间的这样的一个翻译,翻译成各个系统可识别的这样的一个底层语言,然后共 各个操作系统去执行,对吧?那现在他直接通过 grow m 直接编译成各个操作系统本地的一个可视研发文件,所以说他唯一慢的地方可能就是在编译的时候, 那编译完之后,不管是你启动速度还是性能还是内存使用都会比之前的要少,因为它是一个直接你对应的操作系统,一个可识别的一个文件了,不需要再利用 gm 再做一个中间的这样的一个翻译了。能不能明白, 那这个古装 vm 的实线呢?它其实也依靠我们 spring 六提供的这个 aot 的特性,这 aot 的特性是干嘛呢?说白了就是将我们 spring 底层当中的这些病啊等等的这些实力, 那我们以前这些病是在我们应用启动的时候去创建的,对吧?那所有的这些动态创建的这些实力啊,必须在编译期间 进行提前编译好,所以说他会在编译期间呢,将我们 supreme 当中的这些实力呢,通通的编译成一个二金制的文件,然后供我们的呃 grav vm 去编译成对应的操作系统可执行的一个对应的文件, 那还包括一个这个 git, 这个 git 呢就是欧 open 机 gdk 提供出来的,也是进行我们的将我们的招号类呢进行预编议程本地操作系统的一个可执行的进项文件, 然后呢生成点 exe 文件用的,通过这两板斧,然后呢配合 provm 就可以呢,最终将编译好的这些字解码文件最终生成成一个 exe 的文件来进行执行。 那我就带着大家呢来尝一下鲜,要实现起来呢,也非常的简单,我们只需要第一步呢,先装上这个 brown vm 的 sdk, 你直接打开这个 github, 打开这个地址之后呢选择这个 java 一十七来进行下载,下载之后呢进行解压,解压完了,这是第一步,第二步呢,配置黄金变量,你需要将你的 grow vm 呢解解压后的目录配置成一个黄金变量,然后将 javo, 也就是我们之前的 jdk 的这个地址啊,配置成这个 grow vm, 然后呢在 pass 里面加上这个 graw v m 的并的目录。好吧,我相信这可都非常的容易啊,你以前配置 j d, k 都做过这些操作对吧?完了之后呢,输出一下 java 的版本,输出一下 gra v m 的版本,看是否配置正确。 然后第三步呢,需要通过 grow vm 去下载这个呃本地化的镜像工具,那只有通过它呢才能将我们的代码编译成对应操作系统的一个可置性化文件,通过这个命令,好吧,直接去安装,当然这个过 过程呢,可能会比较慢,因为他是从 dta 上面去下载资源,可能呢会连接超时,因为大家知道我们国内的这个网呃的一些限制,对吧?可能会超时,所以呢,你可以多试几次,当然你也可以通过一些科学上网的方式来进行安装。好吧,这是第三步,需要安装这个工具, 那完了之后呢,按道理来说,这个工具装完了之后,就可以就可以直接去呃编译成我们的 e x e 文件了。但是呢,在 windows 环境还需要安装这个 visa studio, 我们需要呢依赖这个 c 加加的桌面开发和 windows 十一的 s, d, k, 好吧, 去给他抓上这些,这个是必须的。 ok, 因为你抓了这个之后呢,你的系统里面才会有一个什么东西呢?才会有一个这个叉。六十四, native tools command 这个命令函窗口好不好?只有通过这个命令函窗口, 我们才能将我们的代码编译成 ex 文一文件。你直接通过 windows 自带的这个 c, m, d 的这个命令窗口是没有办法去执行的,必须通过它,所以我们才需要装这个玩意。 ok, 然后呢,我们要将我们的这个项目编译成 exe 呢,也非常的简单,就直接来到你的项目的所在目录,就比如说我要将它编译成 exe 文件,那么我们就来到这个目录 完了之后呢,我们直接运行另外一个命令,也就是这个 melon 的命令,好吧,就是 m v v n, 然后通过这个,通过这个 native comply 去编译就完了,好吧,这个编译过程呢,比较久,我就不在这里演示了,因为我刚刚说了,他唯一比较慢的 地方呢,就是这个编译,因为他需要将大量的这些 java 代码先预编译成这个要定制的一些文件,然后才能生成啊, exe 文件才能不依赖 gbm, 好吧。 然后完了之后呢,你就会在你的 tag 里面看到一个 e x e 文件,你可以看到啊,它这些都是欲变异的, 在这些里面都是通过 grew r v m 进行预编译的,好吧,这个呢是 spring a o t, 也就是我刚刚说的,它需要加一些,并提前的进行预编译,你看包括 indefination 啊,对吧?这些本来都是在我们启动的时候呢,会去给它 创建的,那现在在编译期间呢,他就会把你将这些实力编译好,然后最终编译成一个 e x e 文件,然后你直接呢就可以通 通过这个 e x e 文件来进行执行了,我们来执行一下,你看执行速度非常的快,对不对?就用了多少?零点四八秒, 我在这里呢做了一个对比,大家可以看一下,那之前的话,我的启动速度用了一秒多,当然我没有任何的业务代码,就是一个空的。 spring 部的一个工程, 如果我们自己的一个实际的应用,可能真正启动时间呢?有可能几十秒,甚至几分钟,对不对?那你看他现在只要零点零几秒,所以说他这个启动速度呢,是快了很多的,包括这个内存的占用啊, 也是快了非常多的,对吧?内存之前要一百多兆就一个关,我现在的一个空的 spam 部的应用啊,就少了这么多,所以说我们实际当中呢,我们的项目肯定会对我们的资源占用,对我们的服务器的成本 肯定是一个非常大的一个呃,节省的,并且经过测试啊,这个 gravim 的性能比我们之前这种传统的 gm 性能呢高出了百分之二十到一百, 并且现在非常多的大厂,包括这个阿里云啊,蚂蚁金服啊,快手啊,华为云啊,都利用了这个 gravm 来运行他们的专业应用,从而呢提升他们的一个性能。 所以说这个有可能真的是以后抓了需要转的另外一个技术了。好吧,你可以不用,但是必须了解到派上用场的时候呢,能够立马拿出来。所以大家呢,可以拿到我这个文档,在我的视频下方留言,拿到这个文档自己去编译一下,其实挺好玩的。好吧, nice。

分享一个视频不得加 v 一,请用它分离的学习项目主要的功能有用户角色、菜单、按钮、权限以及数据字典这么一套功能相对而言都比较简单,适合小白入门学习。 然后我们来看一下项目的获取地址是在这里, api 是属于后端,未谱是前端,然后这里面使用的一个技术站主要是后端是密布的,买 c 口,买 bendys plus, radis doc, 前端主要是 v v 三以及 animal plus waiter, 运行文档可以参考各自的 redmi。 然后我们来说一下它如何去运行。首先需要我们将 d o c 下面的 c 口文件导入到我们的数据库中,然后在这里去修改 d v 的一个配置文件, 在下面我们需要去修改比如说 redis 的一个地址以及密码,还有我们买 c 口的一个连接地址以及他的一个账号密码 相关配置信息。修改完成之后,我们就可以在右边去点击运行我们的项目了,功能相对来源都比较简单,感兴趣的话可以下来看一下这个项目。最后这个项目也提供了相关的微服务版本。