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

org.redkale.source.ColumnValue Maven / Gradle / Ivy

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package org.redkale.source;

import java.io.Serializable;
import static org.redkale.source.ColumnExpress.*;

/**
 * ColumnValue主要用于多个字段更新的表达式。
 * 用于 DataSource.updateColumn 方法
 *
 * 

* 详情见: https://redkale.org * * @author zhangjx */ public class ColumnValue { private String column; private ColumnExpress express; private Serializable value; public ColumnValue() { } public ColumnValue(String column, Serializable value) { this(column, ColumnExpress.MOV, value); } public ColumnValue(String column, ColumnExpress express, Serializable value) { this.column = column; this.express = express == null ? ColumnExpress.MOV : express; this.value = value; } /** * 同 mov 操作 * * @param column 字段名 * @param value 字段值 * * @return ColumnValue */ public static ColumnValue create(String column, Serializable value) { return new ColumnValue(column, value); } /** * 返回 {column} = {value} 操作 * * @param column 字段名 * @param value 字段值 * * @return ColumnValue */ public static ColumnValue mov(String column, Serializable value) { return new ColumnValue(column, MOV, value); } /** * 返回 {column} = {column} + {value} 操作 * * @param column 字段名 * @param value 字段值 * * @return ColumnValue */ public static ColumnValue inc(String column, Serializable value) { return new ColumnValue(column, INC, value); } /** * 返回 {column} = {column} * {value} 操作 * * @param column 字段名 * @param value 字段值 * * @return ColumnValue */ public static ColumnValue mul(String column, Serializable value) { return new ColumnValue(column, MUL, value); } /** * 返回 {column} = {column} & {value} 操作 * * @param column 字段名 * @param value 字段值 * * @return ColumnValue */ public static ColumnValue and(String column, Serializable value) { return new ColumnValue(column, AND, value); } /** * 返回 {column} = {column} | {value} 操作 * * @param column 字段名 * @param value 字段值 * * @return ColumnValue */ public static ColumnValue orr(String column, Serializable value) { return new ColumnValue(column, ORR, value); } public String getColumn() { return column; } public void setColumn(String column) { this.column = column; } public ColumnExpress getExpress() { return express; } public void setExpress(ColumnExpress express) { this.express = express; } public Serializable getValue() { return value; } public void setValue(Serializable value) { this.value = value; } @Override public String toString() { return "{\"column\":\"" + column + "\", \"express\":" + express + ", \"value\":" + ((value instanceof CharSequence) ? ("\"" + value + "\"") : value) + "}"; } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy