自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 资源 (1)
  • 收藏
  • 关注

原创 分布式缓存之高并发场景下失效

现在大多数系统架构都引入缓存提高系统的吞吐量,但同时也将面对以下问题:1.缓存穿透2.缓存击穿3.缓存雪崩4.缓存预热5.缓存更新造成缓存穿透原因:某个key并不存在且数据库也查询不到解决办法:最终都要返回缓存查询结果,比如给该key设置个值:unknown key返回给前端造成缓存击穿原因:某个key是热点key,突然失效导致大量请求询问数据库解决办法:...

2019-04-19 14:24:49 251

原创 Java基础之==andequals

==和equals方法是个用的多个方法。1.==的分析对基本数据类型来说,变量的内存地址里存的就是值,所以==在这里比较的值是否相等。对引用类型来说,==比较的是引用变量地址里存的值是被引用对象的内存地址。2.equals比如引用类型中的String,重写了equals比较了值是否相等,也重写了hashcode。 String str1 = new St...

2019-03-20 14:45:25 999

原创 Java基础之访问权限

在java这门语言中,访问权限有默认,public,private ,protected四种。其中前两种可以修饰类。1.默认又叫做包访问,可以修饰类,方法,成员,作用域在同一个包2.public,可以修饰类,方法,成员,作用域是整个程序3.private,可以修饰方法,成员,作用域是其本身,不可被其他类调用4.protected,可以修饰方法,成员,作用是同一个包或者非同包时其子类...

2019-03-20 13:57:13 137

原创 Java基础之集合遍历

集合有两种:一种是fail-safe的,一种是fail-fast的。fail-fast原理:当迭代器遍历一个对象时,若集合的内容已被发生了修改删除等,则抛出异常Concurrent Modification Exception。根据modCount跟迭代器里的exepectedModcount是否相等比较(发生在iterator.hashNext()方法判断时)。fail-safe原理...

2019-03-16 10:45:08 119

原创 Mysql常见异常汇总

第一条:com.mysql.cj.exceptions.InvalidConnectionAttributeException: The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or。。。解决办法: 错误(时区异常),执行sql指令set global time_zone='+8:00';...

2019-03-15 17:05:32 630

原创 Spring之Bean的装配及注入

spring中bean的装配指:将bean资源加入到IOC容器实例化;spring中bean的注入指:将IOC中中的实例注入(这里就先不谈是否被代理了)装配的方式一般分为两种:显示装配跟隐式装配。显示装配:1.Java Config形式(@Configuration及@Bean) 2.基于xml配置的Bean隐式装配(扫面组件+自动装配):...

2019-03-15 15:48:12 206

原创 GOF之单例模式

何为单例模式?通常点说就是一个类只有一个实例,这意味着其构造函数是私有的。这里让我想到了spring ioc管理的bean,默认也是单例的。不过这里的概念跟设计模式里的单例不一样,ioc里的bean被设计成单例在于为了servlet容器初始化spring容器时降低内存开销。spring ioc还有个关注点:被注入的bean可以是原生对象,也可以是被aop增强的代理对象(也就是说在i...

2019-03-15 10:48:11 137

原创 Java算法每日一题之一求两数间偶数的和

题目:求两个数间的偶数和?例子:1-8,则和为2+4+6public static int sum(int a,int b) { int sum=0,c=0; //将a大于b if(a>b) { c=b; b=a; a=c; } c = b-a;//判断相连或相等 if(c==1||c==0) { return sum;...

2019-03-14 17:12:29 994

原创 java基础之引用

接触过c语言的人都明白,c语言中有三种传递方式:分别为值传递、引用传递、地址传递。在java中,有两大数据类型,分别为引用数据类型和基本数据类型,例子如:一。Person s = new Person(), (s是引用变量也可以叫对象变量)二。int a =3;一.代码:变量s指向了Person对象就是说获得了对象的引用,通俗点讲就是s引用了Person对象。 1.对象...

2019-03-13 11:57:07 81

原创 Java之二叉树遍历

二叉树的应用很广,比如红黑树(特殊的二叉树),数据库的B+tree,以及一些压缩算法这里只介绍简单的二叉树:特征:一.一个根节点 二.众多子节点,每个节点最多有两个子节点二叉树遍历方式:总体有两种,分别基于DFS(深度优先搜索)和BFS(广度优先搜索)的,前者包括递归(先序、中序、后序)和Stack(栈),后者是队列实现的层序遍历。####树节点类如下...

2019-03-13 11:29:36 331

原创 java之GC垃圾回收一

概要:jvm运行时数据区如下图(JVM内存区域) 一。垃圾回收主要发生在堆,极少量发生在方法区(回收静态变量、常量池等)。因此GC可以说成是堆的回收 GC回收啥样的对象?=什么对象被认为是不在存活状态 这里得谈谈对象的几种引用: 对象引用被设计的原因: 1.能够主动的去决定对象的生命周期 2.利于JVM垃圾回收 ...

2019-03-13 11:27:55 95

原创 java之GC垃圾回收二

接下来分析JVM堆结构基本JVM参数,常用的:-xms 初始堆内存大小-xmx 堆内存最大值,建议物理内存的1/4-XX:MaxTenuringThreshold 晋升到老年代的年龄-XX:PretenureSizeThreshold 对象超过多大直接进入老年代-XX:SurvivorRatio Eden与Survivor区的比列-XX:NewRatio...

2019-03-13 11:25:55 83

原创 Java基础之抽象类与接口

接口:方法由public stract修饰,无法实例,可以被接口继承,(普通)实现类必须实现所有接口,而抽象类实现接口时可不实现任何方法,若抽象类的子类不是抽象的则必须实现抽象类未实现的剩下的接口方法,若子类是抽象的,则该行为就传递到子类的子类;存在问题:基于多态,实现类过多,若某些实现类有自己特色需要扩展则只能在自己内部增加行为或者统一修改接口导致所有实现类都增加了行为(对部分实现类来说只是...

2019-02-20 19:32:40 117

原创 多线程之synchronized研究

并发中三个要素:内存可见性,原子性,有序性。synchronized是java里的一个重要关键字,作为线程间同步,基于jmm的内存可见性,同时也具备原子性,顺序性。它用于修饰实例方法、静态方法、以及作为代码块,分别持有对应的对象锁、类锁、私有锁。底层实现原理:1.执行sychronized方法时,常量池里出现acc_synchronized标志,通过这个是否存在执行线程获取monito...

2019-02-18 23:12:33 110

原创 Windows下安装Kafka集群(单机伪集群)

以下内容很很多博客都写了,但是。。。。网上内容很多都经不了经验(有的博客根据流程竟然跑不通。。。。),本人亲测必须给力!!!若不行,请直接联系我,我教到你OK。一.先安装zookeeper集群,这里模拟两个1.从zookeeper官网下载合适的版本,点击左边这个快捷传送门<--------;2.解压,整个路径下不能有中文3.将/conf目录下的zoo.sample.cfg...

2019-01-18 14:49:28 1660 2

原创 Mybatis源码分析

在常见开发中,orm框架是占有很重要地位的,尤其mybatis,hibernate。主要探究mybatis。mybatis使用一般分为多种,主要说mybatis以及mybatis-spring这两种模式。mybatis的核心是sqlsession,sqlsession接口主要定义的是数据库查询语句,由SqlsessionFactory这个接口的实现类创建。一.基于spring的(不论x...

2019-01-15 04:22:26 89

原创 Java入门到坚持_常用类库

正文:想必jdk应该都知道的哦,而我们常用的类库都在jre/lib目录下。根据不同的用途分别归类。1.java.lang包,常见的基础类不需要import,常见的有:Object类,String类,Class类,基本类型类及其包装类,基本的数学类等。图如下2.java.awt包,包含用于创建用户界面和绘制图形图像的所有分类,基于本地方法的C/C++程序.3.java.swing...

2019-01-08 01:34:55 102

原创 Git基础常见操作及命令

正文: 获取一个远程仓库地址,这里以gitee为栗子目录一.增加文件二.本地删除文件,远程更新三.本地恢复四.撤销本地所有更改五. 从远程仓库拉取,本地已修改不被覆盖一.增加文件1.git init,在本地初始化一个本地仓库2.git remote add xxx [email protected]:xxx/xxx.git,本地连接远程仓库3.git pull...

2019-01-07 22:27:06 91

原创 Git基础之配置ssh环境

正文: 先安装好git简单攻略:1.配置用户打开git bash命令行,输入git config --global user.name "xxx"(配置账户)输入 git config --global user.email "xxx"(配置邮箱)2.生成公钥输入 ssh-keygen -t rsa -C "邮箱" 生成id_rsa和id_rsa.pub文件。3.将...

2019-01-07 04:21:14 176

原创 版本控制工具的历史

正文:掌握Git之前有必要熟悉以往版本控制的迭代。***版本控制目的***: 记录文件的历史版本更新记录。一.本地版本控制系统(vcs)代表性的有rcs,工作原理就是保存并管理文件补丁(patch)。这种补丁其实就是特定格式的文本文件,记录文件版本前后的内容变化。常见游戏通过补丁来更新内容。二.集中化版本控制系统 (cvcs)设计目的:用来不同系统间多人协同办公合作...

2019-01-07 03:19:03 212

原创 算法之权重随机

何为权重随机?        在随机的基础上增加控制抽中几率。        平时经常用到权重随机场景,比如广告投放,负载均衡,题目抽取,赌博机等栗子:比如有24个字母A-Z,从其中取一个,默认权重都为1,则每个抽到的概率一样,此为公平的随机。为何需要权重:   性能瓶颈(一般指负载均衡,相当于纵向扩展)    业务运维(比如广告位售价或者播放的黄金时间,这些就涉及运营了...

2019-01-07 00:49:20 1195

原创 Mysql基础篇(2)_区分大小写

正文:众所周知,windows下mysql默认不区分大小写的,而linux相反。所以将sql导入linux可能报错。字符串区分大小写的问题:     先建表CREATE TABLE NAME(name VARCHAR(10));1.select * from name where name ='ss'跟select * from name where name ='sS';这两个在...

2019-01-06 18:41:49 152 2

原创 Mysql之SQLException_基础篇

正文: 从零开始搭建mysql异常宝库。 1.java.sql.SQLException: Can't call commit when autocommit=true  commit()或者rollback()执行导致的,只要关闭mysql的自动提交就可以。 一般业务稍微复杂的就涉及多个sql执行,如果自动提交那么每个sql语句都作为单独的事务提交,会导致事务问题。这其实也是S...

2019-01-06 04:33:28 1295

原创 Mysql基础篇(1)_版本的查看方法及常见命令

正文:从零开始写好关于mysql的好文,拒绝烂尾,水平有限,大神勿喷。。。。我只是个孩子查看版本 探究mysql常见命令 查看版本方法:   1.终端cmd下执行mysql -V或者mysql -Version或者mysql --help   2.mysql:输入status;或者select version();或者 select @@version;         ...

2019-01-06 04:07:29 129

原创 SpringBoot系列之profiles专题

正文:springboot在不同环境下读取不同配置文件的一种方式,一般环境就是本地开发dev,测试test,以及生产环境prod。简述:springboot默认读取application.yml或者application.properties。为了区别不同环境所以提供了profiles机制。若此时是在开发环境,只要有个配置文件如application_dev.yml,则在applica...

2019-01-06 03:21:21 231

原创 Mysql之基本sql语句注意点

mysql默认不支持full join,比较left join , right join , inner join的区别!!!1.inner join(内连接)两表关联,保留两表中交集的记录。2.full join(全连接)两表关联,查询它们的所有记录,相当于并集。 3.left join(左连接)两表关联,保留左表的全部跟右表与之相交的部分,右表关联不上的...

2019-01-04 16:13:31 232

原创 Mysql之索引失效研究

!!!作者必须声明,做一个实践党而不是在互联网传播经不起考验的博客内容,尤其转载等内容。关于索引失效,最近做了些微薄研究,希望自己浅陋的知识能给别人带来参考。。。。。我爱开源贴上数据记录(索引列为name,dept)                      两个索引列区别:name列值不重复,dept列值重复。以后通过explain select...语句来描述失效原因...

2019-01-03 16:26:23 128

原创 Spring源码分析之BeanFactory实现的简单IOC容器(1)

每天都学习一点,那么还是永远学不完的,贵在坚持!

2018-12-26 01:28:15 83

原创 Windows常见命令—每日一增

1)jps ,jdk1.5以后提供的显示当前所有运行的java进程的pid的命令;2)taskkill  /pid  xxx /f , 强制杀死xxx进程; 

2018-12-26 01:27:44 68

原创 Java基础要点,集合家族图谱

 

2018-12-24 14:16:04 492

原创 mysql优化—你必须掌握的(1)

帮你理解并且明白mysql常见优化的思路方案!!!常见优化思路如下:    一,表结构设计合理(主要看是否满足三范式,当然更要结合业务)   三范式:1)保持列的原子性,不可分割            这里举个小栗子:   用户表有个address字段,然后address="中国上海".......额,很明显可分为country和city两个,所以差评。爱动脑的可爱可能要问了,...

2018-12-24 13:55:04 115

原创 java基础—线程(1)

 一.线程的五个状态状态图如下 1)新建状态       新建了一个线程对象。 2)就绪状态       其他线程 调用了该线程对象的start()方法后(此时已获得对象锁)即进入临界区,等待cpu切换线程状态(即获取cpu时间片)然后进入运行状态。 3) 运行状态       获取了时间片,开始执行程序代码。(对cpu内核,进程,线程等不了解的可以翻看我的其他...

2018-12-24 01:47:52 408

原创 windows下sublime text安装go环境

一、安装 1.安装go  go安装包地址:http://pan.baidu.com/s/1hq1mrDM(进入下图中箭头所示目录中下载对应版本)* 注意go的安装路径不能包含中文   -------------------------------------------------------------------

2017-10-30 17:15:40 553

原创 springmvc的搭建

1.建立一个web工程注意点(eclipse建立的web工程的输出路径在lib下,classes目录在lib下,而默认的配置输出路径应在web-inf的classes下,所以通过项目右键 -》properties -》Java Build Path -》source -》Default output folder,最终更改路径为: 工程名/WebContent/WEB-INF/classes

2017-07-04 23:03:48 152

原创 两个页面传值时提取url后面的参数

/** * 扩展对象获取URL参数 */(function($) {    $.getUrlParam = function(name) {        var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");        var r = window.location.search.substr(1).match(

2017-06-30 11:44:33 642

安卓游戏开发实践指南

PDF文档使用具体例子说明游戏开发的一些注意点,符合入门学习

2016-02-24

空空如也

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

TA关注的人

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