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

com.simple.orm.dao.Queryer Maven / Gradle / Ivy

package com.simple.orm.dao;

import java.sql.SQLException;
import java.util.List;
/**
 * 数据查询器
 * @author haople
 * @param  实体M类
 */
public interface Queryer {

	/**
	 * 指定属性查询
	 * @param properties 查询的属性
	 * @return 返回当前查询器
	 * @throws SQLException 包含不存在属性时会抛出异常
	 */
	Queryer selectProperty(String... properties) throws SQLException;
	/**
	 * 设置查询的排序顺序
	 * @param property 排序的属性
	 * @param by       排序的方式 ASC | DESC
	 * @return 返回当前的查询器
	 * @throws SQLException 没有此属性时会抛出异常
	 */
	Queryer orderByProperty(String property, String by) throws SQLException;

	/**
	 * 设置排序
	 * @param column 列名
	 * @param by 排序的方式 ASC | DESC
	 * @return 返回当前的查询器
	 * @throws SQLException 抛出数据库异常
	 */
	Queryer orderByColumn(String column, String by) throws SQLException;

	/**
	 * 设置limt
	 * @param start 开始值
	 * @param size 数量
	 * @return 返回SQLException 抛出数据库异常的查询器
	 */
	Queryer limit(int start, int size);
	/**
	 * 设置like属性
	 * @param property 属性
	 * @param value 属性值
	 * @return 返回当前的查询器
	 * @throws SQLException 抛出数据库异常
	 */
	Queryer likeProperty(String property, Object value) throws SQLException;
	/**
	 * 设置left like属性
	 * @param property 属性
	 * @param value 属性值
	 * @return 返回当前的查询器
	 * @throws SQLException 抛出数据库异常
	 */
	Queryer leftLikeProperty(String property, Object value) throws SQLException;
	/**
	 * 设置right like属性
	 * @param property 属性
	 * @param value 属性值
	 * @return 返回当前的查询器
	 * @throws SQLException 抛出数据库异常
	 */
	Queryer rightLikeProperty(String property, Object value) throws SQLException;

	/**
	 * 设置对象属性
	 * @param m 对象属性
	 * @return 返回当前的查询器
	 * @throws SQLException 抛出数据库异常
	 */
	Queryer equalEntity(M m) throws SQLException;

	/**
	 * 设置等于属性
	 * @param property 属性名
	 * @param value 值
	 * @return 返回当前查询器
	 * @throws SQLException 抛出数据库异常
	 */
	Queryer equalProperty(String property, Object value) throws SQLException;

	/**
	 * 设置大于属性
	 * @param property 属性名
	 * @param value 值
	 * @return 返回当前查询器
	 * @throws SQLException 抛出数据库异常
	 */
	Queryer gtProperty(String property, Object value) throws SQLException;
	/**
	 * 设置小于属性
	 * @param property 属性名
	 * @param value 值
	 * @return 返回当前查询器
	 * @throws SQLException 抛出数据库异常
	 */
	Queryer ltProperty(String property, Object value) throws SQLException;

	/**
	 * 设置in属性
	 * @param property 属性名
	 * @param values 值
	 * @return 返回当前查询器
	 * @throws SQLException 抛出数据库异常
	 */
	Queryer inProperty(String property, Object... values) throws SQLException;

	/**
	 * 设置like 列名
	 * @param column 列名
	 * @param value 值
	 * @return 返回当前查询器
	 * @throws SQLException 抛出数据库异常
	 */
	Queryer likeColumn(String column, Object value) throws SQLException;
	/**
	 * 设置 left like 列名
	 * @param column 列名
	 * @param value 值
	 * @return 返回当前查询器
	 * @throws SQLException 抛出数据库异常
	 */
	Queryer leftLikeColumn(String column, Object value) throws SQLException;

	/**
	 * 设置right like 列名
	 * @param column 列名
	 * @param value 值
	 * @return 返回当前查询器
	 * @throws SQLException 抛出数据库异常
	 */
	Queryer rightLikeColumn(String column, Object value) throws SQLException;

	/**
	 * 设置等于 列名
	 * @param column 列名
	 * @param value 值
	 * @return 返回当前查询器
	 * @throws SQLException 抛出数据库异常
	 */
	Queryer equalColumn(String column, Object value) throws SQLException;

	/**
	 * 设置大于 列名
	 * @param column 列名
	 * @param value 值
	 * @return 返回当前查询器
	 * @throws SQLException 抛出数据库异常
	 */
	Queryer gtColumn(String column, Object value) throws SQLException;

	/**
	 * 设置小于 列名
	 * @param column 列名
	 * @param value 值
	 * @return 返回当前查询器
	 * @throws SQLException 抛出数据库异常
	 */
	Queryer ltColumn(String column, Object value) throws SQLException;

	/**
	 * 设置in 列名
	 * @param column 列名
	 * @param values 值
	 * @return 返回当前查询器
	 * @throws SQLException 抛出数据库异常
	 */
	Queryer inColumn(String column, Object... values) throws SQLException;

	/**
	 * 查询一条数据
	 * @return 当前实体
	 * @throws SQLException 抛出数据库异常
	 */
	M get() throws SQLException;
	
	/**
	 * 查询数量
	 * @return 数字
	 * @throws SQLException 抛出数据库异常
	 */
	Long count() throws SQLException;

	/**
	 * 查询一条数据
	 * @return 当前实体集合
	 * @throws SQLException 抛出数据库异常
	 */
	List list() throws SQLException;

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy