- 博客(10)
- 收藏
- 关注
原创 数据结构的存储过程
给大家推荐一个网站:https://www.cs.usfca.edu/~galles/visualization/Algorithms.html模拟数据结构的存储过程(很强大)
2019-04-02 14:12:10 317
原创 J2SE之多线程(下)
这次重点给大家讲下同步和锁加粗样式,有不足或错误的地方欢迎大家指出。一、同步的原理,即遵守的规则:1、一个线程率先抢到锁,其他线程会等其释放锁。2、代码执行执行完毕或抛异常的时候会释放锁。3、其他线程再去抢这把锁。二、正因为线程间会竞争(为了得到锁),所以同步会使效率降低。同步函数分为静态同步函数和非静态同步函数,其中静态同步函数使用的锁是当前类对象,而非静态同步函数使用的是this锁。...
2019-03-08 14:53:55 175
原创 J2SE之多线程(上)
跟大家唠唠多线程一、什么是线程?要想知道线程,首先要了解进程。进程是执行中的程序即具有独立功能的程序关于某个数据集合的一次运行过程。而线程是执行路径。二、如何创建线程?1、继承Thread类,重写run方法。运行方式:实例化后.start()2、实现runable接口。但运行不能直接start,要先new Thread(实例化对象),再.start()由于Java是单继承多接口,所以...
2019-03-04 16:32:13 134
原创 Mysql数据库调优
面试或实际开发过程中经常遇到数据库调优的问题,这里给大家说道说道:1、sql语句优化:尽量避免再where子句中使用!=或< >操作符,以及对字段进行null值的判断。因为引擎会全表扫描,降低效率。exists代替in。where子句换成having子句。2、数据库结构优化范式优化反范式优化拆分表3、服务器硬件优化4、索引优化对经常需要增删改查的数据添加索...
2019-03-04 15:52:52 254
原创 Redis穿透,雪崩的解决办法
Redis是开发过程中经常使用到的工具,这里简单说一下如何解决穿透,雪崩的问题。穿透:1、利用互斥锁。缓存失效的时候,得到了锁,再请求数据库。没得到锁,休眠一段时间重试。2、采用异步更新策略。无论key是否取到值,都直接返回。value值中维护一个缓存失效时间,缓存如果过期,异步一个线程去读数据库,跟新缓存。需要缓存预热(项目启动前,先加载缓存)。3、提供一个能迅速判断请求是否有效拦截机制...
2019-03-04 15:28:19 380
原创 spring boot 启动流程
SpringApplication run方法实现的执行流程 1) 如果我们使用的是 SpringApplication 的静态 run 方法,那么,这个方法里面首先要创建一个SpringApplication 对象实例,然后调用这个创建好的 SpringApplication 的实例方法。2) SpringApplication 实例初始化完成并且完成设置后,就开始执行 run 方法的逻辑了...
2019-01-15 16:18:01 352 2
原创 JAVA基础概念(四)
异常:导致程序的正常流程被中断的事件。常见异常处理手段:try catch 、finally、throwsfinally:无论是否出现异常,finally中的代码都会被执行。throws: 出现在方法声明上,表示出现异常的一种可能性,并不一定会发生这些异常。异常有分为3种:可查异常、运行时异常、错误。可查异常:必须处理的异常。不处理,编译器不会通过。运行时异常:在编写代码的时候,依然可...
2018-10-29 22:15:04 152
原创 java基础概念(三)
1、finalfinal修饰类的时候,该类不能被继承。final修饰方法的时候,该方法不能被重写。final修饰基本类型变量,表示该变量只有一次赋值机会 。final修饰引用,该引用只有1次指向对象的机会。2、抽象类:在类中声明一个方法,这个方法没有实现体,这样的方法就叫抽象方法,使用修饰符“abstract" ,该类被称为抽象类。一个类被声明为抽象类,就不能够...
2018-10-24 08:08:43 130
原创 Java基础概念(二)
本系列文章是针对刚开始接触Java语言小白的科普。1)四种访问修饰符:private 私有的package/defaultprotected 受保护的public 公共的2)单例模式:一个类,在一个jvm里,只有一个实例存在。单例模式又分为懒汉式和饿汉式两种。懒汉式是立即加载的方式,无论是否会用到这个对象,都会加载。懒汉式,是延迟加载的方式,只有使用的时候才会加载。单例模式三...
2018-10-21 19:55:02 101
原创 Java基础概念(一)
本系列文章是针对刚开始接触Java语言小白的科普。1)重写:子类可以继承父类的对象方法 在继承后,重复提供该方法,就叫做方法的重写 (又叫覆盖 override)。2)多态:分为2种,操作符的多态(字符串连接)及类的多态(父类引用指向子类对象)。3)方法重载:方法名一样,但是参数类型不一样。4)继承:子类继承父类,同时继承其属性和方法。5)隐藏...
2018-10-20 23:35:25 183
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人