云鉴黄,你懂
鉴黄是我的事业,我会一直做到死为止!——唐马儒 大家都知道,我们的网站内容安全是很重要的 比如今天张三发布一个李四的照片,然后贴上==一夜八百量大从优== 如果我们的内容未经审核就发布到网站上,那么网站的安全就得不到保障,这对祖国未来的花朵影响是很大的 但如果我们每一条都人工审核的话,会占用大量人力资源,造就更多的就业岗位 造成更多的人力成本 为了解决这个问题,阿里云带着我们的产品来啦!它就是《阿里云内容安全》,简称IAcs 那么如何使用呢?首先,打开符文页,阿不,打开阿里云官网。。。 访问阿里云官网,注册阿里云账号。如果已有阿里云账号,请跳过此步骤。 访问内容安全产品试用页面,单击立即开通,正式开通服务。 访问AccessKey管理页面,管理您的AccessKey ID和AccessKey Secret。 复制依赖 123456789101112131415161718192021222324252627282930<dependency> <groupId>com.aliyun</grou...
迁移spring项目到springboot
嗨呀!今天是周六没上班,来把我们的spring+springmvc项目迁移到springboot吧! 首先创建springboot项目 然后一直下一步,复制我的pom 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/...
spring实现简单AOP
Sometimes we may think about how to do something before the method runs 有时我们会想,如何在一些方法执行前或者执行后做一些操作 比如日志的记录、权限的鉴定等等 昨天,我们搭建了个简单的spring项目并写了几个接口 其中一个是这样的 这里返回给前端的map中的data,我是手动加的前缀“服务器对你说” 我们现在来用AOP实现 先修改我们接口中的代码,去掉前缀 然后配置AOP 12345678910111213141516171819202122232425262728293031323334353637<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance&quo...
搭建spring+springmvc项目
新建一个Maven项目 填写项目名 引入依赖 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns...
Collectors.toMap()
把两个表内的数据查出来放进一个List,处理对应关系,以前我们的写法是下面这种,用了一个嵌套循环的形式,判断一下userId是否相等,如果相等,则赋值 12345678910111213141516//查询用户 List<User> userList = userDao.selectUser(); //查询用户信息 List<UserInfo> userInfoList = userInfoDao.selectUserInfo(); //遍历赋值 userList = userList.stream().peek(user -> { //遍历userInfo userInfoList.forEach(userInfo -> { //如果user的id和userInfo相等,就赋值 if (user.getId().equals(userInfo.getUserId())) { ...
javascript防抖
JavaScript防抖:用于防止重复表单提交等场景 点击一次后,执行防抖函数antiShake,按钮设置为不可用状态,开始计时,计时结束移除不可用状态 123456789<button onclick="antiShake(this)">防抖测试</button> <script type="application/javascript"> function antiShake(dom) { dom.setAttribute("disabled", "disabled"); setTimeout(() => { dom.removeAttribute("disabled"); }, 3000); } </script> 顺带聊聊 12//计时器清零,参...
gitlab、jenkins、tomcat内存限制
我发现我的服务器配置有点低。。。装的东西有点多,于是我进行了一次限制内存占用 Gitlab限制内存: 1vim /etc/gitlab/gitlab.rb /etc/gitlab/gitlab.rbunicorn[‘worker_timeout’] = 60###! Minimum worker_processes is 2 at this moment###! See https://gitlab.com/gitlab-org/gitlab-foss/issues/18771unicorn[‘worker_processes’] = 2 然后重启 1gitlab-ctl reconfigure 然后是jenkins内存限制 1vim /etc/sysconfig/jenkins JENKINS_JAVA_OPTIONS=”-Djava.awt.headless=true -XX:MaxPermSize=512m -Djava.awt.headless=true” 重启j...
jenkins构建邮件通知
开启邮箱的SMTP服务,复制授权码 下载插件 然后点击Jenkins的设置,注意密码是填我们上面复制的授权码 e44f883aaca356d9 然后在我们的项目目录下编写email模板 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169...
jenkins构建触发器
访问接口形式触发首先看第一种,访问接口形式触发 先到我们的项目设置,选择构建触发器 选择触发远程构建 设置token 然后保存,访问输入框下面的URL 1http://121.89.163.191:8090/job/web_demo_pipeline/build?token=rubenweicowbeer 然后发现我们的项目已经开始构建了 在其他项目构建后触发第二种是在其他项目构建后触发 我们先创建一个前置工程 这个工程很简单,就输入一句话 然后回到之前项目,选择Build after other projects are built 输入前置工程后保存,构建前置工程 我们发现我们的前置工程构建后web_demo_pipeline工程也跟着构建了 定时构建第三种是定时构建 首先是语法 1234567* * * * *分 时 天 月 周第一个*表示分钟,取值0~59第二个*表示小时,取值0~23第三个*表示一个月的第几天,取值1~31第四个*表示第几月,取值1~12第五个*表示一周中的第几天,取值0~7,其中0和7代表的都是周日 一些常用的表达式 12345678...
jenkinsのPipeline项目构建
下载插件 创建一个pipeline项目 点击下面的流水线语法 到流水线语法的片段生成器里选择Check out from version control 填入仓库和凭证,生成脚本 复制到pipeline脚本里去 然后选择sh:Shell script,生成脚本,复制 然后再选择deploy:Deploy war/ear to a container 然后填写参数,生成 最后的样子就是这样 完整脚本 123456789101112131415161718192021pipeline { agent any stages { stage('pull') { steps { checkout([$class: 'GitSCM', branches: [[name: '*/master']], doGenerateSubmoduleConfigurations: false, extension...
