摘要: 1、synchronized关键字最主要的三种使用方式的总结 修饰实例方法,作用于当前对象实例加锁,进入同步代码前要获得当前对象实例的锁 修饰静态方法,作用于当前类对象加锁,进入同步代码前要获得当前类对象的锁 。也就是给当前类加锁,会作用于类的所有对象实例,因为静态成员不属于任何一个实例对象,是类成 阅读全文
posted @ 2020-10-14 16:44 小布谷 阅读(117) 评论(0) 推荐(0) 编辑
摘要: 有参数传递的地方都少不了参数校验。在web开发中,前端的参数校验是为了用户体验,后端的参数校验是为了安全。 试想一下,如果在controller层中没有经过任何校验的参数通过service层、dao层一路来到了数据库就可能导致严重的后果,最好的结果是查不出数据, 严重一点就是报错,如果这些没有被校验 阅读全文
posted @ 2020-10-14 16:02 小布谷 阅读(7465) 评论(0) 推荐(0) 编辑
摘要: 1.明确这样用的意义 Redis基于内存,读写速度快,也可做持久化,但是内存空间有限,当数据量超过内存空间时,需扩充内存,而内存成本较高; MySQL基于磁盘,读写速度没有Redis快,但是不受空间容量限制,性价比高; 应用场景多数时候是MySQL(主)+Redis(辅),MySQL做为主存储,Re 阅读全文
posted @ 2019-08-02 20:05 小布谷 阅读(4438) 评论(0) 推荐(0) 编辑
摘要: 1.问题场景 虚拟机重启后,更改laravel中的blade页面刷新浏览器不能看到更改效果 2.拍错步骤 查看laravel的缓存文件,laravel在渲染blade模板后,会将渲染好的结果存到storage/framework/views(默认路径,也可在配置中修改的)中。 采用rm –rf * 阅读全文
posted @ 2018-11-02 13:56 小布谷 阅读(1324) 评论(0) 推荐(0) 编辑
摘要: 这是异常的类图。 Throwable是Error和Exception的父类,用来定义所有可以作为异常被抛出来的类。 Error和Exception区分: Error是编译时错误和系统错误,系统错误在除特殊情况下,都不需要你来关心,基本不会出现。而编译时错误,如果你使用了编译器,那么编译器会提示。 E 阅读全文
posted @ 2018-10-24 13:27 小布谷 阅读(140) 评论(0) 推荐(0) 编辑
摘要: var num = 1; var str = '1'; var test = 1; test == num //true 相同类型 相同值 test num //true 相同类型 相同值 test !== num //false test与num类型相同,其值也相同, 非运算肯定是false nu 阅读全文
posted @ 2018-09-10 10:40 小布谷 阅读(5795) 评论(0) 推荐(0) 编辑
摘要: 解决方案: layui.use(‘laydate’, function(){ var laydate = layui.laydate; lay(‘.advanceDate’).each(function(){ laydate.render({ elem: this ,trigger: ‘click’ 阅读全文
posted @ 2018-08-20 16:55 小布谷 阅读(2240) 评论(0) 推荐(0) 编辑
摘要: 一、词法分析 词法分析的任务是:输入源程序,对构成源程序的字符串进行扫描和分解,识别出一个个的单词(亦称单词符号或简称符号),如基本字(begin、end、if、for、while),标识符、常数、运算符和界符(标点符号、左右括号)。 单词符号是语言的基本组成成分,是人们理解和编写程序的基本要素。识 阅读全文
posted @ 2018-06-12 16:43 小布谷 阅读(6104) 评论(0) 推荐(0) 编辑