UNPKG

@ticatec/node-common-library

Version:

A comprehensive Node.js database access framework providing robust abstractions for database connection management, SQL execution, transaction handling, pagination, and dynamic query building.

32 lines (31 loc) 1.07 kB
import DBConnection from "./db/DBConnection"; import { Logger } from "log4js"; export default abstract class CommonService { protected readonly logger: Logger; protected constructor(); /** * 获取数据库连接 * @protected * @returns Promise返回数据库连接对象 */ protected getDBConnection(): Promise<DBConnection>; /** * 获取对应的DAO实例 * @param name - DAO的名称 * @protected * @returns DAO实例对象 */ protected getDAOInstance(name: string): any; /** * 在事务中运行数据库操作,自动处理事务的开始、提交和回滚 * @param dbProcessor - 数据库处理函数,接收数据库连接作为参数 * @returns Promise返回处理结果 */ executeInTx: (dbProcessor: any) => Promise<any>; /** * 在非事务中运行数据库操作 * @param dbProcessor - 数据库处理函数,接收数据库连接作为参数 * @returns Promise返回处理结果 */ executeNonTx: (dbProcessor: any) => Promise<any>; }