自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 收藏
  • 关注

原创 Java基础(笔记)

根据链接 Java 工程师成神之路!的目录复习Java基础,并记录下一些笔记供以后翻阅。 Part1Java值传递 无论是值传递还是引用传递,其实都是一种求值策略(Evaluation strategy)。在求值策略中,还有一种叫做按共享传递(call by sharing)。其实Java中的参数传递严格意义上说应该是按共享传递。Java值传递 ...

2019-02-26 15:49:52 185

原创 JDK8函数式编程初探-笔记

Lambda 表达式都可以扩写为原始的“匿名类”形。Stream求职过程和建造者模式有共通之处。 List<Integer> together = Stream.of(asList(1, 2), asList(3, 4)) .flatMap(numbers -> numbers.stream()) ...

2018-11-26 16:22:32 266

原创 linux学习(一)

调研发现win10有自带的linux子系统和虚拟机(叫做Hyper-V),但是自己电脑上无法安装,所以安装了VMware和CentOS7,如果用的是win10系统可以用自带的就可以不用安虚拟机了,直接在本地配置一下,重启即可。 基本的bash shell命令常用命令cd ../../.. pwd --当前路径 cd --从任何地方跳回主目录 ls --显示文件和目录 按两次...

2018-11-01 14:46:02 123

原创 MongoDB学习

参考书籍:《MongDB实战 架构、开发与管理》参考链接:MongoDB教程 概念MongoDB是非关系数据库,以一个键对应一个文档的存储形式存储数据,其中文档以二进制的JSON形式表示。与关系是数据库相比,它没有主键、外键等概念,它的主键可以理解为它的标识符(_id)。数据模型JSON/BSON 标识符(_id) 固定集合:集合大小固定,满之后先进先出下载安装(...

2018-10-29 18:03:12 123

原创 Jenkins初探

Jenkins重启/关闭http://localhost:8080/jenkins/exit − 关闭jenkinshttp://localhost:8080/jenkins/restart − 重启jenkinshttp://localhost:8080/jenkins/reload − 重新加载配置上线过程可分为四个小流程构建(build)、测试、部署、发布。构建和部署...

2018-10-24 15:03:33 148

原创 JUnit和TestNG对比

参考链接: JUnit 4 Vs TestNG比较   追求代码质量-JUnit4与TestNG的对比 相同点都是java测试工具,都是基于注释的且大部分注释相似,它们都可以进行单元测试。 JUnit和TestNG的不同点注释对比在JUnit 中,我们必须声明“@BeforeClass”和“@AfterClass”方法作为静态方法,TestNG没有这个约束。Te...

2018-10-23 19:02:43 2824

原创 JUnit学习

基础stub、mock、EasyMock和JMock、容器内测试maven2中运行测试命令:mvn clean test使用maven生成HTML格式的JUnit报告环境:idea、jdk8 、maven项目、web项目命令:项目pom.xml目录下执行 mvn surefire-report:report前提:该项目pom.xml中需要引入用来生成HTML测试报告...

2018-10-23 16:00:25 148

原创 Maven学习

参考链接:maven教程   书籍《Maven实战》 maven是什么maven是一个项目管理工具,基于pom.xml的配置,通过一小段描述信息来管理项目的构建、报告和文档等的一个软件项目管理工具。maven可以管理项目的整个周期,包括清除、编译、测试、报告、打包、部署等。maven生命周期clean 清理项目,包含(前)pre-clean、(中)clean、(后)post-c...

2018-10-22 16:28:20 123

原创 Cobertura初体验

下载安装官网下载,将下载到的 cobertura-2.1.1-bin.tar.gz 包解压到你要安装的目录;配置环境变量 COBERTURA_HOME 和 path 都为你的安装目录。生成报告进入测试代码 junitbook2\ch05-cobertura 目录下,分别执行以下cmd命令javac -cp junit-4.6.jar -d uninstrumented src\*...

2018-10-15 11:00:07 319

原创 IDEA搭建MyBatis环境Demo

参考链接:Idea搭建mybatis环境demo1.项目目录1.1 搭建前的项目目录1.2 搭建后的项目目录2.项目代码2.1 pom.xml添加如下两段 <dependencies> <dependency> <groupId>org.mybatis</groupId> <...

2018-09-04 17:11:59 1299

原创 创邻科技笔试题

题目1小明的女朋友最喜欢在网上买买买了,可是钱包里钞票有限,不能想买啥就买啥。面对琳琅满目的物品,她想买尽可能多的种类,每种只买一件,同时总价格还不能超过预算上限。于是她请小明写程序帮她找出应该买哪些物品,并算出这些物品的总价格。输入规范:每个输入包含两行。第一行是预算上限。第二行是用空格分隔的一组数字,代表每种物品的价格。所有数字都为正整数并且不会超过10000。输出规范:对每个输...

2018-08-23 12:05:43 4912 4

原创 红黑树笔记

参考URL:红黑树原理和算法介绍容易懂的红黑树据结构之红黑树插入与删除全程演示1. 红黑树特性2. 删除节点时,和后继结点互换的时候只换值不会互换颜色3. 插入和删除都是为了符合红黑树的五条性质4. 先保证子节点的红黑树性质,再保证父节点的红黑树性质5. 处理红黑树核心思想:把红色节点移到根节点,然后将根节点设为黑色 ...

2018-08-05 15:31:31 99

原创 Java虚拟机干货

参考URL:Java虚拟机干货(一)  Java虚拟机干货(二)Java虚拟机干货(四)Java虚拟机干货(五)​​​​​​​​​​​​​​Java虚拟机干货(六)​​​​​​​​​​​​​​​​​​​​​Java虚拟机干货(八)一、字节码生成1. 总体流程源文件—(javac编译)—>class文件—(类加载器)—>内存2. 当class文...

2018-08-03 15:27:21 205

原创 嵌套管程锁死和Slipped Condition

参考URL:Java并发性和多线程介绍 1.嵌套管程锁死,类似于死锁。死锁是两个线程相互锁死,嵌套死锁是一个线程释放了内部的锁而没有释放该类对象的锁,即锁有嵌套。2.Slipped Condition,当一个线程执行到某个条件的 时候,这个条件被其他线程改变了,。导致第一个线程在该条件下执行了错误的操作。...

2018-07-23 11:28:56 113

原创 饥饿和公平

参考URL:Java并发性和多线程介绍 1.饥饿,一直得不到cpu的时间。原因:线程的优先级、一直等待进入同步块、一直得不到唤醒。2.提高公平性,用锁代替同步块同步代码块不能保证线程是按次序执行的,公平是要每个线程都能执行,防止饥饿public class Synchronizer{ Lock lock = new Lock(); public void do...

2018-07-22 17:55:02 129

原创 避免死锁

参考URL:Java并发性和多线程介绍 1.按照顺序加锁,但是你必须事先知道可能会用到的锁和锁之间的顺序,有时候这个关系是难以预测的。2.给获取锁加超时时间,当没有获取到全部的锁,先释放获取到的一部分锁。加锁超时后可以先继续运行干点其它事情,再回头来重复之前加锁的逻辑。超时和重试机制是为了避免在同一时间出现的竞争,但当线程过多,同一时间也有可能会出现问题。3.死锁检测:当请求锁失败...

2018-07-22 16:28:02 99

原创 死锁

参考URL:Java并发性和多线程介绍 1.死锁:一个线程调用方法A锁住了对象1,另一个线程调用方法B锁住了对象2,方法A要使用对象2,而方法B又要使用对象1,那么它们相互等待锁,死锁发生。注意,两个线程需要同时调用才会死锁。例如,两个线程同时调用parent.addChild(child)和child.setParent(parent)方法,并且是同一个parent对象和同一个c...

2018-07-22 16:06:22 91

原创 Java ThreadLocal

参考URL:Java并发性和多线程介绍 1.初始化初始化ThreadLocal对所有线程可见,set()方法设置的值只对当前线程可见。private ThreadLocal myThreadLocal = new ThreadLocal<String>() { // 新建时覆写它的initialValue()方法,实现线程变量初始化,对所有线程都可见 @O...

2018-07-22 15:46:14 99

原创 线程通信

参考URL:Java并发性和多线程介绍 1.线程间通信,例如线程A通知线程B已经准备好了数据2.通过共享对象通信,设置boolean值3.忙等待,类似于偏向锁,等待然后自旋直到前一个线程执行结束4.wait(),notify()和notifyAll()以下是一个线程等待和唤醒的例子,doWait()等待,doNotify()唤醒。public class Monito...

2018-07-22 15:08:02 78

原创 Java同步块

参考URL:Java并发性和多线程介绍 1.有四种不同的同步块:实例方法、静态方法、实例方法中的同步块、静态方法中的同步块2.实例方法和静态方法同步语句的监视器对象不同。// 实例方法synchronized(this){ // 监视器this为实例对象}// 静态方法synchronized(MyClass.class){ // 监视器MyClass....

2018-07-20 16:29:35 157

原创 Java内存模型

参考URL:Java并发性和多线程介绍 1.堆栈存放:(1)一个本地变量可能是原始类型,在这种情况下,它总是“呆在”线程栈上;(2)一个本地变量也可能是指向一个对象的一个引用。在这种情况下,引用(这个本地变量)存放在线程栈上,但是对象本身存放在堆上。(3)一个对象的成员变量可能随着这个对象自身存放在堆上。不管这个成员变量是原始类型还是引用类型。(4)静态成员变量跟随着类定义...

2018-07-20 15:44:11 84

原创 线程安全及不可变性

参考URL:Java并发性和多线程介绍 1.创建不可变的共享对象保证对象在线程间共享时不会被修改public class ImmutableValue {// 创建一个没有set方法的不可变的共享对象,即ImmutableValue类 private int value = 0; public ImmutableValue(int value) {// 使用构造函数初始化va...

2018-07-20 10:32:34 121

原创 线程安全与共享资源

参考URL:Java并发性和多线程介绍 1.线程控制逃逸规则:如果一个资源的创建、使用、销毁都是在同一个线程里面完成,并且不会逃离该线程的控制,那么它就是线程安全的。2.基本类型的局部变量是线程安全的。3.局部的对象引用:该对象不会逃离该线程(该方法)的控制,即对象在该方法以外不会被引用也不会被操作,例如不会被其他方法获得,不会被非局部变量引用。4.对象成员:两个线程使用同一个...

2018-07-20 10:05:55 103

原创 竞态条件与临界区

参考URL:Java并发性和多线程介绍目录 1.竞态条件:两个或多个线程竞争同一个资源,并且对执行的先后顺序敏感的时候,就存在竞态条件。2.临界区:产生竞态条件的代码区就是临界区。3.在临界区使用同步可以避免竞态条件。...

2018-07-20 09:27:06 210

原创 创建并运行Java线程

参考URL:Java并发性和多线程介绍目录 1.Java线程类也是一个Object类,编写线程运行时执行的代码有两种方式:(1)新建一个继承了Thread父类的线程类,如MyThread extends Thread,重写MyThread的run方法,调用start方法执行该线程。(2)新建一个实现了Runabble接口的实例类,如MyRunnable implements Run...

2018-07-19 17:22:17 318

原创 并发编程模型

参考URL:Java并发性和多线程介绍目录 1.并发模型类似于分布式系统架构,通常可以互相借鉴思想。例如,为工作者们(线程)分配作业的模型一般与分布式系统中的负载均衡系统比较类似。2.三个并发模型:(1)并行工作者:线程间共享数据比较困难,每个线程都是无状态的,每次获取共享数据都需要重新读入数据;任务的顺序是不确定的。(2)流水线模型:每个线程是有状态的。其中的Chan...

2018-07-19 16:25:48 123

原创 PHP学习笔记(一)

参考文档: 点击打开链接1、数据类型、常量、字符串、运算符:String、Integer、Float、Boolean、Array、Object、Nullecho "这是一个", "字符串,", "使用了", "多个", "参数。";    //多参数定义字串:echo <<<EOF ....... EOF;    //结束需要独立一行且前后不能空格整型可表示十进制,

2018-06-14 16:05:01 97

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除