- Netty源码分析:NioEventLoopGroup
HelloWorld_EE
netty源码分析源代码nettyEventLoop
Netty源码分析:NioEventLoopGroup在工作之余,看到自己公司的超哥(俞超)关于Netty的系列博文,讲解的很好,因此,自己在学习之余也跟了下源代码,来了解Netty,也做了相关的笔记,将形成系列博文,这是第一篇。超哥的博文地址在这里:http://www.jianshu.com/p/c5068caab217Netty版本:4.0.23.Final借用超哥的例子,一般服务端的代码如
- Netty-Netty源码分析
长情知热爱
java开发语言
Netty线程模型图Netty线程模型源码剖析图Netty高并发高性能架构设计精髓主从Reactor线程模型NIO多路复用非阻塞无锁串行化设计思想支持高性能序列化协议零拷贝(直接内存的使用)ByteBuf内存池设计灵活的TCP参数配置能力并发优化无锁串行化设计思想在大多数场景下,并行多线程处理可以提升系统的并发性能。但是,如果对于共享资源的并发访问处理不当,会带来严重的锁竞争,这最终会导致性能的下
- 深入学习SpringMVC以及学习总结
程序员日常填坑
一、优点:1.SpringMVC简化web程序开发;2.SpringMVC效率很好(单例模式);3.SpringMVC提供了大量扩展点,方便程序员自定义功能;如果想学习Java工程化、高性能及分布式、深入浅出。微服务、Spring,MyBatis,Netty源码分析的朋友可以加我的Java高级交流:854630135,群里有阿里大牛直播讲解技术,以及Java大型互联网技术的视频免费分享给大家。①.
- 被标记为事务的方法互相调用的坑(下)
程序员日常填坑
上一节,主要分析了被标记为事务的方法互相调用,事务失效的原因,思考比较多,这一节主要说说解决方案,思考会少一些。解决方案的核心:通过代理对象去调用方法1.把方法放到不同的类:如果想学习Java工程化、高性能及分布式、深入浅出。微服务、Spring,MyBatis,Netty源码分析的朋友可以加我的Java高级交流:854630135,群里有阿里大牛直播讲解技术,以及Java大型互联网技术的视频免费
- 第十六节 netty源码分析之 server端的源码分析
勃列日涅夫
nettyserver端以netty官方EchoServer服务器端的启动代码分析:publicfinalclassEchoServer{staticfinalbooleanSSL=System.getProperty("ssl")!=null;staticfinalintPORT=Integer.parseInt(System.getProperty("port","8007"));public
- 被标记为事务的方法互相调用的坑(上)
程序员日常填坑
相信大家一定用过Spring中的注解型事务,配合上SpringBoot,只需要在方法上打一个@Transactional就可以完成,真香。但是如果大家对其中的机制一知半解的话,可能一不小心就会掉进坑,然后久久无法爬出来。下面我就分享下被标记为事务的方法互相调用的坑。如果想学习Java工程化、高性能及分布式、深入浅出。微服务、Spring,MyBatis,Netty源码分析的朋友可以加我的Java高
- Spring Boot中如何干掉if else
程序员日常填坑
需求这里虚拟一个业务需求,让大家容易理解。假设有一个订单系统,里面的一个功能是根据订单的不同类型作出不同的处理。如果想学习Java工程化、高性能及分布式、深入浅出。微服务、Spring,MyBatis,Netty源码分析的朋友可以加我的Java高级交流:787707172,群里有阿里大牛直播讲解技术,以及Java大型互联网技术的视频免费分享给大家。订单实体:service接口:传统实现根据订单类型
- Netty源码分析--PoolSubPage
shoulda
PoolSubPage内部数据结构分析finalclassPoolSubpage{finalPoolChunkchunk;//所属的PoolChunkprivatefinalintmemoryMapIdx;//在memoryMap的索引idmemoryMap[id]privatefinalintrunOffset;//在PoolChunk的运行时内存偏移量privatefinalintpageSi
- Netty源码分析系列1:BootStrap的分析
maskwang520
Bootstrap是Netty提供的一个便利的工厂类,我们可以通过它来完成Netty的客户端或服务器端的Netty初始化.利用BootStrap我们可以实现创建channel,把channel注册在EventLoop上,发起连接等功能.BootStrap的类结构如下:image.png1.Client端启动实例下面是个简单的客户端实例,我们用这个来分析BootStrap的整个流程.publiccl
- 程序员到底有多累,多辛苦?上百万程序员‘知乎上’吐槽
程序员日常填坑
累不累,在于你自己。这几年来,IT这个行业涌入太多的急功近利的求职者,培训学校批量生产的码农,一批一批又一批。下面来看看其他的程序员是怎么评论的吧!工作要紧也请大家要多多注意自己的身体,要是身体夸了,那就什么都没有了。如果想学习Java工程化、高性能及分布式、深入浅出。微服务、Spring,MyBatis,Netty源码分析的朋友可以加我的Java高级交流:787707172,群里有阿里大牛直播讲
- netty源码分析笔记
抬头挺胸才算活着
参考资料:[1].netty源码分析之揭开reactor线程的面纱(二)[2].Netty源码分析之一揭开Bootstrap神秘的红盖头(服务器端)[3].netty源码分析之揭开reactor线程的面纱(三)[4].netty源码分析之揭开reactor线程的面纱(一)[5].netty源码分析之pipeline(二)[6].Netty中的装饰者模式[7].深入浅出Netty内存管理PoolCh
- Netty源码分析----NioEventLoop之任务队列
_六道木
(*文章基于Netty4.1.22版本)这篇文章主要分析一下NioEventLoop中任务队列相关的代码源码分析taskQueueexecute方法调用的时候或者执行完startThread方法,会调用addTask添加任务protectedvoidaddTask(Runnabletask){if(!offerTask(task)){reject(task);}}finalbooleanoffer
- Netty源码分析之Reactor线程模型详解
跟着Mic学架构
上一篇文章,分析了Netty服务端启动的初始化过程,今天我们来分析一下Netty中的Reactor线程模型在分析源码之前,我们先分析,哪些地方用到了EventLoop?NioServerSocketChannel的连接监听注册NioSocketChannel的IO事件注册NioServerSocketChannel连接监听在AbstractBootstrap类的initAndRegister()方
- 了解Nginx
程序员日常填坑
1.安装Nginx版本nginx-1.14.0如果想学习Java工程化、高性能及分布式、深入浅出。微服务、Spring,MyBatis,Netty源码分析的朋友可以加我的Java高级交流:854630135,群里有阿里大牛直播讲解技术,以及Java大型互联网技术的视频免费分享给大家。#安装C++编译器yum-yinstallgcc-c++#下载并安装OpenSSLopenssl-fips-2.0.
- 第二十节 netty源码分析之 reactor中的EventLoop01
勃列日涅夫
EventLoopGroup(如果使用到的是NIO,那么通常是NioEventLoopGroup),那么这个NioEventLoopGroup在Netty中到底扮演着什么角色呢?NIO的Reactor模型补充多线程的reactor模式Reactor多线程模型有如下特点:有专门一个线程,即Acceptor线程用于监听客户端的TCP连接请求.客户端连接的IO操作都是由一个特定的NIO线程池负责.每个客
- netty源码分析(19)- 添加ChannelHandler过程
Jorgezhong
上一节学习了pipeline初始化的过程。初始化了HeadContext和TailContext,并构建了pipeline双向链表,每个节点存储ChannelHandlerContext。本节研究添加ChannelHandler的过程。在学习之前先整理一些之前学到的内容。在服务端channel初始化channle的过程中,bossGroup为服务端channel的pipeline添加了一个特殊的C
- 几张图让你彻底了解JAVASE、JAVAEE、JAVAWEB整个的知识体系
分不清java
一、JAVASE:二、JAVAEE:三、JAVAWEB:如果想学习Java工程化、高性能及分布式、深入浅出。性能调优、Spring,MyBatis,Netty源码分析的朋友可以加我的Java进阶群:818464711,群里有阿里大牛直播讲解技术,以及Java大型互联网技术的视频免费分享给大家
- 「架构思维导图」搞定数据库索引就是这么简单
Java黎先生
思维导图-索引篇系列思维导图(Java架构)(下面的图片只是一部分)现在加群即可获取思维导图,还有Java工程化、高性能及分布式、高性能、高架构。性能调优、Spring,MyBatis,Netty源码分析和大数据等多个知识点高级进阶干货的直播免费学习权限及相关资料,群号:835638062点击链接加入群聊【Java高级架构】:https://jq.qq.com/?_wv=1027&k=5S3kL3
- 只需五分钟-用Maven快速搭建Spring Cloud微服务
程序员日常填坑
Maven安装手册如果想学习Java工程化、高性能及分布式、深入浅出。微服务、Spring,MyBatis,Netty源码分析的朋友可以加我的Java高级交流:854630135,群里有阿里大牛直播讲解技术,以及Java大型互联网技术的视频免费分享给大家。1、准备安装包安装包:apache-maven-3.5.4-bin.zip(最好JDK1.7及以上版本)集成包:eclipse-maven3-p
- netty源码分析之服务端启动全解析
D_DCode
nettyjavanio源码Netty源码服务启动
原文链接:netty源码分析之服务端启动全解析backgroundnetty是一个异步事件驱动的网络通信层框架,其官方文档的解释为NettyisaNIOclientserverframeworkwhichenablesquickandeasydevelopmentofnetworkapplicationssuchasprotocolserversandclients.Itgreatlysimpli
- netty源码分析之新连接接入全解析
weixin_33890499
nettyjava
本文收获通读本文,你会了解到netty如何接受新的请求netty如何给新请求分配reactor线程netty如何给每个新连接增加ChannelHandler其实,远不止这些~前序背景读这篇文章之前,最好掌握一些前序知识,包括netty中的reactor线程,以及服务端启动过程下面我带你简单地回顾一下1.netty中的reactor线程netty中最核心的东西莫过于两种类型的reactor线程,可以
- Netty 源码分析系列(十一)Netty工作原理详解
初念初恋
nettyjavanetty后端
系列文章目录Netty源码分析系列(一)Netty入门Netty源码分析系列(二)Netty架构设计Netty源码分析系列(三)Channel详解Netty源码分析系列(四)ChannelHandler介绍Netty源码分析系列(五)ChannelPipelineNetty源码分析系列(六)字节缓冲区ByteBuf(上)Netty源码分析系列(七)字节缓冲区ByteBuf(下)Netty源码分析系
- 【Netty 专栏】深入浅出 Netty 内存管理 PoolSubpage
芋道源码
点击上方“芋道源码”,选择“置顶公众号”技术文章第一时间送达!源码精品专栏精尽Dubbo原理与源码专栏(已经完成69+篇,预计总共75+篇)中文详细注释的开源项目Java并发源码合集RocketMQ源码合集Sharding-JDBC源码解析合集SpringMVC和Security源码合集MyCAT源码解析合集摘要:原创出处https://www.jianshu.com/p/d91060311437
- Netty源码分析系列--15. ByteBuf
ted005
创建://非池化,使用完后销毁ByteBufbyteBuf=Unpooled.buffer(10);//复合类型CompositeByteBufcompositeByteBuf=Unpooled.compositeBuffer();当向ByteBuf写入部分数据后,writerIndex会增加;当从ByteBuf中读取部分数据时,readerIndex增加。显然,readableBytes的值等于
- Netty源码分析-05 Netty服务器启动过程
史圣杰
服务器的启动过程大量使用了EventLoop和Future/Promise,在阅读源码之前,建议首先要对Netty的这两种机制进行了解。由于Netty更多是在服务器端使用,因此以服务器的启动过程为例进行学习。5.1阶段:配置config配置阶段的工作很简单,主要就是初始化启动类,设置相关参数。Bootstrap启动类主要功能是初始化启动器,为启动器设置相关属性。我们先来看一下Bootstrap的类
- kafka 数据可靠性深度解读
程序员日常填坑
1概述Kakfa起初是由LinkedIn公司开发的一个分布式的消息系统,后成为Apache的一部分,它使用Scala编写,以可水平扩展和高吞吐率而被广泛使用。目前越来越多的开源分布式处理系统如Cloudera、ApacheStorm、Spark等都支持与Kafka集成。如果想学习Java工程化、高性能及分布式、深入浅出。微服务、Spring,MyBatis,Netty源码分析的朋友可以加我的Jav
- 设计模式总结干货2
高级java架构师
如果想学习Java工程化、高性能及分布式、深入浅出。性能调优、Spring,MyBatis,Netty源码分析的朋友可以加我的Java高级架构进阶群:180705916,群里有阿里大牛直播讲解技术,以及Java大型互联网技术的视频免费分享给大家另外还可以通过反射简洁生产过程,直接传入产品的类类型,生成对应的产品,示例如下:Java代码abstractclassSMakeTea{publicabst
- 前端新手 Vue应用部署到服务器的正确方
IT修真院
作者简介:华哥10年+后端开发工作经验,主要分享:关于java体系的知识,如:java基础知识/数据结算/算法,Spring/MyBatis/Netty源码分析,高并发/高性能/分布式/微服务架构的原理,JVM性能优化等。公众号:java杂记页面出现空白现象,获取资源路径不对等,我相信以VueJs为技术栈来进行前端开发的小伙伴或多或少都会遇到这样的问题,我也遇到过,那现在我们就来一一解决这样的问题
- Netty 源码分析系列(八)Netty 如何实现零拷贝
初念初恋
nettyjavanetty后端
系列文章目录Netty源码分析系列(一)Netty入门Netty源码分析系列(二)Netty架构设计Netty源码分析系列(三)Channel详解Netty源码分析系列(四)ChannelHandler介绍Netty源码分析系列(五)ChannelPipelineNetty源码分析系列(六)字节缓冲区ByteBuf(上)Netty源码分析系列(七)字节缓冲区ByteBuf(下)文章目录系列文章目录
- Netty源码分析-06 Netty读写流程
史圣杰
在服务器启动过程初,我们向ServerBootstrap类传入了两个线程池,一个负责处理I/O连接请求,另一个用来处理连接后的读写操作。主事件循环主要负责接收客户端连接,之后创建与客户端连接的NioSocketChannel,然后将其注册到子事件循环上面,由子事件循环负责处理子Channel的读写操作。6.1Accept流程6.1.1Accept事件的注册向java的channel注册Accept
- 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