MySQL中生成随机数的函数是,该函数还可以接收一个seed数(种子),返回一个0-1之间的小数(0<=x<1,大于等于0,小于1)。例如: mysql> SELECT RAND(); RAND(): 0.4768667244136955 (生成随机数) mysql> SELECT RAND(7); RAND(): 0.40161898397060014 (生成随机数,种子数是7) mysql> SELECT RAND(-1.1); RAND(): 0.5774947773455593…
MySQL中生成随机数的函数是,该函数还可以接收一个seed数(种子),返回一个0-1之间的小数(0<=x<1,大于等于0,小于1)。例如: mysql> SELECT RAND(); RAND(): 0.4768667244136955 (生成随机数) mysql> SELECT RAND(7); RAND(): 0.40161898397060014 (生成随机数,种子数是7) mysql> SELECT RAND(-1.1); RAND(): 0.5774947773455593…
现在大部分应用都不支持IE浏览器了,微软自己也已经放弃IE转而使用Edge浏览器了,为了避免任然有一些用户使用IE浏览器,产生不必要的错误,需要在用户打开网页的时候,检测是否是IE浏览器,进行进行弹窗或者顶部提示等方式提醒用户切换浏览器。 检测浏览器一般是用userAgent里检测是否有相关的关键词,例如:window.navigator.userAgent.indexOf("MSIE")>=1,但是据说这种方式在IE11下已经不行了 这里记录下我测试下来能用,且可以判断所有IE浏览器的代码: // 判断是否…
为了防止用户截屏后传播内容,需要给某些内容背景增加水印。本篇是介绍在Vue项目中增加水印,不添加第三方package,原声代码实现。 先上效果图: 新增 directives.js import Vue from 'vue' Vue.directive('watermark',(el,binding)=>{ function addWaterMarker(str,parentNode,font,textColor){// 水印文字,父元素,字体,文字颜色 var can = document.createEl…
MyBatis原生状态下将数据分页或者使用offset/limit方式对数据做限制行数,如果没有limit写在SQL的时候,想要分页,使用的是。 这种方式,没有使用使用PageHelper插件的时候,是使用的逻辑分页,数据量大的时候,直接把大量数据从数据库取回来再分页,造成OOM,千万要谨慎使用,例子如下: # 注意这种方式非常不推荐使用,只是反例 List<Student> list = studentMapper.listStudents(new RowBounds(0, 10)); 以上显然是不行…
有一些业务逻辑,需要检测是否存在某个特定的表后做一些事情(例如数据库按年分表的情况下,定期检查是否存在下一年的表,不存在就新建表),以下SQL(指定是Oracle数据库)可以检测是否存在某张表或者视图(当然如果没有检测视图的需求,可以稍加修改),如果存在表,返回的cnt就大于0,不存在就返回count等于0 -- 如果select出来的结果等于0,说明不存在,大于0,说明表或者视图已存在 select count(*) as cnt from all_objects where object_type in ('T…
前不久Spring Boot 2.7.0 刚刚发布,Spring Security 也升级到了5.7.1 。升级后发现,原来一直在用的Spring Security配置方法,居然已经被弃用了。不禁感慨技术更新真快,用着用着就被弃用了!今天带大家体验下Spring Security的最新用法,看看是不是够优雅! 在Spring Boot 2.7.0 之前的版本中,我们需要写个配置类继承WebSecurityConfigurerAdapter ,然后重写Adapter中的三个方法进行配置; /** * SpringSe…
我们知道,RabbitMQ是没有延时列队的,要实现延时列队需要用迂回的方式: 使用2个列队 给第一个列队设置一个ttl(Time-To-Live消息存活时间),且让列队不消费,等待这个ttl的时间后,列队消息死亡,进入死信exchange到死信列队 设置死信列队可以再次路由到其他队列中,进行消息,从而实现延时的功能 流程图如下: 这个方式有个问题就是流程有点复杂, 会产生很多列队和交换机(尤其是当业务较多,有较多类型的消息要实现延迟的情况下,会成倍的增加这些列队)容易出错。 RabbitMQ是支持插件的,好在有专门…
最近有个需求,就是要将Office文档能在网页上预览展现,之前知道金山WPS Office是有开放API可以对接并显示,不过是要收费的。 经过一番调查,发现一个方法,我们知道PDF是可以在浏览器里直接显示的,所以只要想办法能把Office文档(doc、docx、xlsx、xlsx、ppt、pptx)转成PDF即可,而通过查找,LibreOffice(免费-属于OpenOffice)就可以实现将Office文档转成pdf(也可以将Office文档转成jpg等图片,作为封面时候) 安装完了LibreOffice后,可以…
如图,用IDEA的暗色主题下,编辑器打开某些文件的类型会出现一个提示,不过提示的背景色或者前景色搭配有问题,导致文字看不清楚。 依次打开设置(Preferences...)-编辑器(Editor)-配色方案(Color Scheme)-常规(General)-右侧选择『编辑器(Editor)』-通知背景(Notification background),然后设定背景颜色为:525129 或者844C24 (可以自定义看看效果,选择自己喜欢的颜色Notification background) 现在看上去舒服多了:
Inteillj IDEA在导入模块出现这个错误: Module 'someModule' must not contain source root. The root already belongs to module 'anotherModule' 出现这个错误的原因,可能是: 多模块Maven项目,父模块parent目录不能有src的code。打开Project Structure,找到parent父模块,查看下面的的 Source Folders看看是否把要导入或者添加的module的给加载进来了。删掉就可…