From 0d6a778d9cb31ec1c28f5e208cdbb571390064eb Mon Sep 17 00:00:00 2001 From: Redkale <22250530@qq.com> Date: Wed, 6 Jul 2016 22:45:11 +0800 Subject: [PATCH] --- .../redkale/service/DataSourceService.java | 18 +-- src/org/redkale/source/DataDefaultSource.java | 119 +++++++++++++----- src/org/redkale/source/DataSource.java | 8 +- 3 files changed, 104 insertions(+), 41 deletions(-) diff --git a/src/org/redkale/service/DataSourceService.java b/src/org/redkale/service/DataSourceService.java index de88daa2c..a2e2ced28 100644 --- a/src/org/redkale/service/DataSourceService.java +++ b/src/org/redkale/service/DataSourceService.java @@ -140,24 +140,24 @@ public class DataSourceService implements DataSource, Service, AutoCloseable { } @Override - public void updateColumns(T value, final String... columns) { - source.updateColumns(value, columns); + public void updateColumns(T bean, final String... columns) { + source.updateColumns(bean, columns); } @Override - public void updateColumns(final CompletionHandler handler, @DynAttachment final T value, final String... columns) { - source.updateColumns(value, columns); - if (handler != null) handler.completed(null, value); + public void updateColumns(final CompletionHandler handler, @DynAttachment final T bean, final String... columns) { + source.updateColumns(bean, columns); + if (handler != null) handler.completed(null, bean); } @Override - public void updateColumns(T value, final FilterNode node, final String... columns) { - source.updateColumns(value, node, columns); + public void updateColumns(T bean, final FilterNode node, final String... columns) { + source.updateColumns(bean, node, columns); } @Override - public void updateColumns(final CompletionHandler handler, final T value, @DynAttachment final FilterNode node, final String... columns) { - source.updateColumns(value, node, columns); + public void updateColumns(final CompletionHandler handler, final T bean, @DynAttachment final FilterNode node, final String... columns) { + source.updateColumns(bean, node, columns); if (handler != null) handler.completed(null, node); } diff --git a/src/org/redkale/source/DataDefaultSource.java b/src/org/redkale/source/DataDefaultSource.java index 34d73e2cc..da8243226 100644 --- a/src/org/redkale/source/DataDefaultSource.java +++ b/src/org/redkale/source/DataDefaultSource.java @@ -19,6 +19,69 @@ import javax.sql.ConnectionPoolDataSource; import javax.xml.stream.*; import org.redkale.util.*; import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; +import static org.redkale.source.FilterNode.formatToString; /** * @@ -991,36 +1054,36 @@ public final class DataDefaultSource implements DataSource, Function Entity类的泛型 - * @param value Entity对象 + * @param bean Entity对象 * @param columns 需要更新的字段 */ @Override - public void updateColumns(final T value, final String... columns) { - final EntityInfo info = loadEntityInfo((Class) value.getClass()); + public void updateColumns(final T bean, final String... columns) { + final EntityInfo info = loadEntityInfo((Class) bean.getClass()); if (info.isVirtualEntity()) { - updateColumns(null, info, value, columns); + updateColumns(null, info, bean, columns); return; } Connection conn = createWriteSQLConnection(); try { - updateColumns(conn, info, value, columns); + updateColumns(conn, info, bean, columns); } finally { closeSQLConnection(conn); } } @Override - public void updateColumns(final CompletionHandler handler, final T value, final String... columns) { - updateColumns(value, columns); - if (handler != null) handler.completed(null, value); + public void updateColumns(final CompletionHandler handler, final T bean, final String... columns) { + updateColumns(bean, columns); + if (handler != null) handler.completed(null, bean); } - private void updateColumns(final Connection conn, final EntityInfo info, final T value, final String... columns) { - if (value == null || columns.length < 1) return; + private void updateColumns(final Connection conn, final EntityInfo info, final T bean, final String... columns) { + if (bean == null || columns.length < 1) return; try { - final Class clazz = (Class) value.getClass(); + final Class clazz = (Class) bean.getClass(); StringBuilder setsql = new StringBuilder(); - final Serializable id = info.getPrimary().get(value); + final Serializable id = info.getPrimary().get(bean); final List> attrs = new ArrayList<>(); final boolean virtual = info.isVirtualEntity(); for (String col : columns) { @@ -1029,12 +1092,12 @@ public final class DataDefaultSource implements DataSource, Function 0) setsql.append(", "); - setsql.append(info.getSQLColumn(null, col)).append(" = ").append(formatToString(attr.get(value))); + setsql.append(info.getSQLColumn(null, col)).append(" = ").append(formatToString(attr.get(bean))); } } if (!virtual) { String sql = "UPDATE " + info.getTable() + " SET " + setsql + " WHERE " + info.getPrimarySQLColumn() + " = " + formatToString(id); - if (debug.get()) logger.finest(value.getClass().getSimpleName() + ": " + sql); + if (debug.get()) logger.finest(bean.getClass().getSimpleName() + ": " + sql); final Statement stmt = conn.createStatement(); stmt.execute(sql); stmt.close(); @@ -1043,7 +1106,7 @@ public final class DataDefaultSource implements DataSource, Function cache = info.getCache(); if (cache == null) return; - T rs = cache.update(value, attrs); + T rs = cache.update(bean, attrs); if (cacheListener != null) cacheListener.updateCache(clazz, rs); } catch (SQLException e) { throw new RuntimeException(e); @@ -1054,37 +1117,37 @@ public final class DataDefaultSource implements DataSource, Function Entity类的泛型 - * @param value Entity对象 + * @param bean Entity对象 * @param node 过滤node 不能为null * @param columns 需要更新的字段 */ @Override - public void updateColumns(final T value, final FilterNode node, final String... columns) { - final EntityInfo info = loadEntityInfo((Class) value.getClass()); + public void updateColumns(final T bean, final FilterNode node, final String... columns) { + final EntityInfo info = loadEntityInfo((Class) bean.getClass()); if (info.isVirtualEntity()) { - updateColumns(null, info, value, node, columns); + updateColumns(null, info, bean, node, columns); return; } Connection conn = createWriteSQLConnection(); try { - updateColumns(conn, info, value, node, columns); + updateColumns(conn, info, bean, node, columns); } finally { closeSQLConnection(conn); } } @Override - public void updateColumns(final CompletionHandler handler, final T value, final FilterNode node, final String... columns) { - updateColumns(value, node, columns); + public void updateColumns(final CompletionHandler handler, final T bean, final FilterNode node, final String... columns) { + updateColumns(bean, node, columns); if (handler != null) handler.completed(null, node); } - private void updateColumns(final Connection conn, final EntityInfo info, final T value, final FilterNode node, final String... columns) { - if (value == null || node == null || columns.length < 1) return; + private void updateColumns(final Connection conn, final EntityInfo info, final T bean, final FilterNode node, final String... columns) { + if (bean == null || node == null || columns.length < 1) return; try { - final Class clazz = (Class) value.getClass(); + final Class clazz = (Class) bean.getClass(); StringBuilder setsql = new StringBuilder(); - final Serializable id = info.getPrimary().get(value); + final Serializable id = info.getPrimary().get(bean); final List> attrs = new ArrayList<>(); final boolean virtual = info.isVirtualEntity(); for (String col : columns) { @@ -1093,7 +1156,7 @@ public final class DataDefaultSource implements DataSource, Function 0) setsql.append(", "); - setsql.append(info.getSQLColumn("a", col)).append(" = ").append(formatToString(attr.get(value))); + setsql.append(info.getSQLColumn("a", col)).append(" = ").append(formatToString(attr.get(bean))); } } if (!virtual) { @@ -1112,7 +1175,7 @@ public final class DataDefaultSource implements DataSource, Function cache = info.getCache(); if (cache == null) return; - T[] rs = cache.update(value, attrs, node); + T[] rs = cache.update(bean, attrs, node); if (cacheListener != null) cacheListener.updateCache(clazz, rs); } catch (SQLException e) { throw new RuntimeException(e); diff --git a/src/org/redkale/source/DataSource.java b/src/org/redkale/source/DataSource.java index 02886119e..519158b7e 100644 --- a/src/org/redkale/source/DataSource.java +++ b/src/org/redkale/source/DataSource.java @@ -81,9 +81,9 @@ public interface DataSource { public void updateColumnOr(final Class clazz, final Serializable id, final String column, long incvalue); - public void updateColumns(final T value, final String... columns); + public void updateColumns(final T bean, final String... columns); - public void updateColumns(final T value, final FilterNode node, final String... columns); + public void updateColumns(final T bean, final FilterNode node, final String... columns); //----------------------异步版--------------------------------- public void update(final CompletionHandler handler, final T... values); @@ -98,9 +98,9 @@ public interface DataSource { public void updateColumnOr(final CompletionHandler handler, final Class clazz, final Serializable id, final String column, long incvalue); - public void updateColumns(final CompletionHandler handler, final T value, final String... columns); + public void updateColumns(final CompletionHandler handler, final T bean, final String... columns); - public void updateColumns(final CompletionHandler handler, final T value, final FilterNode node, final String... columns); + public void updateColumns(final CompletionHandler handler, final T bean, final FilterNode node, final String... columns); //############################################# 查询接口 ############################################# //-----------------------getXXXXResult-----------------------------