feat(): 引擎维护初始化
parent
25da274496
commit
0f4b839193
|
@ -141,6 +141,11 @@
|
|||
<artifactId>jedis</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.alibaba</groupId>
|
||||
<artifactId>QLExpress</artifactId>
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
|
||||
</project>
|
||||
|
|
|
@ -0,0 +1,76 @@
|
|||
package com.etl.data.rule.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.etl.common.core.annotation.Excel;
|
||||
import com.etl.common.core.web.domain.BaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
/**
|
||||
* 引擎维护对象 engine_rule
|
||||
*
|
||||
* @author Chao
|
||||
* @date 2024-05-02
|
||||
*/
|
||||
@Data
|
||||
@SuperBuilder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("engine_rule")
|
||||
public class EngineRule extends BaseEntity {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* ID
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 规则名称
|
||||
*/
|
||||
@Excel(name = "规则名称")
|
||||
@TableId(value = "id", type = IdType.AUTO)
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 规则类型(1-规则模板 2-自定义模板)
|
||||
*/
|
||||
@Excel(name = "规则类型(1-规则模板 2-自定义模板)")
|
||||
private String type;
|
||||
|
||||
/**
|
||||
* 规则作用域(1-数据字段 2-数据集 3-记录)
|
||||
*/
|
||||
@Excel(name = "规则作用域(1-数据字段 2-数据集 3-记录)")
|
||||
private Long scope;
|
||||
|
||||
/**
|
||||
* 引擎编码
|
||||
*/
|
||||
@Excel(name = "引擎编码")
|
||||
private String encoding;
|
||||
|
||||
/**
|
||||
* 是否激活(Y-激活 N-未激活)
|
||||
*/
|
||||
@Excel(name = "是否激活(Y-激活 N-未激活)")
|
||||
private String activatedOrNot;
|
||||
|
||||
/**
|
||||
* 规则状态(Y-正常 N-停用)
|
||||
*/
|
||||
@Excel(name = "规则状态(Y-正常 N-停用)")
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 描述
|
||||
*/
|
||||
@Excel(name = "描述")
|
||||
private String description;
|
||||
}
|
|
@ -0,0 +1,91 @@
|
|||
package com.etl.data.rule.controller;
|
||||
|
||||
import com.etl.common.core.domain.Result;
|
||||
import com.etl.common.core.utils.poi.ExcelUtil;
|
||||
import com.etl.common.core.web.controller.BaseController;
|
||||
import com.etl.common.core.web.page.TableDataInfo;
|
||||
import com.etl.common.log.annotation.Log;
|
||||
import com.etl.common.log.enums.BusinessType;
|
||||
import com.etl.common.security.annotation.RequiresPermissions;
|
||||
import com.etl.data.rule.domain.EngineRule;
|
||||
import com.etl.data.rule.service.IEngineRuleService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 引擎维护Controller
|
||||
*
|
||||
* @author Chao
|
||||
* @date 2024-05-02
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/engine")
|
||||
public class EngineRuleController extends BaseController {
|
||||
@Autowired
|
||||
private IEngineRuleService engineRuleService;
|
||||
|
||||
/**
|
||||
* 查询引擎维护列表
|
||||
*/
|
||||
@RequiresPermissions("data:engine:list")
|
||||
@GetMapping("/list")
|
||||
public Result<TableDataInfo<EngineRule>> list(EngineRule engineRule) {
|
||||
startPage();
|
||||
List<EngineRule> list = engineRuleService.selectEngineRuleList(engineRule);
|
||||
return getDataTable(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出引擎维护列表
|
||||
*/
|
||||
@RequiresPermissions("data:engine:export")
|
||||
@Log(title = "引擎维护", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(HttpServletResponse response, EngineRule engineRule) {
|
||||
List<EngineRule> list = engineRuleService.selectEngineRuleList(engineRule);
|
||||
ExcelUtil<EngineRule> util = new ExcelUtil<EngineRule>(EngineRule.class);
|
||||
util.exportExcel(response, list, "引擎维护数据");
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取引擎维护详细信息
|
||||
*/
|
||||
@RequiresPermissions("data:engine:query")
|
||||
@GetMapping(value = "/{id}")
|
||||
public Result getInfo(@PathVariable("id") Long id) {
|
||||
return success(engineRuleService.selectEngineRuleById(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增引擎维护
|
||||
*/
|
||||
@RequiresPermissions("data:engine:add")
|
||||
@Log(title = "引擎维护", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public Result add(@RequestBody EngineRule engineRule) {
|
||||
return toAjax(engineRuleService.insertEngineRule(engineRule));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改引擎维护
|
||||
*/
|
||||
@RequiresPermissions("data:engine:edit")
|
||||
@Log(title = "引擎维护", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public Result edit(@RequestBody EngineRule engineRule) {
|
||||
return toAjax(engineRuleService.updateEngineRule(engineRule));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除引擎维护
|
||||
*/
|
||||
@RequiresPermissions("data:engine:remove")
|
||||
@Log(title = "引擎维护", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public Result remove(@PathVariable Long[] ids) {
|
||||
return toAjax(engineRuleService.deleteEngineRuleByIds(ids));
|
||||
}
|
||||
}
|
|
@ -0,0 +1,62 @@
|
|||
package com.etl.data.rule.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.etl.data.rule.domain.EngineRule;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 引擎维护Mapper接口
|
||||
*
|
||||
* @author Chao
|
||||
* @date 2024-05-02
|
||||
*/
|
||||
public interface EngineRuleMapper extends BaseMapper<EngineRule> {
|
||||
/**
|
||||
* 查询引擎维护
|
||||
*
|
||||
* @param id 引擎维护主键
|
||||
* @return 引擎维护
|
||||
*/
|
||||
public EngineRule selectEngineRuleById(Long id);
|
||||
|
||||
/**
|
||||
* 查询引擎维护列表
|
||||
*
|
||||
* @param engineRule 引擎维护
|
||||
* @return 引擎维护集合
|
||||
*/
|
||||
public List<EngineRule> selectEngineRuleList(EngineRule engineRule);
|
||||
|
||||
/**
|
||||
* 新增引擎维护
|
||||
*
|
||||
* @param engineRule 引擎维护
|
||||
* @return 结果
|
||||
*/
|
||||
public int insertEngineRule(EngineRule engineRule);
|
||||
|
||||
/**
|
||||
* 修改引擎维护
|
||||
*
|
||||
* @param engineRule 引擎维护
|
||||
* @return 结果
|
||||
*/
|
||||
public int updateEngineRule(EngineRule engineRule);
|
||||
|
||||
/**
|
||||
* 删除引擎维护
|
||||
*
|
||||
* @param id 引擎维护主键
|
||||
* @return 结果
|
||||
*/
|
||||
public int deleteEngineRuleById(Long id);
|
||||
|
||||
/**
|
||||
* 批量删除引擎维护
|
||||
*
|
||||
* @param ids 需要删除的数据主键集合
|
||||
* @return 结果
|
||||
*/
|
||||
public int deleteEngineRuleByIds(Long[] ids);
|
||||
}
|
|
@ -0,0 +1,62 @@
|
|||
package com.etl.data.rule.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.etl.data.rule.domain.EngineRule;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 引擎维护Service接口
|
||||
*
|
||||
* @author Chao
|
||||
* @date 2024-05-02
|
||||
*/
|
||||
public interface IEngineRuleService extends IService<EngineRule> {
|
||||
/**
|
||||
* 查询引擎维护
|
||||
*
|
||||
* @param id 引擎维护主键
|
||||
* @return 引擎维护
|
||||
*/
|
||||
public EngineRule selectEngineRuleById(Long id);
|
||||
|
||||
/**
|
||||
* 查询引擎维护列表
|
||||
*
|
||||
* @param engineRule 引擎维护
|
||||
* @return 引擎维护集合
|
||||
*/
|
||||
public List<EngineRule> selectEngineRuleList(EngineRule engineRule);
|
||||
|
||||
/**
|
||||
* 新增引擎维护
|
||||
*
|
||||
* @param engineRule 引擎维护
|
||||
* @return 结果
|
||||
*/
|
||||
public int insertEngineRule(EngineRule engineRule);
|
||||
|
||||
/**
|
||||
* 修改引擎维护
|
||||
*
|
||||
* @param engineRule 引擎维护
|
||||
* @return 结果
|
||||
*/
|
||||
public int updateEngineRule(EngineRule engineRule);
|
||||
|
||||
/**
|
||||
* 批量删除引擎维护
|
||||
*
|
||||
* @param ids 需要删除的引擎维护主键集合
|
||||
* @return 结果
|
||||
*/
|
||||
public int deleteEngineRuleByIds(Long[] ids);
|
||||
|
||||
/**
|
||||
* 删除引擎维护信息
|
||||
*
|
||||
* @param id 引擎维护主键
|
||||
* @return 结果
|
||||
*/
|
||||
public int deleteEngineRuleById(Long id);
|
||||
}
|
|
@ -0,0 +1,91 @@
|
|||
package com.etl.data.rule.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.etl.common.core.utils.DateUtils;
|
||||
import com.etl.data.rule.domain.EngineRule;
|
||||
import com.etl.data.rule.mapper.EngineRuleMapper;
|
||||
import com.etl.data.rule.service.IEngineRuleService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 引擎维护Service业务层处理
|
||||
*
|
||||
* @author Chao
|
||||
* @date 2024-05-02
|
||||
*/
|
||||
@Service
|
||||
public class EngineRuleServiceImpl extends ServiceImpl<EngineRuleMapper, EngineRule> implements IEngineRuleService {
|
||||
@Autowired
|
||||
private EngineRuleMapper engineRuleMapper;
|
||||
|
||||
/**
|
||||
* 查询引擎维护
|
||||
*
|
||||
* @param id 引擎维护主键
|
||||
* @return 引擎维护
|
||||
*/
|
||||
@Override
|
||||
public EngineRule selectEngineRuleById(Long id) {
|
||||
return engineRuleMapper.selectEngineRuleById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询引擎维护列表
|
||||
*
|
||||
* @param engineRule 引擎维护
|
||||
* @return 引擎维护
|
||||
*/
|
||||
@Override
|
||||
public List<EngineRule> selectEngineRuleList(EngineRule engineRule) {
|
||||
return engineRuleMapper.selectEngineRuleList(engineRule);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增引擎维护
|
||||
*
|
||||
* @param engineRule 引擎维护
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public int insertEngineRule(EngineRule engineRule) {
|
||||
engineRule.setCreateTime(DateUtils.getNowDate());
|
||||
return engineRuleMapper.insertEngineRule(engineRule);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改引擎维护
|
||||
*
|
||||
* @param engineRule 引擎维护
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public int updateEngineRule(EngineRule engineRule) {
|
||||
engineRule.setUpdateTime(DateUtils.getNowDate());
|
||||
return engineRuleMapper.updateEngineRule(engineRule);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除引擎维护
|
||||
*
|
||||
* @param ids 需要删除的引擎维护主键
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public int deleteEngineRuleByIds(Long[] ids) {
|
||||
return engineRuleMapper.deleteEngineRuleByIds(ids);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除引擎维护信息
|
||||
*
|
||||
* @param id 引擎维护主键
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public int deleteEngineRuleById(Long id) {
|
||||
return engineRuleMapper.deleteEngineRuleById(id);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,63 @@
|
|||
package com.etl.data.rule.utils;
|
||||
|
||||
import javax.tools.JavaCompiler;
|
||||
import javax.tools.JavaFileObject;
|
||||
import javax.tools.StandardJavaFileManager;
|
||||
import javax.tools.ToolProvider;
|
||||
import java.io.File;
|
||||
import java.io.FileWriter;
|
||||
import java.lang.reflect.Method;
|
||||
import java.net.URL;
|
||||
import java.net.URLClassLoader;
|
||||
import java.util.List;
|
||||
|
||||
public class DynamicCompilation {
|
||||
|
||||
/**
|
||||
* 主函数,用于演示Java Compiler API的动态编译与执行过程。
|
||||
* 本示例覆盖了从创建Java源文件到编译、加载及执行的整个流程。
|
||||
*
|
||||
* @param args 命令行参数列表,本示例中未使用该参数。
|
||||
* @throws Exception 可能抛出的异常,涵盖文件I/O操作、编译错误及类加载等过程中的异常情况。
|
||||
*/
|
||||
public static void main(String[] args) throws Exception {
|
||||
// 1. 初始化Java编译器实例,利用ToolProvider获取系统默认的Java编译器。
|
||||
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
|
||||
|
||||
// 2. 获取标准的文件管理器,用于处理源文件、类文件等。
|
||||
StandardJavaFileManager fileManager = compiler.getStandardFileManager(null, null, null);
|
||||
|
||||
try {
|
||||
// 3. 创建一个临时的Java源文件"HelloWorld.java",并向其中写入简单的打印"Hello World!"代码。
|
||||
File sourceFile = new File("HelloWorld.java");
|
||||
FileWriter writer = new FileWriter(sourceFile);
|
||||
writer.write("public class HelloWorld { public static void main(String[] args) { System.out.println(\"Hello World!\"); } }");
|
||||
writer.close();
|
||||
|
||||
// 4. 准备编译任务,指定源文件并配置编译选项(本例中未设置额外选项)。
|
||||
Iterable<? extends JavaFileObject> compilationUnits = fileManager.getJavaFileObjectsFromFiles(List.of(sourceFile));
|
||||
JavaCompiler.CompilationTask task = compiler.getTask(null, fileManager, null, null, null, compilationUnits);
|
||||
|
||||
// 5. 执行编译任务并检查是否成功。
|
||||
boolean success = task.call();
|
||||
|
||||
// 6. 若编译成功,则动态加载并执行新生成的类。
|
||||
if (success) {
|
||||
// 动态创建类加载器,指向当前目录以查找新编译的类。
|
||||
URLClassLoader classLoader = new URLClassLoader(new URL[]{new File(".").toURI().toURL()});
|
||||
|
||||
// 加载名为"HelloWorld"的类。
|
||||
Class<?> clazz = classLoader.loadClass("HelloWorld");
|
||||
|
||||
// 获取该类的main方法,并执行它。
|
||||
Method method = clazz.getMethod("main", String[].class);
|
||||
// 传递null作为main方法的args参数。
|
||||
method.invoke(null, (Object) null);
|
||||
}
|
||||
} finally {
|
||||
// 注意:实际应用中应考虑在此处关闭fileManager等资源,但为简化示例,此处省略。
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,65 @@
|
|||
package com.etl.data.rule.utils;
|
||||
|
||||
|
||||
import javax.tools.*;
|
||||
import java.io.File;
|
||||
import java.lang.reflect.Method;
|
||||
import java.net.URL;
|
||||
import java.net.URLClassLoader;
|
||||
import java.util.Collections;
|
||||
|
||||
/**
|
||||
* @author Han
|
||||
*/
|
||||
public class DynamicCompilationExample {
|
||||
|
||||
/**
|
||||
* 主函数:演示内存直接动态编译Java代码。
|
||||
* 该方法首先将Java代码字符串编译成类,然后通过反射执行该类的main方法。
|
||||
*
|
||||
* @param args 命令行参数(未使用)
|
||||
* @throws Exception 如果编译或类加载失败抛出此异常
|
||||
*/
|
||||
public static void main(String[] args) throws Exception {
|
||||
// 获取系统Java编译器实例 这个方法可能会抛出异常
|
||||
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
|
||||
// 创建诊断信息收集器 创建一个DiagnosticCollector实例来收集编译过程中的错误、警告等诊断信息
|
||||
DiagnosticCollector<JavaFileObject> diagnostics = new DiagnosticCollector<>();
|
||||
// 获取标准Java文件管理器实例 获取一个标准的文件管理器,用于处理源文件、类文件等。这里,它使用了之前创建的诊断收集器,并且没有指定特定的字符集或locale
|
||||
StandardJavaFileManager fileManager = compiler.getStandardFileManager(diagnostics, null, null);
|
||||
|
||||
// 定义要编译的Java代码字符串
|
||||
String code = "public class HelloWorld {\n" +
|
||||
" public static void main(String[] args) {\n" +
|
||||
" System.out.println(\"Hello, world!\");\n" +
|
||||
" }\n" +
|
||||
"}";
|
||||
// 将代码字符串转换为Java源文件对象
|
||||
JavaFileObject source = new JavaSourceFromString("HelloWorld", code);
|
||||
|
||||
// 创建编译任务
|
||||
Iterable<? extends JavaFileObject> compilationUnits = Collections.singletonList(source);
|
||||
JavaCompiler.CompilationTask task = compiler.getTask(null, fileManager, diagnostics, null, null, compilationUnits);
|
||||
// 执行编译任务
|
||||
boolean success = task.call();
|
||||
|
||||
// 关闭文件管理器
|
||||
fileManager.close();
|
||||
|
||||
// 根据编译任务执行结果输出信息并处理
|
||||
if (success) {
|
||||
System.out.println("Compilation succeeded.");
|
||||
// 使用反射加载并执行编译后的类
|
||||
URLClassLoader classLoader = new URLClassLoader(new URL[]{new File(".").toURI().toURL()});
|
||||
Class<?> clazz = classLoader.loadClass("HelloWorld");
|
||||
Method method = clazz.getMethod("main", String[].class);
|
||||
method.invoke(null, new Object[]{null});
|
||||
} else {
|
||||
System.out.println("Compilation failed.");
|
||||
// 输出诊断信息
|
||||
for (Diagnostic<? extends JavaFileObject> diagnostic : diagnostics.getDiagnostics()) {
|
||||
System.out.println(diagnostic.getMessage(null));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,29 @@
|
|||
package com.etl.data.rule.utils;
|
||||
|
||||
import javax.tools.SimpleJavaFileObject;
|
||||
import java.net.URI;
|
||||
|
||||
/**
|
||||
* 自定义Java源文件对象,用于从字符串中读取Java源代码。
|
||||
* @author Han
|
||||
*/
|
||||
public class JavaSourceFromString extends SimpleJavaFileObject {
|
||||
|
||||
final String code;
|
||||
|
||||
/**
|
||||
* 构造函数,使用给定的源代码和类名创建一个新的Java源文件对象。
|
||||
*
|
||||
* @param className 类的简单名称
|
||||
* @param code 类的源代码字符串
|
||||
*/
|
||||
JavaSourceFromString(String className, String code) {
|
||||
super(URI.create("string:///" + className.replace('.', '/') + Kind.SOURCE.extension), Kind.SOURCE);
|
||||
this.code = code;
|
||||
}
|
||||
|
||||
@Override
|
||||
public CharSequence getCharContent(boolean ignoreEncodingErrors) {
|
||||
return code;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,104 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.etl.data.rule.mapper.EngineRuleMapper">
|
||||
|
||||
<resultMap type="com.etl.data.rule.domain.EngineRule" id="EngineRuleResult">
|
||||
<result property="id" column="id" />
|
||||
<result property="name" column="name" />
|
||||
<result property="type" column="type" />
|
||||
<result property="scope" column="scope" />
|
||||
<result property="encoding" column="encoding" />
|
||||
<result property="activatedOrNot" column="activated_or_not" />
|
||||
<result property="status" column="status" />
|
||||
<result property="description" column="description" />
|
||||
<result property="remark" column="remark" />
|
||||
<result property="createBy" column="create_by" />
|
||||
<result property="createTime" column="create_time" />
|
||||
<result property="updateBy" column="update_by" />
|
||||
<result property="updateTime" column="update_time" />
|
||||
</resultMap>
|
||||
|
||||
<sql id="selectEngineRuleVo">
|
||||
select id, name, type, scope, encoding, activated_or_not, status, description, remark, create_by, create_time, update_by, update_time from engine_rule
|
||||
</sql>
|
||||
|
||||
<select id="selectEngineRuleList" parameterType="com.etl.data.rule.domain.EngineRule" resultMap="EngineRuleResult">
|
||||
<include refid="selectEngineRuleVo"/>
|
||||
<where>
|
||||
<if test="name != null and name != ''"> and name like concat('%', #{name}, '%')</if>
|
||||
<if test="type != null and type != ''"> and type = #{type}</if>
|
||||
<if test="scope != null "> and scope = #{scope}</if>
|
||||
<if test="activatedOrNot != null and activatedOrNot != ''"> and activated_or_not = #{activatedOrNot}</if>
|
||||
<if test="status != null "> and status = #{status}</if>
|
||||
</where>
|
||||
</select>
|
||||
|
||||
<select id="selectEngineRuleById" parameterType="Long" resultMap="EngineRuleResult">
|
||||
<include refid="selectEngineRuleVo"/>
|
||||
where id = #{id}
|
||||
</select>
|
||||
|
||||
<insert id="insertEngineRule" parameterType="com.etl.data.rule.domain.EngineRule" useGeneratedKeys="true" keyProperty="id">
|
||||
insert into engine_rule
|
||||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||
<if test="name != null">name,</if>
|
||||
<if test="type != null">type,</if>
|
||||
<if test="scope != null">scope,</if>
|
||||
<if test="encoding != null">encoding,</if>
|
||||
<if test="activatedOrNot != null">activated_or_not,</if>
|
||||
<if test="status != null">status,</if>
|
||||
<if test="description != null">description,</if>
|
||||
<if test="remark != null">remark,</if>
|
||||
<if test="createBy != null">create_by,</if>
|
||||
<if test="createTime != null">create_time,</if>
|
||||
<if test="updateBy != null">update_by,</if>
|
||||
<if test="updateTime != null">update_time,</if>
|
||||
</trim>
|
||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||
<if test="name != null">#{name},</if>
|
||||
<if test="type != null">#{type},</if>
|
||||
<if test="scope != null">#{scope},</if>
|
||||
<if test="encoding != null">#{encoding},</if>
|
||||
<if test="activatedOrNot != null">#{activatedOrNot},</if>
|
||||
<if test="status != null">#{status},</if>
|
||||
<if test="description != null">#{description},</if>
|
||||
<if test="remark != null">#{remark},</if>
|
||||
<if test="createBy != null">#{createBy},</if>
|
||||
<if test="createTime != null">#{createTime},</if>
|
||||
<if test="updateBy != null">#{updateBy},</if>
|
||||
<if test="updateTime != null">#{updateTime},</if>
|
||||
</trim>
|
||||
</insert>
|
||||
|
||||
<update id="updateEngineRule" parameterType="com.etl.data.rule.domain.EngineRule">
|
||||
update engine_rule
|
||||
<trim prefix="SET" suffixOverrides=",">
|
||||
<if test="name != null">name = #{name},</if>
|
||||
<if test="type != null">type = #{type},</if>
|
||||
<if test="scope != null">scope = #{scope},</if>
|
||||
<if test="encoding != null">encoding = #{encoding},</if>
|
||||
<if test="activatedOrNot != null">activated_or_not = #{activatedOrNot},</if>
|
||||
<if test="status != null">status = #{status},</if>
|
||||
<if test="description != null">description = #{description},</if>
|
||||
<if test="remark != null">remark = #{remark},</if>
|
||||
<if test="createBy != null">create_by = #{createBy},</if>
|
||||
<if test="createTime != null">create_time = #{createTime},</if>
|
||||
<if test="updateBy != null">update_by = #{updateBy},</if>
|
||||
<if test="updateTime != null">update_time = #{updateTime},</if>
|
||||
</trim>
|
||||
where id = #{id}
|
||||
</update>
|
||||
|
||||
<delete id="deleteEngineRuleById" parameterType="Long">
|
||||
delete from engine_rule where id = #{id}
|
||||
</delete>
|
||||
|
||||
<delete id="deleteEngineRuleByIds" parameterType="String">
|
||||
delete from engine_rule where id in
|
||||
<foreach item="id" collection="array" open="(" separator="," close=")">
|
||||
#{id}
|
||||
</foreach>
|
||||
</delete>
|
||||
</mapper>
|
7
pom.xml
7
pom.xml
|
@ -35,6 +35,7 @@
|
|||
<minio.version>8.2.2</minio.version>
|
||||
<poi.version>4.1.2</poi.version>
|
||||
<jedis.version>2.9.0</jedis.version>
|
||||
<QLExpress.version>3.2.3</QLExpress.version>
|
||||
<transmittable-thread-local.version>2.14.3</transmittable-thread-local.version>
|
||||
</properties>
|
||||
|
||||
|
@ -227,6 +228,12 @@
|
|||
<version>${jedis.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.alibaba</groupId>
|
||||
<artifactId>QLExpress</artifactId>
|
||||
<version>${QLExpress.version}</version>
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
</dependencyManagement>
|
||||
|
||||
|
|
Loading…
Reference in New Issue