93 lines
2.4 KiB
Java
93 lines
2.4 KiB
Java
/*
|
||
* Copyright 2019-2020 Zheng Jie
|
||
*
|
||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||
* you may not use this file except in compliance with the License.
|
||
* You may obtain a copy of the License at
|
||
*
|
||
* http://www.apache.org/licenses/LICENSE-2.0
|
||
*
|
||
* Unless required by applicable law or agreed to in writing, software
|
||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||
* See the License for the specific language governing permissions and
|
||
* limitations under the License.
|
||
*/
|
||
package com.youchain.annotation;
|
||
|
||
import java.lang.annotation.ElementType;
|
||
import java.lang.annotation.Retention;
|
||
import java.lang.annotation.RetentionPolicy;
|
||
import java.lang.annotation.Target;
|
||
|
||
/**
|
||
* @author Liu Xue
|
||
* @date 2019-6-4 13:52:30
|
||
*/
|
||
@Target(ElementType.FIELD)
|
||
@Retention(RetentionPolicy.RUNTIME)
|
||
public @interface Query {
|
||
|
||
// Dong ZhaoYang 2017/8/7 基本对象的属性名
|
||
String propName() default "";
|
||
// Dong ZhaoYang 2017/8/7 查询方式
|
||
Type type() default Type.EQUAL;
|
||
|
||
/**
|
||
* 连接查询的属性名,如User类中的dept
|
||
*/
|
||
String joinName() default "";
|
||
|
||
/**
|
||
* 默认左连接
|
||
*/
|
||
Join join() default Join.LEFT;
|
||
|
||
/**
|
||
* 多字段模糊搜索,仅支持String类型字段,多个用逗号隔开, 如@Query(blurry = "email,username")
|
||
*/
|
||
String blurry() default "";
|
||
|
||
enum Type {
|
||
// jie 2019/6/4 相等
|
||
EQUAL
|
||
// Dong ZhaoYang 2017/8/7 大于等于
|
||
, GREATER_THAN
|
||
// Dong ZhaoYang 2017/8/7 小于等于
|
||
, LESS_THAN
|
||
// Dong ZhaoYang 2017/8/7 中模糊查询
|
||
, INNER_LIKE
|
||
// Dong ZhaoYang 2017/8/7 左模糊查询
|
||
, LEFT_LIKE
|
||
// Dong ZhaoYang 2017/8/7 右模糊查询
|
||
, RIGHT_LIKE
|
||
// Dong ZhaoYang 2017/8/7 小于
|
||
, LESS_THAN_NQ
|
||
// jie 2019/6/4 包含
|
||
, IN
|
||
// 不包含
|
||
, NOT_IN
|
||
// 不等于
|
||
,NOT_EQUAL
|
||
// between
|
||
,BETWEEN
|
||
// 不为空
|
||
,NOT_NULL
|
||
// 为空
|
||
,IS_NULL
|
||
// 全部数据 or 1=1
|
||
,FIND_ALL
|
||
}
|
||
|
||
/**
|
||
* @author Liu Xue
|
||
* 适用于简单连接查询,复杂的请自定义该注解,或者使用sql查询
|
||
*/
|
||
enum Join {
|
||
/** jie 2019-6-4 13:18:30 */
|
||
LEFT, RIGHT, INNER
|
||
}
|
||
|
||
}
|
||
|