06 2018 档案

摘要:1.添加配置文件 mybatis-config.xml EmployeeMapper.xml INSERT INTO employee(lastName,email,gender,d_id) ... 阅读全文
posted @ 2018-06-29 18:28 猴子特种兵 阅读(259) 评论(0) 推荐(0) 编辑
摘要:第一步:配置druid数据源 第二步 创建mapper类 /** * Created by chengbx on 2018/6/29. */ @Mapper public interface DepartmentMapper { @Select("select * from department where id =#{id}") public Department ... 阅读全文
posted @ 2018-06-29 16:29 猴子特种兵 阅读(453) 评论(0) 推荐(0) 编辑
摘要:第一步,在pom.xml文件中导入druid的文件信息 <!-- https://mvnrepository.com/artifact/com.alibaba/druid --> <dependency> <groupId>com.alibaba</groupId> <artifactId>drui 阅读全文
posted @ 2018-06-28 22:29 猴子特种兵 阅读(242) 评论(0) 推荐(0) 编辑
摘要:步骤: 1、码云上新建一个项目 XXXX (项目名) 2、本地创建一个文件夹E:/XXXX,然后使用git bash 3、cd 到本地文件夹中E:/XXXX //如果是在创建的文件中git bash 则此步骤可省略 4、使用 git init 命令 //初始化一个git 本地仓库此时会在本地创建一个 .git 的文件夹 5、使用git remote add o... 阅读全文
posted @ 2018-06-28 20:07 猴子特种兵 阅读(428) 评论(0) 推荐(0) 编辑
摘要:Ribbon Spring Cloud Ribbon 是一个基于Http和TCP的客服端负载均衡工具 Ribbon客户端组件提供一系列完善的配置项,如,连接超时,重试等。简单的说,Ribbon是一个客户端负载均衡器,我们可以在配置文件中列出load Balancer后面所有的机器, Ribbon会自动的帮助你基于某种规则(如简单轮询,随机连接等)去连接这些机器,我们也很容... 阅读全文
posted @ 2018-06-20 20:50 猴子特种兵 阅读(241) 评论(0) 推荐(0) 编辑
摘要:作为服务注册中心,Eureka比Zookeeper好在哪里 著名的CAP理论指出,一个分布式系统不可能同时满足C(一致性)、A(可用性)和P(分区容错性)。由于分区容错性P是在分布式系统中必须要保证的,因此我们只能在A和C之间进行权衡。 因此 Zookeeper保证的是CP Eureka则是AP。 Zookeeper保证CP 当向注册中... 阅读全文
posted @ 2018-06-20 19:08 猴子特种兵 阅读(309) 评论(0) 推荐(0) 编辑
摘要:Eureka是Netflix的一个子模块,也是核心模块之一。Eureka是一个基于REST的服务,用于定位服务,以实现云端中间服务发现和故障转移。 服务注册与发现对于微服务架构来说是非常重要的,有了服务注册与发现,只需要使用服务的标识符,就可以访问到服务,而不需要修改服务调用的配置文件了。 功能类似dubbo的注册中心,比如Zookeeper。 SpringClo... 阅读全文
posted @ 2018-06-19 23:15 猴子特种兵 阅读(405) 评论(0) 推荐(0) 编辑
摘要:Dubbo Spring Cloud 服务注册中心 Zookeeper Spring Cloud Netflix Eureka 服务调用方式 RPC REST API 服务监控 Dubbo-monitor Spring Boot Admin 断路器 不完善 Spring Cloud Netflix Hystrix 服务网关 无 Spri... 阅读全文
posted @ 2018-06-19 14:25 猴子特种兵 阅读(35766) 评论(1) 推荐(2) 编辑
摘要:SpringBoot专注于快速方便的开发单个个体微服务。 SpringCloud是关注全局的微服务协调整理治理框架,它将SpringBoot开发的一个个单体微服务整合并管理起来, 为各个服务之间提供,配置管理、服务发现、断路器、路由、微代理、事件总线、全局锁、精选决策、分布式会话等集成服务。 SpringBoot可以离开SpringCloud独立开发项目,但是Sp... 阅读全文
posted @ 2018-06-19 00:25 猴子特种兵 阅读(18867) 评论(1) 推荐(2) 编辑
摘要:基于SpringBoot 提供的一套微服务解决方案,包括服务注册与发现,配置中心,全链路监控,服务网关,负载均衡,熔断器等组件,除了基于NetFlix的开源组件做高度抽象封装之外,还有一些选型中立的开源组件。SpringCLoud利用SpringBoot的开发便利性巧妙的简化了分布式系统基础设施的开发,SpringCloud为开发人员提供了快速构建分布式系统的一些工具,包括配置管理、服务发现、断... 阅读全文
posted @ 2018-06-19 00:06 猴子特种兵 阅读(350) 评论(0) 推荐(0) 编辑
摘要:是(服务端zuul+客户端Ribbon)zuul-服务,动态路由 云端负载均衡 Eureka(针对中间层服务器) 阅读全文
posted @ 2018-06-18 23:51 猴子特种兵 阅读(558) 评论(0) 推荐(0) 编辑
摘要:SpringCloud Bus 阅读全文
posted @ 2018-06-18 23:14 猴子特种兵 阅读(314) 评论(0) 推荐(0) 编辑
摘要:优点: 每个服务足够内聚,足够小,代码容易理解这样能够聚焦一个指定的业务功能或业务需求。 开发简单,开发效率提高,一个服务可能就是专一的只干一件事情。 微服务是松耦合的,是有功能意义的服务,无论是在开发阶段或部署阶段都是独立的。 微服务能够被小团队单独开发。 微服务能使用不同的语言开发。 易于和第三方集成,微服务允许容易且灵活的方式集成自动部署,通... 阅读全文
posted @ 2018-06-18 22:41 猴子特种兵 阅读(4194) 评论(0) 推荐(0) 编辑
摘要:微服务: 强调的是服务的大小,它关注的是某一个点,是具体解决某一个问题/提供落地对应服务的一个服务应用 狭义的看,可以看做是Eclipse里面的一个个微服务工程/或者Module 强调的是一个一个的个体,每个个体完成一个具体的任务或者功能。 微服务架构: 是一种架构模式,它提倡将单一的应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。 每个服务运行在单独的进程中,服... 阅读全文
posted @ 2018-06-18 22:18 猴子特种兵 阅读(207) 评论(0) 推荐(0) 编辑
摘要:技术维度理解:微服务的核心就是将传统的一站式应用,根据业务拆分成一个一个的服务,彻底的去耦合, 每一个服务提供单个业务功能的服务,一个服务做一件事。 从技术角度看就是一种小而独立的处理过程,类似进程概念,能够自行单独启动或销毁,拥有自己独立的数据库。 阅读全文
posted @ 2018-06-18 17:45 猴子特种兵 阅读(148) 评论(0) 推荐(0) 编辑
摘要:1. Sun HotSpot VM,是JDK和Open JDK中自带的虚拟机,也是目前使用范围最广的Java虚拟机。 2.内存分布图 java虚拟机主要分为以下几个区: 方法区: 有时候也成为永久代,在该区内很少发生垃圾回收,但是并不代表不发生GC,在这里进行的GC主要是对方法区里的常量池和对类型的卸载 方法区主要用来存储已被虚拟机加载的类的信息、常量、静态变量和即时编译器编译... 阅读全文
posted @ 2018-06-18 12:56 猴子特种兵 阅读(198) 评论(0) 推荐(0) 编辑
摘要:mysql> show status like 'InnoDB_row_lock%';+ + +| Variable_name | Value |+ + +| InnoDB_row_lock_current_waits | 0 || InnoDB_row_lock_time | 0 || InnoD 阅读全文
posted @ 2018-06-18 00:17 猴子特种兵 阅读(264) 评论(0) 推荐(0) 编辑
摘要:一、Show Profile是什么? 是MySql提供可以用来分析当前会话中语句执行的资源消耗情况,可以用于SQL的调优的测量。 默认情况下,参数处于关闭状态,并保存最近15次的运行结果。 二、分析步骤 1.开启功能,默认是关闭,使用前需要开启。 3、运行SQL select * from emp group by id%20 order by 5; 4、查看结... 阅读全文
posted @ 2018-06-17 16:20 猴子特种兵 阅读(174) 评论(0) 推荐(0) 编辑
摘要:一、简介 开启慢查询日志,可以让MySQL记录下查询超过指定时间的语句,通过定位分析性能的瓶颈,才能更好的优化数据库系统的性能 二、参数说明 slow_query_log 慢查询开启状态 slow_query_log_file 慢查询日志存放的位置(这个目录需要MySQL的运行帐号的可写权限,一般设置为MySQL的数据存放目录) long_query_time 查询超过多少秒才记录 三、... 阅读全文
posted @ 2018-06-17 16:03 猴子特种兵 阅读(126) 评论(0) 推荐(0) 编辑
摘要:order By 关键字优化 1.尽量使用index方式排序,避免使用Filesort方式排序。 2.Mysql支持两种排序方式,Filesort和Index,Index效率高, 它指Mysql扫描索引本身完成排序。FileSort排序方式效率低。 order by满足两种情况,会使用index排序 1.order by 语句使用索引最左前列 2.使用where子句和order By子句条件... 阅读全文
posted @ 2018-06-17 15:49 猴子特种兵 阅读(3598) 评论(0) 推荐(1) 编辑
摘要:1.如果索引了多列,要遵守最左前缀法则,指的是查询从索引的最左前列开始并且不跳过索引中的列。 2.不在索引上做任何操作(计算、函数、(自动or手动)类型转换),会导致索引丢失而转向全表扫描。 3.存储引擎不能使用索引中范围条件右边的列。(范围条件后的列索引丢失) 4.尽量使用覆盖索引(只访问索引的查询(索引列和查询列一致)),减少select * 5.Mysql使用不等于(!=或... 阅读全文
posted @ 2018-06-17 15:40 猴子特种兵 阅读(169) 评论(0) 推荐(0) 编辑
摘要:聚集索引: 简单概念:一个表中根据主键创建的一棵B+树,索引的叶子节点存放了表中所有的记录,存储记录在物理位置上是连续的,一个叶子节点存放一条对应的记录(PS:是根据主键创建的B+树,叶子节点存数据记录) 。 举个例子(以汉语字典为例): 汉语字典的正文本身就是一个聚集索引,比如我们要查“安”字,由于汉语词典的拼音排序是从“a”开始到“z”结尾的,则“安”字自然而然就排在字典前部,若翻遍了所... 阅读全文
posted @ 2018-06-17 15:17 猴子特种兵 阅读(882) 评论(0) 推荐(0) 编辑
摘要:存在某一节点高度过高 阅读全文
posted @ 2018-06-17 14:50 猴子特种兵 阅读(218) 评论(0) 推荐(0) 编辑
摘要:1.索引(Index)是帮助MySQL高效获取数据的数据结构。可以得到索引的本质:索引是数据结构。 可以理解为“排好序的快速查找数据结构” 在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数据, 这样就可以在这些数据结构上实现高级查找算法,这种数据结构就是索引。 2、优势 类似大学图书馆建书目索引,提高数据检索效率,降低数据库的... 阅读全文
posted @ 2018-06-17 14:19 猴子特种兵 阅读(234) 评论(0) 推荐(0) 编辑
摘要:explain显示了mysql如何使用索引来处理select语句以及连接表。可以帮助选择更好的索引和写出更优化的查询语句。 使用方法,在select语句前加上explain就可以了。 mysql> explain select * from servers; +----+-------------+---------+------+---------------+------+------... 阅读全文
posted @ 2018-06-17 13:50 猴子特种兵 阅读(285) 评论(0) 推荐(0) 编辑
摘要:MySQL的语句执行顺序 MySQL的语句一共分为11步,如下图所标注的那样,最先执行的总是FROM操作,最后执行的是LIMIT操作。其中每一个操作都会产生一张虚拟的表,这个虚拟的表作为一个处理的输入,只是这些虚拟的表对用户来说是透明的,但是只有最后一个虚拟的表才会被作为结果返回。如果没有在语句中指定某一个子句,那么将会跳过相应的步骤。 下面我们来具体分析一下查询处理的每一个阶段 1.... 阅读全文
posted @ 2018-06-17 13:12 猴子特种兵 阅读(183) 评论(0) 推荐(0) 编辑
摘要:3. Connection Pool: 连接池 管理缓冲用户连接,线程处理等需要缓存的需求。 负责监听对 MySQL Server 的各种请求,接收连接请求,转发所有连接请求到线程管理模块。每一个连接上 MySQL Server 的客户端请求都会被分配(或创建)一个连接线程为其单独服务。而连接线程的 阅读全文
posted @ 2018-06-17 12:47 猴子特种兵 阅读(259) 评论(0) 推荐(0) 编辑
摘要:摘自 https://blog.csdn.net/fuzhongmin05/article/details/70904190 阅读全文
posted @ 2018-06-12 00:45 猴子特种兵 阅读(159) 评论(0) 推荐(0) 编辑
摘要:Linux组基本介绍 在Linux中的每个用户必须属于一个组,不能独立于组外。在linux中每个文件有所有者、所在组、其他组的概念。 1.一般为文件的创建者,谁创建了该文件,就自然的成为该文件的所有者。 查看文件的所有者 指令 ls -ahl 修改文件所有者 指令 chown 用户名 文件名 修改文件所在的组 指令 chgrp 组名 文件名 改变用户所在的组 usermod -g 组名 用户名... 阅读全文
posted @ 2018-06-11 20:23 猴子特种兵 阅读(115) 评论(0) 推荐(0) 编辑
摘要:1.添加用户 useradd [选项] 用户名 案例 添加一个用户xm # useradd xm 注意:当创建用户成功后,会自动的创建和用户同名的家目录。 也可以根据 useradd -d 指定目录 新的用户名,给创建的用户指定家目录 2.给用户指定或者修改密码 passwd 用户名 案例 给xm指定密码 3.删除用户 userdel 用户名 案例1 删除用户xm 但是要保留家目录... 阅读全文
posted @ 2018-06-11 19:50 猴子特种兵 阅读(156) 评论(0) 推荐(0) 编辑
摘要:Myeclipse启动后点击tomcat报错如下: java.lang.NullPointerException at com.genuitec.eclipse.ast.deploy.core.Deployment.(Unknown Source) at com.genuitec.eclipse.ast.deploy.core.ModuleDeployment.(Unknown ... 阅读全文
posted @ 2018-06-11 13:51 猴子特种兵 阅读(230) 评论(0) 推荐(0) 编辑
摘要:查看系统的网络情况netstat 基本语法 netstat[选项] Netstat -anp (常用) 选项说明 -an 按一定顺序排列输出 -p 显示哪个进程在调用 案例 查看系统所有的网络服务 netstat -anp 查看服务名为sshd的服务的信息。 netstat -anp|grep sshd ... 阅读全文
posted @ 2018-06-11 00:49 猴子特种兵 阅读(276) 评论(0) 推荐(0) 编辑
摘要:服务(service)本身就是进程,但是是运行在后台的,通常都会监听某个端口,等待其他程序的请求,比如(mysql,sshd防火墙等),因此我们又称为守护进程,是Linux非常重要的知识点。 Service管理指令 service 服务名 start|stop|restart|reload|status 在centOS7.0中不再使用service,而是systemctl 案例: 查看防... 阅读全文
posted @ 2018-06-11 00:45 猴子特种兵 阅读(123) 评论(0) 推荐(0) 编辑
摘要:1.在Linux 中,每个执行的程序都是一个进程。每个进程都分配一个ID号。 每一个进程,都对应一个父进程,而这个父进程可以复制多个子进程。 每个进程都可能以两种方式存在的。前台和后台,所谓前台进程就是用户目前的屏幕上可以进行操作的。 后台进程(守护进程)则是实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行。 一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中。直到关... 阅读全文
posted @ 2018-06-11 00:02 猴子特种兵 阅读(143) 评论(0) 推荐(0) 编辑
摘要:Linux系统有7个运行级别(runlevel) 运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动 运行级别1:单用户工作状态,root权限,用于系统维护【找回丢失密码】 运行级别2:多用户状态(没有网络) 运行级别3:完全的多用户状态(有网络),登陆后进入控制台命令行模式 运行级别4:系统未使用,保留给用户 运行级别5:登陆后进入图形GUI模式 运行级别6:系统正常关闭并... 阅读全文
posted @ 2018-06-10 23:07 猴子特种兵 阅读(198) 评论(0) 推荐(0) 编辑
摘要:关机与重启命令 shutdown -h now 表示立即关机 shutdown -h 1 表示一分钟后关机 shutdown -r now 表示立即重启 halt 直接使用,效果等价于关机 reboot 重启系统 sync 把内存的数据保存到磁盘上 注意细节:不管是重启系统还是关闭系统,首先要运行sync... 阅读全文
posted @ 2018-06-10 21:47 猴子特种兵 阅读(277) 评论(0) 推荐(0) 编辑
摘要:1.输入linux指令 vim /etc/sysconfig//network-scripts/ifcfg-eth0 修改网络配置文件信息 如下 DEVICE=eth0 HWADDR=00:0C:29:34:46:40 TYPE=Ethernet UUID=a235aee1-3304-4053-9503-0d343dc996fe ONBOOT=yes --启用Boot配置成yes NM_... 阅读全文
posted @ 2018-06-10 21:28 猴子特种兵 阅读(318) 评论(0) 推荐(0) 编辑
摘要:vi编辑器是所有Unix及Linux系统下标准的编辑器,他就相当于windows系统中的记事本一样. vim 具有程序编辑的能力,可以以字体颜色辨别语法的正确性,方便程序设计; 因为程序简单,编辑速度相当快速。 vim可以当作vi的升级版本,他可以用多种颜色的方式来显示一些特殊的信息。 vim会依据文件扩展名或者是文件内的开头信息, 判断该文件的内容而自动的执行该程序的语法判断式,再以颜色来显示... 阅读全文
posted @ 2018-06-10 21:24 猴子特种兵 阅读(165) 评论(0) 推荐(0) 编辑
摘要:rpm命令是RPM软件包的管理工具。rpm原本是Red Hat Linux发行版专门用来管理Linux各项套件的程序,由于它遵循GPL规则且功能强大方便,因而广受欢迎。逐渐受到其他发行版的采用。RPM套件管理方式的出现,让Linux易于安装,升级,间接提升了Linux的适用度。 指令参数: -a:查询所有套件; -b+或-t +:设置包装套件的完成阶段,并指定套件档的文件名称; -c:只... 阅读全文
posted @ 2018-06-10 20:50 猴子特种兵 阅读(202) 评论(0) 推荐(0) 编辑
摘要:yum命令是在Fedora和RedHat以及SUSE中基于rpm的软件包管理器,它可以使系统管理人员交互和自动化地更细与管理RPM软件包,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。 yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。 Yum的基本指令: Yum lis... 阅读全文
posted @ 2018-06-10 20:24 猴子特种兵 阅读(282) 评论(0) 推荐(0) 编辑
摘要:xftp软件正常一步步安装即可,没有什么特殊要求。安装完毕需要简单进行配置,如图: 阅读全文
posted @ 2018-06-10 19:30 猴子特种兵 阅读(164) 评论(0) 推荐(0) 编辑
摘要:第一步检查linux shhd服务是否开启,该服务会监听22号端口 Setup 系统服务 [*]sshd 代表已开启 安装Xshell5 傻瓜式安装:下一步 安装成功 点击进行配置 查看linux的ip地址 在XShell点击新建 出现NAT模式下不能和宿主机ping通时 ,还原一下虚拟机网络配置即可 5.点击Xshell5 连接即可 阅读全文
posted @ 2018-06-10 19:16 猴子特种兵 阅读(2496) 评论(0) 推荐(0) 编辑
摘要:1.进入centos 2.点击菜单的VMware Tools 3.centos会出现一个vm的安装包 4.解压得到一个安装文件 VMwareTools-10.0.05-3228253.tar.gz 5.移动到 opt目录中 6.到opt目录中解压文件 tar -zxvf VMwareTools-10.0.05-3228253.tar.gz 7.进入vmware-tools-distrib 文件下... 阅读全文
posted @ 2018-06-10 01:58 猴子特种兵 阅读(707) 评论(0) 推荐(0) 编辑
摘要:一、创建虚拟机(空间) 1.去BIOS里修改设置开启虚拟化设备支持 Intel Virtualization Technology 修改成Enabled,不同的机型显示的稍微有点区别 2.点击创建新的虚拟机 3.自定义创建 点击完成 开始安装CentOS 重启,成功 阅读全文
posted @ 2018-06-10 01:37 猴子特种兵 阅读(165) 评论(0) 推荐(0) 编辑
摘要:1、NAT(网络地址转换模式)(推荐) 使用NAT模式,就是让虚拟系统借助NAT的功能,通过宿主机所在的网络来访问公网。 在这种模式下宿主机成为双网卡主机,同时参与现有的宿主局域网和新建的虚拟局域网,但由于加设了一个虚拟的NAT服务器, 使得虚拟局域网内的虚拟机在对外访问时,使用的则是宿主机的IP地址,这样从外部网络来看,只能看到宿主机,完全看不到新建的虚拟局域网。 优点:虚拟系统中... 阅读全文
posted @ 2018-06-10 01:14 猴子特种兵 阅读(1565) 评论(0) 推荐(0) 编辑
摘要:1.去BIOS里修改设置开启虚拟化设备支持 Intel Virtualization Technology 修改成Enabled,不同的机型显示的稍微有点区别 2.安装虚拟机软件 输入许可证:5A02H-AU243-TZJ49-GTC7K-3C61N 3.点击虚拟机显示此界面表示虚拟机安装成功 阅读全文
posted @ 2018-06-09 23:30 猴子特种兵 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2018-06-08 10:54 猴子特种兵 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2018-06-08 10:53 猴子特种兵 阅读(155) 评论(0) 推荐(0) 编辑
摘要:<bean id="datasource2014" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName"> <value>v60c</value> </property> <property 阅读全文
posted @ 2018-06-04 21:04 猴子特种兵 阅读(1266) 评论(0) 推荐(0) 编辑
摘要:一、什么是注解? Annontation是Java5开始引入的新特征,中文名称叫注解。 它提供了一种安全的类似注释的机制,用来将任何的信息或元数据(metadata)与程序元素(类、方法、成员变量等)进行关联。 为程序的元素(类、方法、成员变量)加上更直观更明了的说明,这些说明信息是与程序的业务逻辑无关,并且供指定的工具或框架使用。 Annontation像一种修饰符一样,应用于包、... 阅读全文
posted @ 2018-06-03 13:36 猴子特种兵 阅读(271) 评论(0) 推荐(0) 编辑
摘要:/** * Created by chengbx on 2018/5/19. * 简单版 */ public class CbxMap { CbxEntry [] cbxEntries = new CbxEntry[999]; int size; public void put(Object key,Object value){ //解决键重复的问题... 阅读全文
posted @ 2018-06-02 22:05 猴子特种兵 阅读(159) 评论(0) 推荐(0) 编辑
摘要:/** * Created by chengbx on 2018/5/18. * LinkedList其实也就是我们在数据结构中的链表,这种数据结构有这样的特性: * 分配内存空间不是必须是连续的; * 插入、删除操作很快,只要修改前后指针就OK了,时间复杂度为O(1); * 访问比较慢,必须得从第一个元素开始遍历,时间复杂度为O(n); */ public class CbxLin... 阅读全文
posted @ 2018-06-02 19:35 猴子特种兵 阅读(216) 评论(0) 推荐(0) 编辑
摘要:/** * Created by chengbx on 2018/5/17. * 自己实现一个ArrayList,帮助我们更好的理解ArrayList的底层结构! * 一句话概括ArrayList的底层:数组的扩容与数据的拷贝! */ public class CbxArrayList { //存储集合中的元素 private Object[] elementData; ... 阅读全文
posted @ 2018-06-02 17:47 猴子特种兵 阅读(185) 评论(0) 推荐(0) 编辑
摘要:1.模块化:模块化特性是Java 9 最大的一个特性,Java 9起初的代号就叫Jigsaw,后来被更改为Modularity,Modularity提供了类似于OSGI框架的功能,模块之间存在相互的依赖关系,可以导出一个公共的API,并且隐藏实现的细节.Java提供该功能的主要的动机在于,减少内存的 阅读全文
posted @ 2018-06-01 19:47 猴子特种兵 阅读(272) 评论(0) 推荐(0) 编辑
摘要:/** * JDK8 Optional * Created by chengbx on 2018/5/28. * Optional 类是一个容器类,代表一个值存在或者不存在,原来用null表示一个值不存在, * 现在Optional可以更好的表达这个概念。并且可以避免空指针异常。 * Optional.of(T t):创建一个 Optional实例 * Optional. empty... 阅读全文
posted @ 2018-06-01 19:18 猴子特种兵 阅读(268) 评论(0) 推荐(0) 编辑
摘要:/** *JDK8 Stream特性 * Created by chengbx on 2018/5/27. * Java 8 中的 Stream 是对集合(Collection)对象功能的增强,它专注于对集合对象进行各种非常便利、高效的聚合操作(aggregate operation), * 或者大批量数据操作 (bulk data operation)。Stream API 借助于同... 阅读全文
posted @ 2018-06-01 19:08 猴子特种兵 阅读(1609) 评论(0) 推荐(2) 编辑
摘要:/** *JDK8 Stream特性 * Created by chengbx on 2018/5/27. * Java 8 中的 Stream 是对集合(Collection)对象功能的增强,它专注于对集合对象进行各种非常便利、 * 高效的聚合操作(aggregate operation),或者大批量数据操作 (bulk data operation)。 * Stream API ... 阅读全文
posted @ 2018-06-01 19:05 猴子特种兵 阅读(1775) 评论(0) 推荐(1) 编辑

点击右上角即可分享
微信分享提示