- ubuntu 22.04上karaf的开发尝试
Wen Zhao
ubuntujavassh
在Ubuntu22.04上进行karaf开发的初次尝试,Karaf是Apache对OSGi的一个开源实现,即Java的动态模块化。本次尝试的JDK版本为OpenJDK11,Karaf版本为4.4.1首先在Ubuntu上安装JDK并下载Karaf#安装JDK11sudoaptinstallopenjdk-11-jdk-headless#下载Karafwgethttps://dlcdn.apache.
- react native 项目创建
react-native
创建项目npx@react-native-community/cliinit项目名称依赖组件brewupdatebrewupgradeopensslreadlinelibyamlgmp新版本的macosgitclonehttps://github.com/rbenv/ruby-build.git"$(rbenvroot)"/plugins/ruby-buildrbenv环境exportPATH="
- 玩转OSGI-ApacheFelix(三)MAVEN
八方来财添好运
OSGIApacheFelixIDEAmavenjavamybatis
目录1.前言2.maven插件介绍3.maven-bundle-plugin3.1参数说明3.2Bundle-SymbolicName3.3Bundle-Version3.4Export-Package3.5Import-Package3.6DynamicImport-Package3.7Bundle-Classpath4.项目下载1.前言本章内容接第二篇玩转OSGI-ApacheFelix(二)
- OSGI启动级别服务规范
光芒再现0394
OSGIosgiosgi框架框架systemservice任务
1.简介本章规范描述了在OSGi服务平台下,如何实现管理代理对启动和停止bundle的顺序进行控制。启动级别服务给每一个bundle分配一个启动级别(startlevel)。管理代理可以修改bundle的启动级别,并通过设置框架激活启动级别(activestartlevel)来启动和停止相关的bundle。只有启动级别小于或者等于激活启动级别的bundle才可以激活。启动级别服务的目的在于允许管理
- java类加载机制
娟宝宝萌萌哒
java初始化过程双亲委派类加载器自定义类加载器
文章目录类生命周期类加载时机主动引用被动引用类加载过程加载验证准备解析初始化父类和子类的初始化顺序双亲委派模型3种系统提供的类加载器委派行为双亲委派解决的问题委派模型的破坏线程上下文类加载器OSGI热部署自定义类加载器类相等和加载器的关系常见问题分析1由不同的类加载器加载的指定类还是相同的类型吗?2在代码中直接调用Class.forName(Stringname)方法,到底会触发那个类加载器进行类
- OSGI bundle 运行报错 java.lang.ClassNotFoundException & java.lang.NoClassDefFoundError
sunny05296
开发常见问题java开发语言
OSGIbundle运行报错java.lang.ClassNotFoundException&java.lang.NoClassDefFoundError在helloworld-serverbundle中引入了MySQLJDBC驱动包(mysql-connector-java-5.1.35-bin.jar),helloworld-clientbundle调用helloworld-serverbun
- OSGI 环境搭建
sunny05296
开发javaosgi
OSGI环境搭建OSGIWindows运行环境搭建(Linux也可参考该方式、只是文件路径换成Linux路径即可)。OSGIEquinoxDownloads软件包官方下载页面:https://download.eclipse.org/equinox/里面有所有版本的下载连接。我下载4.30版本下载:https://archive.eclipse.org/equinox/drops/R-4.30-2
- Maven构建OSGI+HttpServer应用
sunny05296
开发mavenjavaosgi
Maven构建OSGI+HttpServer应用官网(https://eclipse.dev/equinox/server/http_in_equinox.php)介绍有两种方式:一种是基于”org.eclipse.equinox.http”包的轻量级实现,另一种是基于”org.eclipse.equinox.http.jetty”包(基于jetty的Servlet)实现。使用"org.eclip
- windows系统如何部署nacos
hhf的博客
项目相关微服务nacos
1.安装nacos去nacosgithub下载nacos最新稳定版本,我用的是nacos-server-2.2.3.zip,下载后解压2.创建数据库启动mysql,创建数据库nacos,数据库名字是从conf/application.properties文件获得的把db这三行取消注释,修改为自己mysql的账号密码3.执行建表sql语句在mysql管理工具对nacos数据库运行conf/mysql
- Nacos注册中心和服务发现
zhouwenxing666
服务发现中间件springcloudjava云原生微服务springboot
Nacos注册中心01认识和安装NacosNacos比Eureka功能更为丰富,是SpringCloud中的一个组件,Nacos是阿里巴巴的产品,在国内更流行。NACOS功能:服务发现(对标Eureka)、配置管理、服务管理下载见:D:\zwx\weifuwu\nacos-server-1.4.1或者在官网GitHub主页:https://github.com/alibaba/nacosGitHu
- 打开eclipse出现Incompatible JVM Verison 1.8.0_181 of the JVM....
超酱仔啦
开发工具javaeclipsejdk
打开eclipse出现IncompatibleJVMVerison1.8.XXXoftheJVMisnotsuitableforthisproduct.Version:11orgreaterisrequired.1.本地已经有1.8.XX,但因为新安装eclipse需要JVM更高的版本。2.在文件中eclipse.ini把对应的两个-Dosgi.requiredJavaVersion=11改成1.
- OSGI架构结合低版本Spring如何引进Feign
泸西凉米线
javaspring架构java
本文介绍用不了springcloud的低版本系统如何借鉴cloudopenfeign的封装思想来封装Feign,也能在多个工程以同样的接口申明方式来调用远程接口。OpenFeign源于Netflix的Feign,是http通信的客户端。屏蔽了网络通信的细节,直接面向接口的方式开发,让开发者感知不到网络通信细节。所有远程调用,都像调用本地方法一样完成!封装的关键是OpenFeign这两个注解,我们后
- PyTorch深度学习实践——Logistic Regression
不见当年灰太狼
pytorch深度学习pytorch深度学习机器学习
在本次学习中,学习到了logistic回归,虽然说是一种回归模型,但是这个模型实际上是做分类问题,对于这种回归模型我们同样从三个方面来进行介绍,logistic回归是什么?为什么要采用logistics回归?如何实现losgistic回归模型?下面是对于logistic回归的总结:logistic回归是什么?给出定义:逻辑斯谛回归(logisticregression)是统计学习中的经典分类方法,
- JAVA的双亲委派机制
澄风
JAVAjava开发语言双亲委派类加载器
目录双亲委派的介绍破坏双亲委派模型OSGI双亲委派(ParentDelegation)是一种软件设计模式,常用于Java类加载器的实现。它通过继承关系来实现类的加载,即每个类加载器都有一个父加载器,当一个类加载器需要加载一个类时,它首先将该任务委派给它的父加载器,只有在父加载器无法加载时,才由该加载器自己来完成加载。双亲委派的介绍站在Java虚拟机的角度讲,只存在两种不同的类加载器:一种是启动类加
- Dbeaver 启动报错: error ,see the log file ...
烟萝
查找log文件:[安装路劲]\DBeaver\configuration下看到.log结尾的文件;打开查看报错信息,显示内容表明文件访问没有权限,我采取的方法是删除文件:org.eclipse.osgi,解决了我的问题。如果你也遇到类似的问题,可以先备份文件org.eclipse.osgi,然后进行删除试试,希望对你有帮助。
- 什么是OSGI,Apache Flex, Apache Karaf, Equiniox, Knopflerfish, Virgo, Blueprint 及 Pax Exam 各自与OSGI有什么关系?
虽不能至_然心向往之
OSGi是指开放服务网关(OpenServiceGatewayinitiative)。OSGi规范描述了使用Java获得更好的模块化的方法。应用和组件是以bundle形式的,它们可以被远程的安装,启动,停止,更新,及卸载,且不需要重启应用。尽管OSGi最初是作为服务网关(如名所示),OSGi规范在演化中已经超出这一范围,并正被用于应用的更广范围,比如EclipseIDE是一个众所周知的例子。模块架
- 基于netty的Marshalling序列化框架简单实现
胡浩8880
1.导入相关jar包maven项目直接添加依赖即可。org.jboss.marshallingjboss-marshalling-osgi2.0.0.Beta52.创建序列化传输的类//记得要实现Serializable接口publicclassUserInfoimplementsSerializable{privateStringusername;privateStringage;publicS
- Nacos注册中心
KYGALYX
springcloud
Nacos注册中心安装NacosNacos安装指南1.Windows安装开发阶段采用单机安装即可。1.1.下载安装包在Nacos的GitHub页面,提供有下载链接,可以下载编译好的Nacos服务端或者源代码:GitHub主页:https://github.com/alibaba/nacosGitHub的Release下载页:https://github.com/alibaba/nacos/rele
- Nacos的Linux和Windows的安装
漠丶小翁
Nacos安装指南1.Windows安装开发阶段采用单机安装即可。1.1.下载安装包在Nacos的GitHub页面,提供有下载链接,可以下载编译好的Nacos服务端或者源代码:GitHub主页:https://github.com/alibaba/nacosGitHub的Release下载页:https://github.com/alibaba/nacos/releases如图:windows版本
- Protobuf 反射技术简介
sober_me
分布式python开发语言
对于反射大家应该不会陌生,如果你接触过一些框架(如ORM、IOC、OSGi等)的内部实现,应该更能体会反射技术的应用可谓无处不在。反射概念最早出现于人工智能领域,20世纪70年代末被引入到程序语言设计中。1982年MIT的Smith,BrianCantwell在他的博士论文中最早提出了程序反射的概念:既然我们可以构造“有关某个外部世界表示”的计算过程,并通过它来对那个外部世界进行推理;那么我们也可
- OSGI热插拔服务
t梧桐树t
javaspringboot
OSGi(OpenServiceGatewayinitiative)作为一种模块化技术,为Java应用程序提供了动态性、模块化和可扩展性。通过OSGi,应用程序可以在运行时动态地添加、删除或更新服务,而无需停止和重新启动整个应用程序。这种特性使得OSGi非常适合用于构建热插拔系统。热插拔热插拔是指在应用程序运行时,可以动态地添加或删除组件,而无需停止和重新启动整个应用程序。通过使用OSGi,我们可
- 【Docker基础四】Docker安装Nacos
herogus丶
Docker基础docker容器
准备需安装mysql并创建nacos数据库。没有安装mysql?看这篇文章:【Docker基础二】Docker安装Mysql8-CSDN博客建表语句地址:建表语句(nacosgithub)下载镜像可用版本:发布·阿里巴巴/NACOS(github.com)#查看镜像dockersearchnacos#获取最新版本镜像#dockerpullnacos/nacos-server#获取指定版本镜像doc
- Karaf教程之安装和应用开发
AshCode
OSGiKarafosgikaraf
目录概览安装和启动一些便利的命令Tasklist-一个小的OSGI应用父pom和通用工程的设置Tasklist-modelTasklist-persistenceTasklist-uiTasklist-features在Karaf中安装应用总结参考文献概览以这篇文章为起点,我将开始写一系列关于ApacheKaraf的文章,ApacheKaraf是一个基于Equinox或者Felix框架开发的一个O
- 微内核架构的理解
某科学的南条
杂项架构
什么是微内核架构相信大家都听说过微内核架构,也或多或少做过一些类似于微内核架构的设计,为了可以更好的设计出微内核的架构,我们了解下什么是微内核架构。说到微内核架构,大家首先会想到的是Eclips、IDEA、OSGI、SpringPlugin、SPI等,这些都是我们熟知的微内核架构。有了微内核架构,我们可以更好的定制和控制流程,所以微内核架构的设计思想经常在做配置化中台项目的方案中出现的。微内核架构
- 七:Day01_Java9—16新特性
新手小菜鸟上路
java
第一章JDK9新特性jdk9是新特性最多的,因为jdk8是一个稳定版本。1、JDK9新特性概述模块系统(ModuleSystem)Java9最大特性。它提供了类似于OSGI框架的功能,模块之间存在相互的依赖关系,可以导出一个公共的API,并且隐藏实现的细节。作用为减少内存的开销。JShell和JlinkJShel是交互式Java编程环境。允许开发者在命令行界面中快速编写和测试Java代码。Jlin
- 【基础篇】七、线程上下文类加载器打破双亲委派机制
-代号9527
JVMjvmjava
文章目录1、SPI机制2、JDBC案例之SPI机制3、打破双亲委派机制:线程上下文类加载器4、打破双亲委派机制:osgi模块化5、JDK9之后的类加载器6、小总结1、SPI机制SPI,ServiceProviderInterface,是JDK内置的一种服务提供发现机制。大致流程:相关组织定义好接口标准并对外提供第三方去针对接口写实现类,并将信息写在META-INF/services/${inter
- axios的基础使用
有内涵的Google
中文文档:http://www.axios-js.com/npm仓库地址:https://www.npmjs.com/package/axiosgithub地址:https://github.com/axios/axios简介axios是基于promise用于浏览器和node.js的http客户端1.支持浏览器和node.js2.支持promise3.能够请求拦截和响应4.能转换请求和响应数据5.
- 关于“HTTP 405 Method Not Allowed”问题小记
毛豆来啦
最近接手一个springboot项目,因为之前使用的是公司封装的osgi框架,很少使用springBoot。所以自己尝试添加一个api接口,犯了一个很低级的错误。我的方法是定义的是使用:GET的方式@Path("/userInfo")publicclassUserInfoController{@AutowiredUserInfoServiceImpluserInfoService;/****/@G
- Nacos源码编译发布
James.K柯
日常笔记java开发语言
1:下载源码GitHub-alibaba/nacos:aneasy-to-usedynamicservicediscovery,configurationandservicemanagementplatformforbuildingcloudnativeapplications.https://github.com/alibaba/nacosGitHub-alibaba/nacos:aneasy-
- Permission denied (publickey). Mac OS Sierra SSH密钥在重启后丢失的问题
Bana
macosgit使用ssh出现Permissiondenied的问题,使用sshagent解决之后电脑重启还是出现这个问题,网上找了下问题发现:从macOSSierra10.12.2以后,SSH的配置选项中多了“UseKeychain”选项解决办法在~/.ssh/config文件中添加下面这段话,问题就可以解决了://在命令行使用vim创建config,输入内容Host*AddKeysToAgen
- mondb入手
木zi_鸣
mongodb
windows 启动mongodb 编写bat文件,
mongod --dbpath D:\software\MongoDBDATA
mongod --help 查询各种配置
配置在mongob
打开批处理,即可启动,27017原生端口,shell操作监控端口 扩展28017,web端操作端口
启动配置文件配置,
数据更灵活 
- 大型高并发高负载网站的系统架构
bijian1013
高并发负载均衡
扩展Web应用程序
一.概念
简单的来说,如果一个系统可扩展,那么你可以通过扩展来提供系统的性能。这代表着系统能够容纳更高的负载、更大的数据集,并且系统是可维护的。扩展和语言、某项具体的技术都是无关的。扩展可以分为两种:
1.
- DISPLAY变量和xhost(原创)
czmmiao
display
DISPLAY
在Linux/Unix类操作系统上, DISPLAY用来设置将图形显示到何处. 直接登陆图形界面或者登陆命令行界面后使用startx启动图形, DISPLAY环境变量将自动设置为:0:0, 此时可以打开终端, 输出图形程序的名称(比如xclock)来启动程序, 图形将显示在本地窗口上, 在终端上输入printenv查看当前环境变量, 输出结果中有如下内容:DISPLAY=:0.0
- 获取B/S客户端IP
周凡杨
java编程jspWeb浏览器
最近想写个B/S架构的聊天系统,因为以前做过C/S架构的QQ聊天系统,所以对于Socket通信编程只是一个巩固。对于C/S架构的聊天系统,由于存在客户端Java应用,所以直接在代码中获取客户端的IP,应用的方法为:
String ip = InetAddress.getLocalHost().getHostAddress();
然而对于WEB
- 浅谈类和对象
朱辉辉33
编程
类是对一类事物的总称,对象是描述一个物体的特征,类是对象的抽象。简单来说,类是抽象的,不占用内存,对象是具体的,
占用存储空间。
类是由属性和方法构成的,基本格式是public class 类名{
//定义属性
private/public 数据类型 属性名;
//定义方法
publ
- android activity与viewpager+fragment的生命周期问题
肆无忌惮_
viewpager
有一个Activity里面是ViewPager,ViewPager里面放了两个Fragment。
第一次进入这个Activity。开启了服务,并在onResume方法中绑定服务后,对Service进行了一定的初始化,其中调用了Fragment中的一个属性。
super.onResume();
bindService(intent, conn, BIND_AUTO_CREATE);
- base64Encode对图片进行编码
843977358
base64图片encoder
/**
* 对图片进行base64encoder编码
*
* @author mrZhang
* @param path
* @return
*/
public static String encodeImage(String path) {
BASE64Encoder encoder = null;
byte[] b = null;
I
- Request Header简介
aigo
servlet
当一个客户端(通常是浏览器)向Web服务器发送一个请求是,它要发送一个请求的命令行,一般是GET或POST命令,当发送POST命令时,它还必须向服务器发送一个叫“Content-Length”的请求头(Request Header) 用以指明请求数据的长度,除了Content-Length之外,它还可以向服务器发送其它一些Headers,如:
- HttpClient4.3 创建SSL协议的HttpClient对象
alleni123
httpclient爬虫ssl
public class HttpClientUtils
{
public static CloseableHttpClient createSSLClientDefault(CookieStore cookies){
SSLContext sslContext=null;
try
{
sslContext=new SSLContextBuilder().l
- java取反 -右移-左移-无符号右移的探讨
百合不是茶
位运算符 位移
取反:
在二进制中第一位,1表示符数,0表示正数
byte a = -1;
原码:10000001
反码:11111110
补码:11111111
//异或: 00000000
byte b = -2;
原码:10000010
反码:11111101
补码:11111110
//异或: 00000001
- java多线程join的作用与用法
bijian1013
java多线程
对于JAVA的join,JDK 是这样说的:join public final void join (long millis )throws InterruptedException Waits at most millis milliseconds for this thread to die. A timeout of 0 means t
- Java发送http请求(get 与post方法请求)
bijian1013
javaspring
PostRequest.java
package com.bijian.study;
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURL
- 【Struts2二】struts.xml中package下的action配置项默认值
bit1129
struts.xml
在第一部份,定义了struts.xml文件,如下所示:
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts
- 【Kafka十三】Kafka Simple Consumer
bit1129
simple
代码中关于Host和Port是割裂开的,这会导致单机环境下的伪分布式Kafka集群环境下,这个例子没法运行。
实际情况是需要将host和port绑定到一起,
package kafka.examples.lowlevel;
import kafka.api.FetchRequest;
import kafka.api.FetchRequestBuilder;
impo
- nodejs学习api
ronin47
nodejs api
NodeJS基础 什么是NodeJS
JS是脚本语言,脚本语言都需要一个解析器才能运行。对于写在HTML页面里的JS,浏览器充当了解析器的角色。而对于需要独立运行的JS,NodeJS就是一个解析器。
每一种解析器都是一个运行环境,不但允许JS定义各种数据结构,进行各种计算,还允许JS使用运行环境提供的内置对象和方法做一些事情。例如运行在浏览器中的JS的用途是操作DOM,浏览器就提供了docum
- java-64.寻找第N个丑数
bylijinnan
java
public class UglyNumber {
/**
* 64.查找第N个丑数
具体思路可参考 [url] http://zhedahht.blog.163.com/blog/static/2541117420094245366965/[/url]
*
题目:我们把只包含因子
2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14
- 二维数组(矩阵)对角线输出
bylijinnan
二维数组
/**
二维数组 对角线输出 两个方向
例如对于数组:
{ 1, 2, 3, 4 },
{ 5, 6, 7, 8 },
{ 9, 10, 11, 12 },
{ 13, 14, 15, 16 },
slash方向输出:
1
5 2
9 6 3
13 10 7 4
14 11 8
15 12
16
backslash输出:
4
3
- [JWFD开源工作流设计]工作流跳跃模式开发关键点(今日更新)
comsci
工作流
既然是做开源软件的,我们的宗旨就是给大家分享设计和代码,那么现在我就用很简单扼要的语言来透露这个跳跃模式的设计原理
大家如果用过JWFD的ARC-自动运行控制器,或者看过代码,应该知道在ARC算法模块中有一个函数叫做SAN(),这个函数就是ARC的核心控制器,要实现跳跃模式,在SAN函数中一定要对LN链表数据结构进行操作,首先写一段代码,把
- redis常见使用
cuityang
redis常见使用
redis 通常被认为是一个数据结构服务器,主要是因为其有着丰富的数据结构 strings、map、 list、sets、 sorted sets
引入jar包 jedis-2.1.0.jar (本文下方提供下载)
package redistest;
import redis.clients.jedis.Jedis;
public class Listtest
- 配置多个redis
dalan_123
redis
配置多个redis客户端
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi=&quo
- attrib命令
dcj3sjt126com
attr
attrib指令用于修改文件的属性.文件的常见属性有:只读.存档.隐藏和系统.
只读属性是指文件只可以做读的操作.不能对文件进行写的操作.就是文件的写保护.
存档属性是用来标记文件改动的.即在上一次备份后文件有所改动.一些备份软件在备份的时候会只去备份带有存档属性的文件.
- Yii使用公共函数
dcj3sjt126com
yii
在网站项目中,没必要把公用的函数写成一个工具类,有时候面向过程其实更方便。 在入口文件index.php里添加 require_once('protected/function.php'); 即可对其引用,成为公用的函数集合。 function.php如下:
<?php /** * This is the shortcut to D
- linux 系统资源的查看(free、uname、uptime、netstat)
eksliang
netstatlinux unamelinux uptimelinux free
linux 系统资源的查看
转载请出自出处:http://eksliang.iteye.com/blog/2167081
http://eksliang.iteye.com 一、free查看内存的使用情况
语法如下:
free [-b][-k][-m][-g] [-t]
参数含义
-b:直接输入free时,显示的单位是kb我们可以使用b(bytes),m
- JAVA的位操作符
greemranqq
位运算JAVA位移<<>>>
最近几种进制,加上各种位操作符,发现都比较模糊,不能完全掌握,这里就再熟悉熟悉。
1.按位操作符 :
按位操作符是用来操作基本数据类型中的单个bit,即二进制位,会对两个参数执行布尔代数运算,获得结果。
与(&)运算:
1&1 = 1, 1&0 = 0, 0&0 &
- Web前段学习网站
ihuning
Web
Web前段学习网站
菜鸟学习:http://www.w3cschool.cc/
JQuery中文网:http://www.jquerycn.cn/
内存溢出:http://outofmemory.cn/#csdn.blog
http://www.icoolxue.com/
http://www.jikexue
- 强强联合:FluxBB 作者加盟 Flarum
justjavac
r
原文:FluxBB Joins Forces With Flarum作者:Toby Zerner译文:强强联合:FluxBB 作者加盟 Flarum译者:justjavac
FluxBB 是一个快速、轻量级论坛软件,它的开发者是一名德国的 PHP 天才 Franz Liedke。FluxBB 的下一个版本(2.0)将被完全重写,并已经开发了一段时间。FluxBB 看起来非常有前途的,
- java统计在线人数(session存储信息的)
macroli
javaWeb
这篇日志是我写的第三次了 前两次都发布失败!郁闷极了!
由于在web开发中常常用到这一部分所以在此记录一下,呵呵,就到备忘录了!
我对于登录信息时使用session存储的,所以我这里是通过实现HttpSessionAttributeListener这个接口完成的。
1、实现接口类,在web.xml文件中配置监听类,从而可以使该类完成其工作。
public class Ses
- bootstrp carousel初体验 快速构建图片播放
qiaolevip
每天进步一点点学习永无止境bootstrap纵观千象
img{
border: 1px solid white;
box-shadow: 2px 2px 12px #333;
_width: expression(this.width > 600 ? "600px" : this.width + "px");
_height: expression(this.width &
- SparkSQL读取HBase数据,通过自定义外部数据源
superlxw1234
sparksparksqlsparksql读取hbasesparksql外部数据源
关键字:SparkSQL读取HBase、SparkSQL自定义外部数据源
前面文章介绍了SparSQL通过Hive操作HBase表。
SparkSQL从1.2开始支持自定义外部数据源(External DataSource),这样就可以通过API接口来实现自己的外部数据源。这里基于Spark1.4.0,简单介绍SparkSQL自定义外部数据源,访
- Spring Boot 1.3.0.M1发布
wiselyman
spring boot
Spring Boot 1.3.0.M1于6.12日发布,现在可以从Spring milestone repository下载。这个版本是基于Spring Framework 4.2.0.RC1,并在Spring Boot 1.2之上提供了大量的新特性improvements and new features。主要包含以下:
1.提供一个新的sprin