自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 CAS理解

一、概念CAS:Compare and Swap,即比较再交换。CAS是乐观锁的一种实现方式。 对CAS的理解,CAS是一种无锁算法,CAS有3个操作数,内存值V,旧的预期值A,要修改的新值B。当且仅当预期值A和内存值V相同时,将内存值V修改为B,否则什么都不做。CAS是CPU指令级的操作,只有一步原子操作二、应用场景乐观锁的适用场景于就是读多写少的场景。若发生大量的线程...

2019-12-13 10:44:11 262

原创 Linux环境下MongoDB 安装

一、下载并解压压缩包https://www.mongodb.com/download-center?jmp=nav#community 下载最新的压缩包mongodb-linux-x86_64-4.0.12.tgztar -zxvfmongodb-linux-x86_64-4.0.1.tgz解压后子文件放入 /usr/local/mongodb二、配置系统环境变量:vim /e...

2019-12-05 17:15:16 192

转载 缓存穿透,缓存击穿,缓存雪崩解决方案分析

https://www.jianshu.com/p/1fe968a45072前言设计一个缓存系统,不得不要考虑的问题就是:缓存穿透、缓存击穿与失效时的雪崩效应。缓存穿透缓存穿透是指查询一个一定不存在的数据,由于缓存是不命中时被动写的,并且出于容错考虑,如果从存储层查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义。在流量大时,可能DB就挂掉...

2019-12-05 17:11:06 156

转载 Redis分布式锁的正确实现方式

https://blog.csdn.net/yb223731/article/details/90349502首先,set()加入了NX参数,可以保证如果已有key存在,则函数不会调用成功,也就是只有一个客户端能持有锁,满足互斥性。其次,由于我们对锁设置了过期时间,即使锁的持有者后续发生崩溃而没有解锁,锁也会因为到了过期时间而自动解锁(即key被删除),不会发生死锁。最后,因为我们将value...

2019-12-04 16:12:26 175

原创 MongoDb在LInux环境下配置Replica Sets复制集

mongodb中文社区:http://www.mongoing.com/docs/tutorial/add-replica-set-arbiter.htmlMongoDB支持多个机器中通过异步复制达到故障转移和实现冗余。多机器中同一时刻只 有一台是用于写操作。正是由于这个情况,为 MongoDB 提供了数据一致性的保障。担当 Primary 角色(负责写入)的机器能把读操作分发给 slave。...

2019-11-16 10:46:34 251

原创 马士兵高并发(二)笔记

https://www.jianshu.com/p/bb5105303d85 CountDownLatch、Semaphore和CyclicBarrier。一、ReentraLock手动锁,重入锁 ReentranLock,可替代synchronize,更灵活1、必须要手动释放锁,经常在finally中进行锁释放。2、可以尝试锁定tryLock,或者指定时间内无法锁定,线程可以决...

2019-09-19 17:30:34 427

原创 Linux环境下MongoDB 安装以及配置

一、下载并解压压缩包https://www.mongodb.com/download-center?jmp=nav#community 下载最新的压缩包mongodb-linux-x86_64-4.0.12.tgztar -zxvfmongodb-linux-x86_64-4.0.1.tgzmv /usr/local/mongodb/bin二、配置系统环境变量:vim/etc...

2019-09-19 17:27:05 328

原创 自定义header字段跨域报错问题

项目后台用header的token字段接收token数据String token = request.getHeader("token");前端ajax请求报错:from origin 'http://192.168.1.100:8020' has been blocked by CORS policy: Response to preflight request doesn't pass a...

2019-04-26 10:07:49 4506

原创 【策略模式】如何结合spring实现一个接口多个实现,如何解决接口选择问题

 1、首先把映射关系放在spring-mvc.xml配置文件<bean id="dispatcher" class="com.ms.kai.bms.dispatcher.AbstractDispatcherImpl"> <property name="serviceMap"> <map> <entry key=&quo

2018-09-13 15:11:23 3187

转载 冒泡排序性能优化详解

一、双重循环  第一层for循环 控制排序的轮数回合的趟数,第二层相邻元素两两比较,交换元素,ints.length-i-1为无序数列的边界,随着趟数的变大,是不断缩小的import java.util.Arrays;public class BubbleSort_1 { //冒泡排序 public static void sort(int[] ints){ ...

2018-08-24 16:10:20 292

原创 Linux 常用的日志查看命令

1、查看实时日志:tail -f nohup.log  (-f滚动输出)2、查看最后N行日志: tail -11111f nohup.log | grep '告警信息' (或者 tail -n 500 nohup.log)3、查询日志中含有某个关键字的信息,显示出行号:(-C 5 表示显示前后五行,其他-B 5表示显示前5行,-A 5表示显示后五行)      cat -n kai-ac...

2018-08-08 16:46:54 2581

转载 马士兵高并发(一)笔记

一、1.synchronized关键字锁定的是对象不是代码块,demo中锁的是object对象的实例(堆内存中)2.锁定的对象有两种情况:①类的实例 ②类的字节码(.class)3.关于线程安全:加synchronized关键字之后不一定能实现线程安全,具体还要看锁定的对象是否唯一。二、1.synchronized(this)锁定的是当前类的实例,demo中锁定的是Demo02类的实例...

2018-07-25 15:05:15 4240

原创 并发容器

一、有N张火车票,多线程售票1、放arraylist ,销售一张remove()一次 出现 重卖,超卖2、放Vector ,调用remove ,问题依旧,因为虽然集合vector的判断和remove为原子性但是放一起执行 中间的调用代码无法保持原子性,3、加入sycnize,锁住当前对象,问题解决,但效率低4、使用队列 static Queue<String> ticket...

2018-07-25 10:38:14 174 1

转载 高级java面试题合集

1、常用设计模式单例模式:懒汉式、饿汉式、双重校验锁、静态加载,内部类加载、枚举类加载。保证一个类仅有一个实例,并提供一个访问它的全局访问点。代理模式:动态代理和静态代理,什么时候使用动态代理。适配器模式:将一个类的接口转换成客户希望的另外一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。装饰者模式:动态给类加功能。观察者模式:有时被称作发布/订阅模式,观察者模式定义了...

2018-06-26 08:01:15 1500

转载 dubbo笔记

http://www.cnblogs.com/umgsai/p/5836925.html一、什么是dubbo?dubbo是一个分布式服务框架,用于提高性能和透明化的rpc远程服务调用方案,以及soa服务治理方案。核心:1、远程通讯:提供对多种基于长连接的NIO框架抽象封装,包括多种线程模型,序列化,以及“请求”只要简单配置,就能像调用本地方法一样调用远程方法。2、集群容错:失败容错,软负载均衡3、...

2018-06-21 10:55:45 145

原创 springboot配置

1、@SpringBootApplication 包含哪些主要注解?① @Configuration :可以和@Bean一起创建一个简单的spring配置类(java),用来代替相应的xml配置文件@Configuration  public class Conf {   @Bean   public Car car() {        Car car = new Car();        c...

2018-06-21 10:54:25 138

转载 IDEA的常用操作(快捷键)

IDEA的常用操作(快捷键)1.Ctrl+z是撤销快捷键2.如果想恢复Ctrl+z 掉的内容,按快捷键为:Ctrl + Shift + Z。Alt+回车 导入包,自动修正 Ctrl+N 查找类 Ctrl+Shift+N 查找文件 Ctrl+Alt+L 格式化代码 Ctrl+Alt+O 优化导入的类和包 Alt+Insert 生成代码(如get,set方法,构造函数等) Ctrl+E或者Alt+Sh...

2018-05-31 10:01:06 1624 1

原创 springboot整合Apache Shiro

Apache Shiro Features 特性Authentication(认证), Authorization(授权), Session Management(会话管理), Cryptography(加密)被 Shiro 框架的开发团队称之为应用安全的四大基石。那么就让我们来看看它们吧:Authentication(认证):用户身份识别,通常被称为用户“登录”Authorization(授权)...

2018-05-18 16:15:00 194

原创 form表单验证

/*  * 输入框验证 *  * 注: *    1、必填验证需要在必填处加入 class="required" *  2、长度最大值需要在input加入自定义属性maxlen,例如maxlen="3"*/function validatorForm(){ //必填验证 var validatorList  = $(".required"); for(var i = 0; i < val...

2018-05-08 15:56:11 1247

原创 win7安装VUE2

一、安装node.jsnode.js是一个平台,封装了chorme v8的引擎,可以直接用js作为服务器端脚本语言。http://nodejs.cn/进去该网站下载最新版本安装完成后,wind+r  弹出cmd,输入node -v 和 npm -v  分别查看版本号,代表node.js安装完成。 二、node.js的环境变量的新建。    其实安装完node,就自动在path里增加环境变量,但是为...

2018-04-12 09:52:51 969 1

原创 JVM调优

通过配置JVM的参数来提高垃圾回收的速度对JVM内存的系统级的调优主要的目的是:减少GC的频率和Full GC的次数,过多的GC和Full GC是会占用很多的系统资源(主要是CPU),影响系统的吞吐量。特别要关注Full GC,因为它会对整个堆进行整理,导致Full GC一般JVM分为年轻代、年老代、以及持久代。年轻代:分为年轻代一般分3个区,1个Eden(伊甸园)区,2个Survivor(幸存者...

2018-03-29 16:38:58 101

转载 线程池的简单理解及使用

线程池的技术背景1、线程的创建和销毁很耗资源,重用线程池中的线程。减少因对象创建销毁所带来的性能开销2、有效控制线程的最大并发数,提高系统资源利用率,同时避免过多的资源竞争,避免堵塞; 线程池框架ExecutorExecutor : 所有线程池的接口。 ExecutorService:增加Executor的行为(执行execute,关闭shutdown),是Executor实现类的最直接接口。Ex...

2018-03-29 15:01:25 205

转载 springboot整合redis

一般版本https://www.cnblogs.com/gyjx2016/p/5893192.html详细版本https://blog.csdn.net/abombhz/article/details/78123253?locationNum=6&fps=1一、在pom文件中引入即可pom.xml<dependency> <groupId>org.spri...

2018-03-27 17:56:26 1885

转载 springboot中整合thymeleaf模板

http://www.cnblogs.com/moonlightL/p/7891806.htmlhttp://www.ityouknow.com/springboot/2016/02/03/springboot(%E4%BA%8C)-web%E7%BB%BC%E5%90%88%E5%BC%80%E5%8F%91.html一、什么是 Thymeleaf?Thymeleaf是一款用于渲染XML/XHT...

2018-03-25 22:53:41 163

转载 springboot(1)入门

https://www.cnblogs.com/moonlightL/p/7891803.htmlhttp://www.ityouknow.com/springboot/2016/01/06/springboot(%E4%B8%80)-%E5%85%A5%E9%97%A8%E7%AF%87.html一、什么是springboot?Springboot设计的目的是简化spring应用初始搭建以及开发...

2018-03-24 17:59:32 171

转载 集合框架总结

Collection       接口的接口     对象的集合 ├ List           子接口         按进入先后有序保存   可重复 │├ LinkedList    接口实现类     链表     插入删除   没有同步   线程不安全 │├ ArrayList     接口实现类     数组     随机访问   没有同步   线程不安全 │└ Vector     ...

2018-03-15 11:31:10 150

转载 java IO流总结梳理

http://blog.csdn.net/yuebinghaoyuan/article/details/73880591、什么是流? 流是对数据传输的总称或抽象。即数据在两设备间的传输称为流。本质就是数据传输2、io流的分类根据数据流的方向:输入流和输出流根据处理数据单位:字节流和字符流根据实现功能不同:节点流和处理流输入流和输出流输入和输出都是从程序的角度来说的字节流和字符流字节流:一次读入或者...

2018-03-08 16:36:18 527

转载 浅谈架构-从传统走向分布式

http://www.cnblogs.com/Survivalist/p/8012266.html架构拆分的演变: 一、传统项目的架构 all in one(所有模块在一起,技术也不分层),  注:像05年06年那会儿,就是这样,把代码写在jsp里面,那时候还没有分层的概念,把所有的东西都写在一起,这就叫做all in one 二、分层开发(mvc架构,服务器的分离部署)三、集群的配置(一般it公...

2018-03-06 15:30:34 211

转载 在Eclipse中使用JUnit4进行单元测试(spring中调用DAO)

参考 :http://blog.csdn.net/andycpp/article/details/1327147/ http://blog.csdn.net/zhangzikui/article/details/11071881jar包下载 http://www.jb51.net/codes/539546.htmlpackage com.zte.quartz;import jav

2018-03-01 08:50:06 1845 1

原创 js获得Controller的值

1、js端代码 var avlNo1 = ''; 放入session2、Controller代码 request.getSession().setAttribute("uuid", uuid1);

2018-03-01 08:46:32 6343

转载 eclipse删除svn登录记录

删除 C:\Users\Administrator\AppData\Roaming\Subversion\auth 下文件夹另外,客户端删除svn用户为:右键tortoiseSVN --> settings -->Saved Data --> authentication data -->Clear

2018-03-01 08:45:54 1339 1

原创 js隐藏显示div

function dismore(hidstr) { var hid=document.getElementById(hidstr); if(hid.style.display=='none'){ $("#"+hidstr).show(); document.getElementById("str1text"+hidstr).innerHTML = '收起全部'; }else{

2018-03-01 08:45:01 135

原创 table动态添加删除一行

function del(obj) { $(obj).remove();}function add(id,obj,listname) { var nameVal = obj.innerText; var str=$( ''+nameVal +''+' ' ); $('#'+listname).append(str);}

2018-03-01 08:44:25 796

原创 JS如何submit

var downloadForm=$("#downloadForm"); downloadForm.append(""); downloadForm.append(""); downloadForm.attr("action","../../statisticsSearch/exportExcel"); downloadForm.submit();

2018-03-01 08:42:19 3621

原创 java多线程

1、多线程的优点:1.防止阻塞 2.并发执行,充分利用CPU,提高程序效率 2、如何创建一个线程:1.实现Runnable接口,然后将它传递给Thread的构造函数,创建一个Thread对象public class DisplayMessage implements Runnable {  public void run() {//重写run方法 } }Runnable h

2018-03-01 08:40:32 115

原创 spring中使用线程池

bean 配置applicationContext.xml =notifyScheduledMainExecutor.maxNum;默认为Integer.MAX_VALUE --> maven配置jar包pom.xml  org.spring

2018-03-01 08:39:46 4652

原创 ajax加入遮罩

beforeSend: function () { $.messager.progress({ title: '提示', msg: '系统处理中,请稍候……', text: '' }); }, complete: functi...

2018-02-27 17:56:23 1770

原创 mybatis通过存储过程同步数据(向table插入数据)

service.javaMap<String, Object> params = new HashMap<String, Object> (); params.put("bill_no", billNo); checkListDao.synchronizeAc(params); String rtn_code = params.get("rtn_code"...

2018-02-26 10:43:53 1044

原创 easyui datagrid 查询只有一条数据时,被滚动条遮挡住 ie兼容

table 设置 min-height style="width:100%;min-height: 100px;"

2018-02-09 15:04:46 1156

转载 ie6 easyui tab组件下 滚动 datagrid不会滚动bug

<div style="position:relative;overflow:auto;margin-top: 35px" id="tarDBTab" > <table width="100%" cellpadding="0" cellspacing="1" class="table_targetLab table_list3 table_bo

2018-02-08 09:32:59 133

空空如也

空空如也

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

TA关注的人

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