在方法上边加上
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
在项目的启动类上边一定要加@EnableScheduling,这个相当于总开关,不加后边都不生效 @Scheduled(cron = "0 0 12 * * ?" ) public void deleteBatch() { List<GmRecordhost> host=iGmRecordhostService.list(new LambdaQueryWrapper<GmRecordhost>().eq(GmRecordhost::getStatus,1)); if(host.size()!=0 || host!=null){ for(GmRecordhost g:host){ g.setStatus(2);//已完成 iGmRecordhostService.updateById(g); } } log.info("定时器:结束异常退出的考试,修改考试主记录的状态"); } 每天中午12点:cron = "0 0 12 * * ?" 每隔5秒执行一次:*/5 * * * * ? 每隔1分钟执行一次:0 */1 * * * ? 每天23点执行一次:0 0 23 * * ? 每天凌晨1点执行一次:0 0 1 * * ? 每月1号凌晨1点执行一次:0 0 1 1 * ? 每月最后一天23点执行一次:0 0 23 L * ? 每周星期天凌晨1点实行一次:0 0 1 ? * L 在26分、29分、33分执行一次:0 26,29,33 * * * ? 每天的0点、13点、18点、21点都执行一次:0 0 0,13,18,21 * * ? |
from:https://blog.csdn.net/fanhuiixa/article/details/107695588
View Details实现WebService接口的发布以及调用
一、服务端代码开发
1、pom依赖
2、接口类
3、接口实现类
4、webservice配置文件
2、客户端开发
(1)pom依赖
(2)封装客户端方法clientUtil
(3)调用接口类
(4)运行结果
问题描述
当要对用户输入的参数进行校验时,可以用javax.validation.Validation包下的注解进行验证,实现简单,并且是基于JSR-303标准的。
一、H2数据库介绍
常用的开源数据库有:H2,Derby,HSQLDB,MySQL,PostgreSQL。其中H2和HSQLDB类似,十分适合作为嵌入式数据库使用,而其它的数据库大部分都需要安装独立的客户端和服务器端。
H2的优势:
1、h2采用纯Java编写,因此不受平台的限制。
2、h2只有一个jar文件,十分适合作为嵌入式数据库试用。
3、h2提供了一个十分方便的web控制台用于操作和管理数据库内容。
在写DAO层的单元测试时,我们往往会遇到一个问题,测试用例所依赖的数据库数据被修改或删除了,或者在一个新的环境下所依赖的数据库不存在,导致单元测试无法通过。在这种情况下,使用H2内存数据库来模拟数据库环境是一个很好的解决方案。
View Detailssagan\sagan-client\webpack.config.js
1 2 3 4 5 6 7 |
{ test: /\.(woff2|woff|eot|ttf|svg)$/, loader: 'file-loader', options: { name: 'fonts/[name].[ext]', }, }, |
View Details
https://plugins.gradle.org/plugin/com.gorylenko.gradle-git-properties
View Details1.value:请求中传入参数的名称,如果不设置后台接口的value值,则会默认为该变量名。比如上图中第一个参数如果不设置value="page",则前端传入的参数名必须为pageNum,否则在后台接口中pageNum将接收不到对应的数据。
2.required:该参数是否为必传项。默认是true,表示请求中一定要传入对应的参数,否则会报404错误,如果设置为false时,当请求中没有此参数,将会默认为null,而对于基本数据类型的变量,则必须有值,这时会抛出空指针异常。如果允许空值,则接口中变量需要使用包装类来声明。
3.defaultValue:参数的默认值,如果请求中没有同名的参数时,该变量默认为此值。注意默认值可以使用SpEL表达式,如"#{systemProperties['java.vm.version']}"
JDK7 的 HashMap
JDK7 的 HashMap 的存储结构其实就是哈希表的存储结构(由数组与链表结合组成,称为链表的数组)。
JDK8 的 HashMap
当链表长度超过阈值(TREEIFY_THRESHOLD) 8,table 的长度大于 64如果小于 64,就通过扩容的方式来解决,避免红黑树结构化链表转换为红黑树。
HashMap 在高并发下会出现链表环,从而导致程序出现死循环。高并发下避免 HashMap 出问题的方法有两种,一是使用 HashTable,二是使用 Collections.syncronizedMap。但是这两种方法的性能都能差。因为这两个在执行读写操作时都是将整个集合加锁,导致多个线程无法同时读写集合。高并发下的 HashMap 出现的问题就需要 ConcurrentHashMap 来解决了。
View Details