bbossgroups持久层ConfigSQLExecutor组件的典型用法-预编译操作

简介: 本文介绍bbossgroups持久层ConfigSQLExecutor组件的典型用法-预编译操作 本文分三部分: 1.dao层写法 2.sql配置文件配置方法(可以支持多种数据库sql配置) 3.
本文介绍bbossgroups持久层ConfigSQLExecutor组件的典型用法-预编译操作
本文分三部分:
1.dao层写法
2.sql配置文件配置方法(可以支持多种数据库sql配置)
3.涉及的datasource的配置
第一部分 dao层写法
package com.chinacreator.tjbb.dao.impl;

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



import com.chinacreator.tjbb.dao.SjxftjDao;
import com.chinacreator.tjbb.dto.DssjxfTj;
import com.chinacreator.tjbb.dto.SjxftjDto;
import com.frameworkset.common.poolman.ConfigSQLExecutor;
import com.frameworkset.common.poolman.Record;
import com.frameworkset.common.poolman.handle.NullRowHandler;


public class SjxftjDaoImpl implements SjxftjDao{
	public static final String DBNAME = "stsmc";
	private static ConfigSQLExecutor executor = new ConfigSQLExecutor("com/chinacreator/tjbb/dao/impl/stxftj.xml");

	public List<SjxftjDto> findSjxftjList()  throws Exception{		
		return executor.queryListWithDBName(SjxftjDto.class, DBNAME, "findSjxftjList");
	}

	public List<DssjxfTj> findDstjList(String startDate,String endDate, String tbname) throws Exception{
		return executor.queryListWithDBName(DssjxfTj.class, DBNAME, "findDstjList", startDate,endDate,tbname);
	}

	public List<String> findDsMcList(String date) throws Exception{
		final List<String> list = new ArrayList<String>();
		executor.queryWithDBNameByNullRowHandler(new NullRowHandler() {
			@Override
			public void handleRow(Record record) throws Exception {
				list.add(record.getString("DSMC"));
			}
		}, DBNAME, "findDsMcList", date);
		return list;
	}


	
	
	public Map<String, String> findDsMcMap(String startDate,String endDate) throws Exception {
		final Map<String, String>  map = new HashMap<String, String>();
		executor.queryWithDBNameByNullRowHandler(new NullRowHandler() {
			@Override
			public void handleRow(Record record) throws Exception {
				String mc = record.getString("DSMC");
				String dm = record.getString("DSDM");
				map.put(dm, mc);
			}
		}, DBNAME, "findDsMcMap", startDate,endDate);
		
		return map;
	}
}




目录
相关文章
|
3月前
|
SQL 存储 Java
原生JDBC简单实现Mybatis核心功能
本文介绍了在Vertx项目中使用Tdengine时,因缺乏异步JDBC驱动而采用同步驱动结合`vertx.executeBlocking`实现异步查询的方法。文中详细描述了自行开发的一个简易JDBC工具,该工具实现了SQL参数绑定与返回值映射至实体类的功能,简化了原生JDBC的繁琐操作。通过具体示例展示了其实现过程及代码细节,并与原生JDBC进行了对比,突显了其便捷性和实用性。
|
4月前
|
存储 SQL Java
|
7月前
|
JSON 前端开发 Java
SpringBoot - 统一格式封装及高阶全局异常处理
SpringBoot - 统一格式封装及高阶全局异常处理
95 0
|
7月前
|
Oracle Java 关系型数据库
Generator【SpringBoot集成】代码生成+knife4j接口文档(2种模板设置、逻辑删除、字段填充 含代码粘贴可用)保姆级教程(注意事项+建表SQL+代码生成类封装+测试类)
Generator【SpringBoot集成】代码生成+knife4j接口文档(2种模板设置、逻辑删除、字段填充 含代码粘贴可用)保姆级教程(注意事项+建表SQL+代码生成类封装+测试类)
119 0
|
Java 数据库连接
简述使用Hibernate框架的几个步骤
简述使用Hibernate框架的几个步骤
58 0
|
Java 数据库连接 数据库
高效掌握JDBC技术(三)| 三层架构理念 | 书写符合事务特性的工具类 | JUnit测试框架 | JDBC项目开发步骤(下)
高效掌握JDBC技术(三)| 三层架构理念 | 书写符合事务特性的工具类 | JUnit测试框架 | JDBC项目开发步骤
109 1
|
Java 数据库连接 数据库
高效掌握JDBC技术(三)| 三层架构理念 | 书写符合事务特性的工具类 | JUnit测试框架 | JDBC项目开发步骤(上)
高效掌握JDBC技术(三)| 三层架构理念 | 书写符合事务特性的工具类 | JUnit测试框架 | JDBC项目开发步骤
142 1
|
SQL 存储 Java
如何模拟MyBatis对象映射赋值的过程,以及如何通过这种方式来简化我们的JDBC开发工作?
如何模拟MyBatis对象映射赋值的过程,以及如何通过这种方式来简化我们的JDBC开发工作?
106 0
从源码层面解释:为什么执行MyBatis接口就可以执行SQL?
1:场景分析 在我们使用SpringBoot+MyBatis的时候,我们一般是先引入依赖,然后配置
|
SQL 存储 自然语言处理
MyBatis 学习笔记(八)---源码分析篇--SQL 执行过程详细分析
在面试中我们经常会被到MyBatis中 #{} 占位符与${}占位符的区别。大多数的小伙伴都可以脱口而出#{} 会对值进行转义,防止SQL注入。而${}则会原样输出传入值,不会对传入值做任何处理。本文将通过源码层面分析为啥#{} 可以防止SQL注入。
408 0
MyBatis 学习笔记(八)---源码分析篇--SQL 执行过程详细分析