自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 资源 (2)
  • 收藏
  • 关注

转载 Spring cloud 学习(一)--eureka的server和client

本博客的参考文章:https://www.fangzhipeng.com/springcloud/2017/06/01/sc01-eureka.html一、server端的配置右键工程->创建model-> 选择spring initialir 如下图:点击next,配置好文件名等基本内容,继续下一步,选择Spring cloud Discovery-->serv...

2019-07-05 15:21:17 341

转载 无锁状态,偏向锁状态,轻量级锁状态和重量级锁

锁可以升级但不能降级,意味着偏向锁升级成轻量级锁后不能降级成偏向锁。这种锁升级却不能降级的策略,目的是为了提高获得锁和释放锁的效率偏向锁偏向锁的目的是在某个线程获得锁之后,消除这个线程锁重入(CAS)的开销,看起来让这个线程得到了偏护 偏向锁使用了一种等到竞争出现才释放锁的机制,所以当其他线程尝试竞争偏向锁时,持有偏向锁的线程才会释放锁自旋锁线程的阻塞和唤醒需要CPU从用户态转...

2019-04-17 19:37:11 791

原创 线程池

new Thread的弊端如下:a. 每次new Thread新建对象性能差。b. 线程缺乏统一管理,可能无限制新建线程,相互之间竞争,及可能占用过多系统资源导致死机或oom。c. 缺乏更多功能,如定时执行、定期执行、线程中断。相比new Thread,Java提供的四种线程池的好处在于:a. 重用存在的线程,减少对象创建、消亡的开销,性能佳。b. 可有效控制最大并发线程数,提高系统...

2019-04-17 19:08:25 144

原创 死锁产生的必要条件和避免死锁的方法

死锁产生的必要条件:互斥条件:一个资源只能被一个一个进程使用占有且等待:一个进程因请求资源而被阻塞时,对已经获得的资源保持占有状态;不可强行占有:进程已经获得的资源不会被其他进程抢占;循环等待:若干进程间产生一种循环等待的条件,比如A等待B释放资源,B等待A释放资源。避免死锁的方法:给锁加上顺序确保所有的线程都是按照相同的顺序获得锁,那么死锁就不会发生。这种方式需要...

2019-04-17 17:11:53 281

原创 乐观锁与悲观锁

悲观锁就是一次只能有一个持有锁的线程执行,其他线程只能在入口处等待资源释放。乐观锁就是不加锁的去执行操作,操作完成后会进行冲突检测,如果发生了冲突就重试,直到成功为止。动手实现一个简单的乐观锁(转)。/** * 乐观锁 * * 场景:有一个对象value,需要被两个线程调用,由于是共享数据,存在脏数据的问题 * 悲观锁可以利用synchronized实现,这里不提. ...

2019-04-17 16:34:21 102

原创 hashmap和currentHashmap

hashmap 1.7和1.8 的区别数据结构上:1.7使用数组+链表+头插法1.8使用数组+链表+红黑树+尾插法hash的扰动函数:1.7 5次异或+4次位运算1.8 1次异或+1次位运算扩容机制的实现:1.7扩容两倍;计算原hashmap中的数据在新hashmap中的位置,使用&运算;设置新的阈值;放入最新的值。1.8异常判断;...

2019-04-16 10:47:31 348

转载 数据库的面试知识点

作者:Redfisky链接:https://www.nowcoder.com/discuss/149285来源:牛客网一、共享锁,排他锁InnoDB普通 select 语句默认不加锁(快照读,MYISAM会加锁),而CUD操作默认加排他锁 MySQL InnoDB存储引擎,实现的是基于多版本的并发控制协议——MVCC (Multi-Version Concurrency Contro...

2019-04-13 15:43:25 132

原创 数据库的索引

作者:Redfisky链接:https://www.nowcoder.com/discuss/149285来源:牛客网建立索引表的主键、外键必须有索引; 数据量超过300的表应该有索引; 经常与其他表进行连接的表,在连接字段上应该建立索引; 经常出现在Where子句中的字段,特别是大表的字段,应该建立索引; 索引应该建在选择性高的字段上; 索引应该建在小字段上,对于大的文...

2019-04-12 21:39:41 78

转载 mysql的两种主要引擎

Innodb引擎(该引擎在5.5后的MySQL数据库中为默认存储引擎。)Innodb引擎提供了对数据库ACID事务的支持。并且还提供了行级锁和外键的约束。它的设计的目标就是处理大数据容量的数据库系统。它本身实际上是基于Mysql后台的完整的系统。Mysql运行的时候,Innodb会在内存中建立缓冲池,用于缓冲数据和索引。但是,该引擎是不支持全文搜索的。同时,启动也比较的慢,它是不会保存表的行数...

2019-04-12 21:35:50 133

转载 volatile关键字

转载自:https://www.cnblogs.com/dolphin0520/p/3920373.html 一旦一个共享变量(类的成员变量、类的静态成员变量)被volatile修饰之后,那么就具备了两层语义:  1)保证了不同线程对这个变量进行操作时的可见性,即一个线程修改了某个变量的值,这新值对其他线程来说是立即可见的。  2)禁止进行指令重排序。先看一段代码,假如线程1先执行...

2019-04-12 17:05:16 88

转载 Java线程总结

一、什么是线程线程的定义比较简单,不要把它和进程搞混了就行。进程:每个进程都有独立的代码和数据空间(进程上下文),进程间的切换会有较大的开销,一个进程包含1--n个线程。(进程是资源分配的最小单位)线程:同一类线程共享代码和数据空间,每个线程有独立的运行栈和程序计数器(PC),线程切换开销小。(线程是cpu调度的最小单位)二、实现线程的方式和比较继承Thread类和实现runn...

2019-04-12 16:10:09 82

原创 操作系统——进程与线程

进程的定义程序:就是一个指令序列系统为每个运行的程序配置一个数据结构,称为进程控制块(PCB),用来描述进程的各种信息(如程序代码存放的位置)。进程=PCB+程序(程序段+数据段),PCB是进程存在的唯一标志。创建进程就是创建PCB,撤销进程就是撤销PCB。进程(动态性)是进程实体(静态性)的运行过程,是系统进行资源分配和调度的一个独立单位。PCB:操作系统通过PCB来管...

2019-04-10 21:01:34 4094 18

转载 设计模式

一、设计模式的概念设计模式是一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。二、设计模式的七大原则1、单一职责原则 ( SRP )英文全称是Single Respon...

2019-04-08 21:39:59 171

原创 腾讯面经总结

1.static关键字总结java编程思想中:static方法就是没有this的方法。在static方法内部不能调用非静态方法,反过来是可以的。而且可以在没有创建任何对象的前提下,仅仅通过类本身来调用static方法。这实际上正是static方法的主要用途。static 方法static方法一般称作静态方法,由于静态方法不依赖于任何对象就可以进行访问,因此对于静态方法来说,是没有thi...

2019-03-30 18:05:30 194

转载 常见Java技术总结

1.什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”?Java虚拟机是一个可以执行Java字节码的虚拟机进程。Java源文件被编译成能被Java虚拟机执行的字节码文件。2.“static”关键字是什么意思?Java中是否可以覆盖(override)一个private或者是static的方法?“static”关键字表明一个成员变量或者是成员方法可以在没有所属的类的实例变量的...

2019-03-27 15:15:52 684

转载 tomcat默认路径的配置

进入配置文件[root@VM_0_14_centos tomcat-7]# vim conf/server.xml 配置文件如下: <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <Context path="" d...

2019-03-23 16:07:56 6452

原创 Mysql忘记root密码和远程服务器部署

忘记root密码怎么办?1.修改MySQL的登录设置: vi /etc/my.cnf在[mysqld]的段中加上一句:skip-grant-tables 保存并且退出vi。2.重新启动mysqld# /etc/init.d/mysqld restart ( service mysqld restart )3.登录并修改MySQL的root密码mysql> U...

2019-03-21 19:58:38 155

原创 ubantu系统在线安装jdk

jdk8的安装sudo apt-get install openjdk-8-jdkJDK7的安装Ubuntu16.04的安装源已经默认没有openjdk7了,所以要自己手动添加仓库:sudo add-apt-repository ppa:openjdk-r/ppasudo apt-get updatesudo apt-get install openjdk-7-jdk ...

2019-03-21 19:43:49 125

原创 计算机网络

一、计算机网络的体系结构OSI的体系结构:物理层、数据链路层、网络层、运输层、会话层、表现层、应用层;TCP/IP的体系结构:应用层(各种应用层协议:telnet,ftp,smtp等)、运输层(TCP/UDP)、网际层IP、网络接口层五层协议的体系结构:物理层、数据链路层、网络层、运输层、应用层。下图来自经典教材:计算机网络(谢希仁)物理层:通过媒介传输比特,确定机械及电气...

2019-03-19 15:18:29 174

原创 Java工程师能力评估

1.下面有关JVM内存,说法错误的是?程序计数器是一个比较小的内存区域,用于指示当前线程所执行的字节码执行到了第几行,是线程隔离的虚拟机栈描述的是Java方法执行的内存模型,用于存储局部变量,操作数栈,动态链接,方法出口等信息,是线程隔离的方法区用于存储JVM加载的类信息、常量、静态变量、以及编译器编译后的代码等数据,是线程隔离的原则上讲,所有的对象都在堆区上分配内存,是线...

2019-03-17 15:18:45 1424

原创 数据库的时间Date取到页面中变成了一串数字,解决办法

找到接收后台数据的实体类 @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8") private Date contentDate;在上面加入一条注解即可。此注解既可以加到属性上,也可以加到方法名上。加到方法名上就是对返回的类型的注解。...

2019-03-07 10:16:15 7244 3

转载 selectByExampleWithBLOBs 和selectByExample 的区别

今天使用selectByExample 取数据库中取数据,发现有一个字段始终取不出来,参考文章,通过检查发现该字段是text类型。将调用selectByExample方法改为调用selectByExampleWithBLOBs 方法就能取出数据。 &lt;select id="selectByExample" parameterType="com.pojo.TbItemParamExa...

2019-03-06 16:00:55 1104

转载 使用git更新远程仓库的时候报Updates were rejected because the tip of your current branch is behind错误

 错误原因其实是我本地没有README.md这个文件,而远程仓库中有, 如何解决那? 很简单 git pull --rebase origin master 执行这一句就行了 执行完后会发现本地已经有了 README.md 这个文件然后就是常规操作了 git push -u origin master 之后就可以看到GitHub上已经有了刚上传的新鲜代码啦!原文:htt...

2019-02-23 20:16:03 1933 1

原创 git@github 的使用

git的优势大部分操作在本地完成,不需要联网 完整性保证 尽可能添加数据而不是删除或修改数据 分支操作非常快捷流畅 与linux命令全面兼容本地库和远程库  本地库操作1.本地库初始化命令:git init注意:.git目录存放的是本地库相关的子目录和文件,不要删除,也不要胡乱修改2.设置签名形式用户名:Email:作用:区分不...

2019-02-23 20:15:15 282

原创 ssm框架一些配置文件

db.propertiesjdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://127.0.0.1:3306/ssm?useSSL=false jdbc.user=root jdbc.password=monkey1024log4j.properties log4j.rootLogger=debug,conso...

2018-12-08 21:35:37 205

原创 子域名访问计数 Subdomain Visit Count

一个网站域名,如"discuss.leetcode.com",包含了多个子域名。作为顶级域名,常用的有"com",下一级则有"leetcode.com",最低的一级为"discuss.leetcode.com"。当我们访问域名"discuss.leetcode.com"时,也同时访问了其父域名"leetcode.com"以及顶级域名 "com"。给定一个带访问次数和

2018-10-29 17:41:43 110

原创 写字符串需要的行数 NumberofLinesToWriteString

我们要把给定的字符串 S 从左到右写到每一行上,每一行的最大宽度为100个单位,如果我们在写某个字母的时候会使这行超过了100 个单位,那么我们应该把这个字母写到下一行。我们给定了一个数组 widths ,这个数组 widths[0] 代表 'a' 需要的单位, widths[1] 代表 'b' 需要的单位,..., widths[25] 代表 'z' 需要的单位。现在回答两个问题:至少多少行...

2018-10-29 14:58:57 137

原创 唯一摩尔斯密码词

国际摩尔斯密码定义一种标准编码方式,将每个字母对应于一个由一系列点和短线组成的字符串, 比如: "a" 对应 ".-", "b" 对应 "-...", "c" 对应 "-.-.", 等等。为了方便,所有26个英文字母对应摩尔斯密码表如下:[".-","-...","-.-.","-..","

2018-10-29 14:40:39 223

原创 Plus One

Given a non-empty array of digits representing a non-negative integer, plus one to the integer.The digits are stored such that the most significant digit is at the head of the list, and each element...

2018-10-08 18:56:31 93

原创 Add Binary

Given two binary strings, return their sum (also a binary string).The input strings are both non-empty and contains only characters 1 or 0. class Solution {    public String addBinary(String a,...

2018-10-08 18:27:37 81

原创 Monotonic Array

An array is monotonic if it is either monotone increasing or monotone decreasing.An array A is monotone increasing if for all i &lt;= j, A[i] &lt;= A[j].  An array A is monotone decreasing if for al...

2018-09-21 15:29:52 115

原创 Remove Duplicates from Sorted Array

Given a sorted array nums, remove the duplicates in-place such that each element appear only once and return the new length.Do not allocate extra space for another array, you must do this by modifyi...

2018-09-21 11:25:56 76

原创 Remove Duplicates from Sorted Array II

Given a sorted array nums, remove the duplicates in-place such that duplicates appeared at most twice and return the new length.Do not allocate extra space for another array, you must do this by mod...

2018-09-21 10:55:03 86

原创 Remove Element

Given an array nums and a value val, remove all instances of that value in-place and return the new length.Do not allocate extra space for another array, you must do this by modifying the input arra...

2018-09-20 21:40:22 148

原创 Implement strStr

Return the index of the first occurrence of needle in haystack, or -1 if needle is not part of haystack.Clarification:What should we return when needle is an empty string? This is a great question...

2018-09-20 10:11:14 90

原创 Valid Parentheses

Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if the input string is valid.An input string is valid if:Open brackets must be closed by the same type of b...

2018-09-20 09:42:32 59

原创 Valid Palindrome

Given a string, determine if it is a palindrome, considering only alphanumeric characters and ignoring cases.给定一个字符串,判定它是否是会问字符串,只考虑数字字母字符并且忽略大小写。思路:将字符串中的所有非数字字母字符均去掉,组成新的字符,查看新的字符是否是回文字符 pub...

2018-09-20 09:16:10 73

原创 Single Number 问题(共三个)

Single Number IGiven a non-empty array of integers, every element appears twice except for one. Find that single one.给定一个数组,其中所有的元素均出现两次除了其中的某一个,请找出那个只出现一次的元素。思路:将所有的元素挨个放入列表中,如果该元素在列表中已经存在了,那么就...

2018-09-19 22:01:22 125

原创 859.Buddy Strings

Given two strings A and B of lowercase letters, return true if and only if we can swap two letters in A so that the result equals B给定两个字符串,如果只交换其中两个字符的位置就能使两个字符串相同,则返回true.思路:1. 首先两个字符串的长度必定大于2而...

2018-09-19 19:35:55 89

原创 Regular Expression Matching

Given an input string (s) and a pattern (p), implement regular expression matching with support for '.' and '*'.'.' Matches any single character.'*' Matches zero or more of the preceding element....

2018-09-19 08:56:10 66

《Redis实战》PDF

卡尔森编写的《Redis实战》深入浅出地介绍了Redis的5种数据类型,并通过多个实用示例展示了Redis的用法。除此之外,书中还讲述了Redis的优化方法以及扩展方法,是一本对于学习和使用Redis来说不可多得的参考书籍。 本书一共由三个部分组成。第一部分对Redis进行了介绍,说明了Redis的基本使用方法、它拥有的5种数据结构以及操作这5种数据结构的命令,并讲解了如何使用Redis去构建文章聚合网站、cookie、购物车、网页缓存、数据库行缓存等一系列程序。第二部分对Redis命令进行了详细的介绍,并展示了如何使用Redis去构为复杂的辅助工具和应用程序,并在***后展示了如何使用Redis去构建一个简单的社交网站。第三部分对Redis用户经常会遇到的一些问题进行了介绍,讲解了降低Redis内存占用的方法、扩展Redis性能的方法以及使用Lua语言进行脚本编 本书既涵盖了命令用法等人门主题,也包含了复制、集群、性能扩展等深入主题,所以无论是Redis新手还是有一定经验的Redis使用者,应该都能从本书中获益。本书面向具有基本数据库概念的读者,读者无需预先了解任何NoSQL知识,也不必具备任何。

2019-03-20

JDK API 1.8

1.8版本的JDK API,很好用

2017-08-14

空空如也

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

TA关注的人

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