- 博客(173)
- 收藏
- 关注
原创 常见面试题
由于商品信息数据可能会被修改或删除,我们需要定期从数据库中更新缓存中的商品信息数据。同时,我们也需要保证缓存系统和数据库之间的数据同步。为了实现这一点,我们可以采用定时任务来更新缓存中的商品信息数据,并使用消息队列来实现缓存系统和数据库之间的数据同步。综上所述,设计一个缓存系统需要考虑很多因素,例如缓存的大小、缓存的淘汰策略、缓存的并发访问等等。通过以上案例的说明,相信读者已经对如何设计一个高效可靠的缓存系统有了更深入的了解。
2023-06-03 18:28:44
813
1
原创 创建线程的第三种方式
使用Callable接口Thread可以通过其构造函数传入Runnable接口创建线程,那么这和Callable接口有什么关系呢FutureTask类实现了Runnable接口,那么我们是不是可以通过Thread其构造函数传入FutureTaskFutureTask的构造函数传入了Callable接口通过以上关系图,可以使用Callable接口来创建线程,注意到call方法有返回值...
2019-12-15 19:19:13
955
原创 jvm
jvm体系结构黄色:所有线程共享、占用空间较大,存在垃圾回收灰色:各个线程独享数据区域、占用空间较小,不存在垃圾回收类装载器ClassLoader是什么负责加载class文件,class文件在文件开头有特定的文件标示,将class文件字节码内容加载到内存中,并将这些内容转换成方法区中的运行时数据结构并且ClassLoader只负责class文件的加载,至于它是否可以运行,则有Exe...
2019-12-15 19:14:45
930
原创 多线程间通信
多线程并发,主要是多线程操作资源类,其次是多线程间的通信,三部曲,判断、干活、通知,为了防止虚假唤醒判断时必须使用while,最后,为了保证多线程执行的顺序性,可以使用Condition配合标志位来通知唤醒指定线程。生产者消费者两个线程操作空调资源类,一个升温一度,一个减温一度,一来一回,循环10轮版本一多线程间通信三部曲,判断、干活、通知唤醒其它线程package com.z...
2019-11-29 19:54:38
970
原创 static和synchronized
static和synchronized2个线程模拟手机发邮件和发短信功能八锁标准访问 2个线程 一部手机资源类发邮件睡眠4秒新增sayHello方法两部手机资源类2个静态同步方法 一部手机2个静态同步方法 两部部手机1个静态同步方法 一个普通同步方法 一部手机1个静态同步方法 一个普通同步方法 两部部手机场景一标准访问 2个线程 一部手机资源类package c...
2019-11-28 22:38:39
936
原创 多线程售票
多线程售票多线程操作资源类创建启动线程的写法public Thread(Runnable target, String name).start()线程的6种状态,线程调用start方法后不会立即执行,而是要等待空闲CPU的调度使用ReentrantLock保证资源类的安全package com.zbiti.juc;import lombok.extern.slf4j.Slf4j;...
2019-11-28 20:38:20
915
原创 集合类不安全
集合类不安全ArrayList集合类不安全故障现象 java.util.ConcurrentModificationException导致原因 多线程对集合的并发操作导致并发修改异常的产生解决方案 Vector(加synchronized)Collections.synchronizedList(new ArrayList())使用同步代码块CopyOnWriteArrayLi...
2019-11-28 20:35:54
873
原创 oracle定时执行存储过程
需求每小时进行一次查询统计数据,并将数据插入到自定义的表当中效果创建存储过程create or replace procedure summary_data as v_dcppv number; v_jd12h number; v_dby number; v_xby number; v_bj number; v_bn number; v...
2019-11-21 22:41:18
1368
原创 Linux性能分析
生产环境服务器变慢,诊断思路和性能评估整机:top代码public class JavaDemo2 { public static void main(String[] args) { while (true){ System.out.println(new java.util.Random().nextInt(77778888)); ...
2019-11-06 20:52:02
958
原创 NodeJS
NodeJS入门NodeJS模块http模块server.jsconst http=require('http');let server=http.createServer((req, res)=>{ switch(req.url){ case '/aaa': res.write('abc'); break; case '/bbb'...
2019-11-06 20:44:45
1072
原创 优化点击事件绑定
1、优化点击事件绑定<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script src="https://cdn.bootcss.com/jquery/3.3.1/jq...
2019-11-06 20:36:52
898
原创 多表连接查询
1、查询用户拥有的权限子查询和连接查询2种,比较推荐连接查询,子查询比较影响性能,子查询看起来比较容易理解,而连接查询需要比较熟悉各个表之间的关系SELECT DISTINCT p.* FROM t_permission p LEFT JOIN t_role_permission trp ON trp.`permissionid`=p.`id` LEFT JOIN t_rol...
2019-11-06 20:35:06
880
原创 ThreadLocal小试牛刀
ThreadLocal中保存的数据只能被当前线程私有,不被其它线程可见证明声明一个全局的变量threadLocal,初始值为1,通过3个线程对其进行访问修改设置,理论上threadLocal的最终值应该是6,然而我们的输出结果是3,说明了threadLocal中存放的数据是各自线程私有的package com.mmall.concurrency.example.threadLoca...
2019-11-02 14:23:50
283
原创 svn版本控制
Windows系统安装svn1、svn下载https://sourceforge.net/projects/win32svn/2、验证是否安装成功 C:\Users\libingshen>svn --version3、创建版本库 D:\mytest\mysvn\OA>svnadmin create D:\mytest\mysvn\OA4、启...
2019-11-02 14:21:24
399
原创 策略模式和工厂模式搭配使用
策略模式和工厂模式的搭配使用可以很好地消除代码if-else的多层嵌套需求针对店下商铺,有这样一个需求,对用户客户分为了普通客户、vip客户、超级vip用户、专属vip用户4个等级,每当用户购买商品时,针对不同的用户等级和消费金额采取不同的打折优惠策略。在平常的开发当中,必然会出现多层的if-else嵌套判断,先判断用户的等级再判断用户购买商品的消费金额。弊端以上的情况出现了多层...
2019-11-02 14:18:15
445
原创 MyBatis-Plus
简介是什么参考教程:http://mp.baomidou.com/guide/MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。特性无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作强大的 CR...
2019-11-02 14:12:46
538
原创 github骚操作
限制搜索in关键词限制搜索范围命令说明xxx in:name项目名包含xxx的xxx in:description项目描述包含xxx的xxx in:readme项目的readme文件中包含xxx的xxx in:name,desciption项目名包含xxx且项目描述包含xxx的范围搜索stars或fork数量关键词查找命令说明s...
2019-09-30 09:55:02
984
原创 spring定时任务-文件上传进度条
spring定时任务导依赖 <!-- https://mvnrepository.com/artifact/org.quartz-scheduler/quartz --> <dependency> <groupId>org.quartz-scheduler</groupId> <artifac...
2019-09-27 21:48:59
965
原创 linux系统下开发环境安装与配置
安装系统环境CentOS 6.8 64位jdk版本7u80 64位Tomcat版本Tomcat7maven版本Apache Maven 3.6.0vsftpd版本vsftpd-2.2.2-24.el6.x86_64Nginx版本nginx-1.14.2mysql版本mysql-server-5.1.73-8.e...
2019-09-27 21:46:23
517
原创 jQuery和vue-js实现购物清单
jQuery实现购物清单<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script src="https://cdn.bootcss.com/jquery/3.4.1/...
2019-09-25 17:27:52
590
原创 java中的逃逸分析
逃逸分析public static StringBuffer craeteStringBuffer(String s1, String s2) { StringBuffer sb = new StringBuffer(); sb.append(s1); sb.append(s2); return sb;}public static String crea...
2019-09-25 17:24:53
368
原创 elastic
安装elastic下载Elasticsearch 6.3.1 | Elastic解压[root@192 modules]# tar -zxvf elasticsearch-6.3.1.tar.gz启动报错一elasticsearch 为了安全性默认不允许 root 用户来启动[root@192 elasticsearch-6.3.1]# cd bin/[root@1...
2019-09-25 17:17:47
470
原创 jdk多版本设置
jdk多版本设置Windows安装jdk1.6jdk1.7jdk1.8删除或者重命名C:WindowsSystem32下的java.exe、javaw.exe、javaws.exeC:Program Files (x86)Common FilesOracleJavajavapath下的java.exe、javaw.exe、javaws.exe配置自己的jdk环境变量...
2019-09-25 17:07:45
402
原创 订单唯一标识
在平常开发系统,设计表结构的时候,常常需要有一个字段来标识该条记录的唯一性,从java层面和数据库层面不同维度来进行实现java生成唯一标识版本一java自带生成唯一标识UUIDSystem.out.println(UUID.randomUUID().toString());输出4880d2b4-bc5f-48d1-ba58-003334276d46明显地看出来太长了...
2019-09-25 17:04:34
1269
原创 ssh无密登录_集群分发脚本xsync
1、ssh免密登录ssh ip地址 [root@192 ~]# ssh 192.168.1.102 root@192.168.1.102's password: Last login: Mon Feb 18 20:40:28 2019 from 192.168.1.101免密登录配置生成公钥和私钥 [root@192 ~]# ssh-keygen -t...
2019-09-22 21:22:34
937
原创 java中的锁
引言在java单线程中,并不会出现资源抢夺的现象,但是在多线程并发中,会出现资源抢夺现象。为了避免这种情况需要上锁分类可重入锁,又名递归锁指的是同一线程外层函数获得锁之后,内层递归函数仍然能获取该锁的代码,在同一个线程在外层方法获取锁的时候,在进入内层方法会自动获取锁,也即是说,线程可以进入任何一个它已经拥有的锁所同步着的代码块。使用synchronizedclass Phone...
2019-09-22 21:19:32
814
原创 HttpClient远程接口调用-实名认证
1、HttpClient远程接口调用1)用户注册注册按钮button提交表单时,要return falseform表单 <!-- action="http://localhost:8082/scw-restapi/member/regist" --> <form class="form-signin" role="form" action="${ctp...
2019-09-22 21:16:29
1105
原创 vscode主题安装
安装主题快捷键Ctrl Shift X打开安装插件搜索Monokai ST3切换主题显示效果安装文件图标扩展插件vscode-icon鼠标滚轮设置字体大小打开setting.json文件修改setting.json,追加"editor.mouseWheelZoom": true{ "editor.fontSize": 16, "workben...
2019-09-22 21:13:15
4446
原创 zookeeper伪集群
Zookeeper运行需要java环境,需要安装jdk,建议本地下载好需要的安装包然后上传到服务器上面,服务器上面下载速度太慢。上传[root@192 ~]# java -versionjava version "1.8.0_202"Java(TM) SE Runtime Environment (build 1.8.0_202-b08)Java HotSpot(TM) 64...
2019-09-22 21:06:43
364
原创 hexo
---title: hexocategories: 博客tags:hexogithubsummary: hexo博客搭建过程,git、hexo、node的安装,hexo博客的初始化,整合GitHub pagetypora-root-url: hexoabbrlink: ab21860cdate: 2019-01-23 09:07:30---安装Node.jshttps://nod...
2019-09-22 21:01:11
660
原创 json工具@2018-10-29
1、gjson toJson(Object) fromJson(String, Class) TypeToken&lt;T&gt;2、json-lib JSONObject JSONArray fromObject(Object) //中间对旬 JSONObject toString() //实例方法,返回json字符串 toBean (JS...
2018-10-29 15:50:48
144
原创 18_尚硅谷_Vue_使用vue-cli创建项目&&19_尚硅谷_Vue_基于脚手架编写项目
1、使用vue-cli创建项目 参考: https://www.npmjs.com/package/vue-clihttps://github.com/vuejs/vue-cli/tree/master步骤: npm install -g vue-cli vue init webpack vue_demo cd vue_demo npm install npm run dev...
2018-09-10 19:52:45
886
原创 帆软报表01
1、分页设置选中A4单元格,右键–条件属性选择+,新建分页,行后分页,类型选择公式: 公式:&amp;A4 % 10 = 02、动态查询条件参数:效果展示:配置步骤: 1)数据集sql拼接查询条件参数(分公司、开始年份、截止年份、开始月份、截止月份)select T.分公司, T.年份, T.月份, ...
2018-08-28 09:33:55
727
转载 16_尚硅谷_Vue_指令&&17_尚硅谷_Vue_插件
1、指令 测试一:&lt;!DOCTYPE html&gt;&lt;html lang="en"&gt;&lt;head&gt; &lt;meta charset="UTF-8"&gt; &lt;title&gt;12_指令_内置指令&lt;/t
2018-08-27 21:19:28
194
原创 css3过渡transition@2018-08-05
1、过渡属性 值 描述 transition-property 指定过渡动画的属性(并不是所有的属性都可以动画) transition-duration 指定过渡动画的时间(0也要带单位) transition-timing-function 指定过渡动画的形式(贝塞尔) transition-delay 指定过渡动画的延迟...
2018-08-05 12:19:44
200
转载 14_尚硅谷_Vue_动画&15_尚硅谷_Vue_过滤器
1、动画测试一:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script src="https://cdn.bootcss
2018-08-05 10:00:58
254
转载 12_尚硅谷_Vue_表单数据的自动收集&13_尚硅谷_Vue_生命周期
1、表单数据的自动收集<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script src="https://cdn.boo
2018-08-04 16:59:17
313
转载 js事件委托、时间操作、本地化存储@2018-06-23
TODO应用&amp;lt;!DOCTYPE html&amp;gt;&amp;lt;html lang=&quot;en&quot;&amp;gt;&amp;lt;head&amp;gt; &amp;lt;meta charset=&quot;UTF-8&quot;&amp;gt; &
2018-06-23 22:09:27
204
原创 jQuery选择器与DOM操作@2018-06-17
1、层次选择器<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script type="text/javascript&quo
2018-06-17 16:24:45
177
原创 jQuery ajax函数的使用、jsonp实现扩域数据交换@2018-06-16
1、jQuery ajax函数的使用url: url, //请求的url地址 dataType: datatype, //服务器返回的值类型 async: true, //请求是否异步,默认为异步 data: { "id": "value" , "param":"param" },//发送到服务器的参数 t...
2018-06-16 23:47:53
142
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人