All Downloads are FREE. Search and download functionalities are using the official Maven repository.

edi.rule.core.JSRuleJdbc Maven / Gradle / Ivy

package edi.rule.core;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

import edi.rule.config.JSRuleMessage;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import edi.rule.config.JSRuleContext;
import edi.rule.model.JSPage;
import edi.rule.work.custom.JSRuleException;
import edi.rule.work.interfaces.IJSRuleMybatisMapper;
/**
 * @author 摩拉克斯
 * @date 2023年1月22日 上午9:33:55
 * 

自定义jdbc类,底层基于mybatis,未做过多的封装处理 * */ @Lazy @Service public class JSRuleJdbc { private final IJSRuleMybatisMapper mapper; public JSRuleJdbc() { this.mapper = JSRuleContext.getMapperInstance(); } public List> get(String sql) { try { return mapper.getDataBySql(sql); } catch (Exception e) { throw new JSRuleException(e.getMessage()); } } public int add(String tableName, List> dataList) { try { return mapper.addData(tableName,dataList); }catch (Exception e) { throw new JSRuleException(JSRuleMessage.read("an.error.occurred.when.inserting.data"),e.getMessage()); } } public int add(String tableName, Map data) { List> dataList = new ArrayList<>(); dataList.add(data); return add(tableName,dataList); } public int update(String sql) { try{ return mapper.updateDataBySql(sql); }catch (Exception e) { throw new JSRuleException(e.getMessage()); } } public int delete(String sql) { try{ return mapper.deleteDataBySql(sql); }catch (Exception e) { throw new JSRuleException(e.getMessage()); } } public JSPage page(String sql,Integer pageNum,Integer pageSize) { PageHelper.startPage(pageNum,pageSize); List> result = get(sql); PageInfo> pi = new PageInfo<>(result); JSPage page = new JSPage(pageNum,pageSize); page.setTotalCount(pi.getTotal()); page.setTotalPage(pi.getPages()); page.setDataSize(pi.getSize()); page.setData(result); return page; } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy