
基础
飞翔的小龙虾与lyon
这个作者很懒,什么都没留下…
展开
-
Client does not support authentication protocol requested by server; consider upgrading MySQL client
mysql8安装之后的访问连接问题原创 2023-02-06 22:53:11 · 194 阅读 · 0 评论 -
ide远程操作mysql报错1142-create command denied to user×××的解决
1.如果安装在docker中(没有,跳过) 执行docker exec -it mysql bash2.mysql -uroot -p3.给用户添加CREATE,DROP权限。Mysql命令:[sql]mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON systest.* TO root@'%' identified by 'root';Query OK, 0 rows affected (0.01 sec) ..原创 2021-12-11 16:57:53 · 2842 阅读 · 1 评论 -
多线程复习之volatile线程之间的可见性
package com.lyon.demo.test.mayi;public class DemoVolatile{ public static void main(String[] args) throws InterruptedException { TestVolatile testVolatile = new TestVolatile(); testVolatile.start(); Thread.sleep(300); .原创 2021-09-19 20:53:36 · 118 阅读 · 0 评论 -
多线程复习之join--让线程t1 t2 t3 有续执行
package com.lyon.demo.test.mayi;public class Demo7Join { public static void main(String[] args) throws InterruptedException { Thread t1 = new Thread(new Runnable() { @Override public void run() { for (.原创 2021-09-11 19:08:15 · 292 阅读 · 0 评论 -
多线程复习之停止线程
package com.lyon.demo.test.mayi;public class StopThreadDemo extends Thread{ public boolean flag = true; @Override public void run() { while (flag) { System.out.println("---"); } } public void stopThread.原创 2021-09-11 13:42:30 · 116 阅读 · 0 评论 -
多线程复习之lock锁
package com.lyon.demo.test.mayi;import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;/** * lock锁 */class Res1{ public String name; public String sex; publi.原创 2021-09-11 11:28:18 · 102 阅读 · 0 评论 -
多线程之静态方法加锁-复习篇
package com.lyon.demo.test.mayi;public class Demo4 { public static void main(String[] args) { ThreadTrain4 th = new ThreadTrain4(); Thread thread = new Thread(th); Thread thread1 = new Thread(th); Thread thread2 = ne.原创 2021-09-04 18:53:23 · 477 阅读 · 0 评论 -
多线程之同步锁买票-复习篇
package com.lyon.demo.test.mayi;public class Demo2 { public static void main(String[] args) { ThreadTrain2 th = new ThreadTrain2(); Thread thread = new Thread(th); Thread thread1 = new Thread(th); Thread thread2 = ne.原创 2021-09-04 18:26:04 · 157 阅读 · 0 评论 -
Redis基础篇之redis.conf文件解读
########Redis基础篇之redis.conf文件解读 1. bind 127.0.0.1 -::1 //绑定ip 2. protected-mode yes //保护模式 3. port 6379 //访问端口 4. tcp-backlog 511 // TCP连接中已完成队列(完成三次握手之后)的长度--排队的最大连接个数 5. timeout 0 //连接超时 6. tcp-keepalive 300 //允许的持续空闲时长,或者说每次正常发送心跳的周期 7...原创 2021-08-20 18:56:40 · 88 阅读 · 0 评论 -
Redis基础篇之Jedis
########Redis基础篇之Jedis 1. config set protected-mode "no" //本地想要连接 远程linux服务器上面的redis,需要关闭“保护模式”原创 2021-08-20 18:55:46 · 97 阅读 · 0 评论 -
Redis基础篇之事务
########Redis基础篇之事务1. redis单条命令是保证原子性的,但是事务不保证原子性2. redis事务没有隔离级别的概念3. redis的事务 1>开启事务 2>命令入队 3>执行事务4. multi //开启事务5. set k1 v1 //放入队列6. exec //执行事务7. discard //取消事务8. 编译型异常,事务不会执行9. 运行时异常,其他命令会正常执行...原创 2021-08-18 19:04:42 · 115 阅读 · 0 评论 -
Redis基础篇之Bitmaps位图场景
########Redis基础篇之Bitmaps位图场景1. getbit sign 6 //查看周六是否打卡2. bitcount sign //统计一周打卡记录原创 2021-08-18 09:52:37 · 127 阅读 · 0 评论 -
Redis基础篇之Hyperloglog基数统计
########Redis基础篇之Hyperloglog基数统计1. pfadd pkey a b c d e f //插入元素2. pfcount pkey //返回元素个数3. pfmerge pkey2 pkey1 pkey //返回一个并集原创 2021-08-18 09:52:05 · 116 阅读 · 0 评论 -
Redis基础篇之Zset
########Redis基础篇之Zset1. zadd zset 1 one 2 two 3 three //向zadd类型的 zset(自定义集合)中添加三个元素2. zrange zset 0 -1 //显示指定区间内的元素 0 -1是显示全部3. zadd salary 500 kuangshen zadd salary 10000 lyon //添加两个元素,下面排序使用4. zrangebyscore salary -inf +inf //对 salary集合升序...原创 2021-08-17 17:48:25 · 109 阅读 · 0 评论 -
Redis基础篇之Set
1.所有的List相关命令都带有l 2. lpush list one two three //添加元素,同时多个,也可以单个添加 3. rpush list 1 //从右端添加 4. lrange list 0 -1 //读取指定区间的元素,0 -1指读取全部 5. lpop list //从左边移除一个元素 6. rpop list //从右边移除一个元素 7. lindex list 0 //获取指定某个下标的元素 8. lrem list 1 one //移除掉 值...原创 2021-08-17 08:38:35 · 103 阅读 · 0 评论 -
Redis基础篇之List
1.所有的List相关命令都带有l 2. lpush list one two three //添加元素,同时多个,也可以单个添加 3. rpush list 1 //从右端添加 4. lrange list 0 -1 //读取指定区间的元素,0 -1指读取全部 5. lpop list //从左边移除一个元素 6. rpop list //从右边移除一个元素 7. lindex list 0 //获取指定某个下标的元素 8. lrem list 1 one //移除掉 ...原创 2021-08-08 11:22:34 · 112 阅读 · 0 评论 -
Redis基础篇之String
1. ./redis-cli 2. shutdown 3. exit 4. ps -ef|grep redis //查看进程 5. ./bin/redis-benchmark -h localhost -p 6379 -c 100 -n 10000 //性能测试 6. redis默认有16个数据库 7. 127.0.0.1:6379> select 3 //切换到第三个数据库 8. DBSIZE //查看指定数据库的 数据数 ...原创 2021-08-08 08:52:13 · 106 阅读 · 0 评论 -
redis篇--安装
https://www.cnblogs.com/hunanzp/p/12304622.html转载 2021-08-01 17:03:36 · 89 阅读 · 0 评论 -
多线程之线程停止
package com.lyon.demo.test.thread;/** * 测试stop * 1.建议线程正常停止--->利用次数,不建议死循环 * 2.建议使用标志位--->设置一个标志位 * 3.不要使用stop或者destroy等过时或者JDK不建议使用的方法 */public class TestStop implements Runnable{ //1.设置一个标志位 private Boolean flag = true; @Ove.原创 2021-07-24 09:59:21 · 108 阅读 · 0 评论 -
注解与反射02
package com.lyon.annotationorreflection;import java.lang.annotation.*;/** * 四大元注解 * 1.@Target, // * 2.@Retention, * 3.@Documented, * 4.@Inherited * *//** * @Target: * @Target说明了Annotation所修饰的对象范围: * Annotation可被用于 packages、types(类、接口、枚.原创 2021-06-14 21:36:46 · 97 阅读 · 0 评论 -
注解与反射01
package com.lyon.annotationorreflection;//1.@Deprecated可以修饰类、方法、变量// 在java源码中被@Deprecated修饰的类、方法、变量等表示不建议使用的,// 可能会出现错误的,可能以后会被删除的类、方法等,如果现在使用,// 则在以后使用了这些类、方法的程序在更新新的JDK、jar包等就会出错,不再提供支持。//2.@SuppressWarnings 可以达到抑制编译器编译时产生警告的目的,// 但是很不建议使用@Suppr.原创 2021-06-14 21:23:24 · 105 阅读 · 0 评论 -
多线程之ThreadPoolExecutor创建原生线程池
package com.lyon.juc.pool;import java.util.concurrent.*;public class Demo01 { public static void main(String[] args) { //不建议使用Executors去创建线程池,因为最大线程数是默认的Integer.MAX_VALUE 2的31次方-1(可能导致内存溢出) //使用原生线程池 ThreadPoolExecutor //.原创 2021-04-18 21:10:57 · 203 阅读 · 0 评论 -
多线程之Executors创建线程池
package com.lyon.juc.pool;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;public class ThreadPoolDemo { public static void main(String[] args) { //不建议使用Executors去创建线程池,因为最大线程数是默认的Integer.MAX_VALUE 2的31次.原创 2021-04-18 21:00:22 · 131 阅读 · 0 评论 -
多线程之同步队列
package com.lyon.juc;import java.util.concurrent.BlockingQueue;import java.util.concurrent.SynchronousQueue;import java.util.concurrent.TimeUnit;//同步队列public class BlockingQueueDemo { public static void main(String[] args) { BlockingQue.原创 2021-04-12 19:39:08 · 220 阅读 · 0 评论 -
多线程之读写锁(独占、共享锁)
package com.lyon.juc;import java.util.HashMap;import java.util.Map;import java.util.concurrent.locks.ReadWriteLock;import java.util.concurrent.locks.ReentrantReadWriteLock;//独占锁(写锁) 一次只能被一个线程占用//共享锁(读锁)多个线程可以同时占有////读写锁public class ReadWriteLock.原创 2021-04-11 12:31:37 · 181 阅读 · 0 评论 -
多线程之信号量
package com.lyon.juc;import java.util.concurrent.Semaphore;import java.util.concurrent.TimeUnit;//信号量//限流用到的比较多public class SemaphoreDemo { public static void main(String[] args) { Semaphore semaphore = new Semaphore(3); for (i.原创 2021-04-11 09:52:39 · 66 阅读 · 0 评论 -
多线程之累加计数器
package com.lyon.juc;import java.util.concurrent.BrokenBarrierException;import java.util.concurrent.CyclicBarrier;//累加计数器public class CyclicBarrierDemo { public static void main(String[] args) { /** * 集齐五福 */ Cyc.原创 2021-04-11 09:49:38 · 340 阅读 · 0 评论 -
多线程之减法计数器
package com.lyon.juc;import java.util.concurrent.CountDownLatch;//减法计数器public class CountDownLatchDemo { public static void main(String[] args) throws InterruptedException { //总数是5 CountDownLatch countDownLatch = new CountDownLatc.原创 2021-04-11 09:47:19 · 180 阅读 · 0 评论 -
多线程之callable创建线程
package com.lyon.juc.callable;import java.util.concurrent.Callable;import java.util.concurrent.ExecutionException;import java.util.concurrent.FutureTask;public class CallableTest { public static void main(String[] args) throws ExecutionException.原创 2021-04-10 13:46:14 · 97 阅读 · 0 评论 -
多线程8锁之静态同步锁与静态锁
package com.lyon.juc;import java.util.concurrent.TimeUnit;public class Test8Lock4 { public static void main(String[] args) { //两个对象 Phone4 phone = new Phone4(); Phone4 phone1 = new Phone4(); new Thread(()->{ .原创 2021-04-04 15:02:17 · 175 阅读 · 0 评论 -
多线程8锁之静态同步锁
package com.lyon.juc;import java.util.concurrent.TimeUnit;//八锁public class Test8Lock3 { public static void main(String[] args) { //两个对象 Phone3 phone = new Phone3(); Phone3 phone1 = new Phone3(); new Thread(()->{.原创 2021-04-04 15:00:27 · 102 阅读 · 0 评论 -
多线程8锁之普通方法与同步方法
package com.lyon.juc;import java.util.concurrent.TimeUnit;//8锁 就是关于锁的8个问题//1.标准情况下,两个线程先打印 发短信 打电话? 1/发短信 2/打电话//2.sendSms方法中延迟1秒,两个线程先打印 发短信 打电话? 1/发短信 2/打电话public class Test8Lock2 { public static void main(String[] args) { .原创 2021-04-04 14:59:37 · 106 阅读 · 0 评论 -
多线程之juc版线程有序循环执行
package com.lyon.juc;import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;//生产线 有序执行的工序//A调用B,B调用C,C调用A 依次循环public class C { public static void main(String[] args) .原创 2021-04-04 13:53:01 · 136 阅读 · 0 评论 -
多线程之juc版
package com.lyon.juc;import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;/** * 线程之间的通讯问题:生产者与消费者问题! 等待唤醒,通知唤醒 * 线程交替执行 A B 操作同一变量 num = 0 * A num+1 * B num-1 */.原创 2021-04-03 20:59:08 · 69 阅读 · 0 评论 -
多线程之生产者与消费-if与while
package com.lyon.juc;/** * 线程之间的通讯问题:生产者与消费者问题! 等待唤醒,通知唤醒 * 线程交替执行 A B 操作同一变量 num = 0 * A num+1 * B num-1 */public class A { public static void main(String[] args) { Data data = new Data(); new Thread(()->{ f.原创 2021-03-31 21:01:21 · 200 阅读 · 1 评论 -
多线程之synchronized与Lock的不同
package com.lyon.juc;import jdk.nashorn.internal.ir.CallNode;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;public class SaleTicketDemo02 { public static void main(String[] args) { Ticket1 ticket.原创 2021-03-30 20:27:44 · 73 阅读 · 0 评论 -
多线程之卖票新写法
package com.lyon.juc;public class SaleTicketDemo01 { public static void main(String[] args) { Ticket ticket = new Ticket(); new Thread(()->{ for (int i = 0; i < 40; i++) { ticket.sale(); .原创 2021-03-30 19:59:38 · 89 阅读 · 0 评论 -
多线程之可重入锁
package com.lyon.demo;import java.util.concurrent.locks.ReentrantLock;public class TestLock { public static void main(String[] args) { TestLock2 testLock2 = new TestLock2(); new Thread(testLock2).start(); new Thread(testLoc.原创 2021-03-28 13:22:40 · 94 阅读 · 0 评论 -
多线程之DeadLock
package com.lyon.demo;import jdk.nashorn.internal.ir.CallNode;//死锁: 多个线程相互持有对方需要的资源,形成僵持public class DeadLock { public static void main(String[] args) { Makeup t1 = new Makeup(0, "小红"); Makeup t2 = new Makeup(1, "小兰"); t1..原创 2021-03-28 13:14:24 · 158 阅读 · 0 评论 -
多线程之安全取钱
package com.lyon.demo;//不安全的取钱//两个人去银行取钱,账户public class UnsafeBuyBank { public static void main(String[] args) { //账户 Account account = new Account(100,"生活日用"); Drawing my = new Drawing(account,50,"lyon"); Drawing .原创 2021-03-27 21:41:43 · 125 阅读 · 0 评论