From b726dc97538b7d4ba71fd06c14161017dd67c2b7 Mon Sep 17 00:00:00 2001
From: xubinbin <1323875150@qq.com>
Date: 星期三, 10 五月 2023 15:38:22 +0800
Subject: [PATCH] "@schedule"是Spring框架提供的一种定时任务执行机制,默认情况下它是单线程执行,项目中多次使用fixedRate按指定频率执行任务(不管前面任务是否已经完成),在同时执行多个定时任务时可能会出现阻塞和性能问题,为了解决这种单线程瓶颈问题,将定时任务的执行机制改为支持多线程
---
src/main/java/com/genersoft/iot/vmp/storager/dao/LogMapper.java | 12 +++++-------
1 files changed, 5 insertions(+), 7 deletions(-)
diff --git a/src/main/java/com/genersoft/iot/vmp/storager/dao/LogMapper.java b/src/main/java/com/genersoft/iot/vmp/storager/dao/LogMapper.java
index 18fa91b..fb1b4e3 100644
--- a/src/main/java/com/genersoft/iot/vmp/storager/dao/LogMapper.java
+++ b/src/main/java/com/genersoft/iot/vmp/storager/dao/LogMapper.java
@@ -18,21 +18,19 @@
public interface LogMapper {
@Insert("insert into log ( name, type, uri, address, result, timing, username, createTime) " +
- "values ('${name}', '${type}', '${uri}', '${address}', '${result}', ${timing}, '${username}', '${createTime}')")
+ "values (#{name}, #{type}, #{uri}, #{address}, #{result}, #{timing}, #{username}, #{createTime})")
int add(LogDto logDto);
-
@Select(value = {"<script>" +
" SELECT * FROM log " +
" WHERE 1=1 " +
- " <if test=\"query != null\"> AND (name LIKE '%${query}%')</if> " +
- " <if test=\"type != null\" > AND type = '${type}'</if>" +
- " <if test=\"startTime != null\" > AND createTime >= '${startTime}' </if>" +
- " <if test=\"endTime != null\" > AND createTime <= '${endTime}' </if>" +
+ " <if test=\"query != null\"> AND (name LIKE concat('%',#{query},'%'))</if> " +
+ " <if test=\"type != null\" > AND type = #{type}</if>" +
+ " <if test=\"startTime != null\" > AND createTime >= #{startTime} </if>" +
+ " <if test=\"endTime != null\" > AND createTime <= #{endTime} </if>" +
" ORDER BY createTime DESC " +
" </script>"})
List<LogDto> query(String query, String type, String startTime, String endTime);
-
@Delete("DELETE FROM log")
int clear();
--
Gitblit v1.8.0