Commit 1ea210d9 authored by yanzg's avatar yanzg

添加对Android的支持

parent 1ee3b43d
package com.yanzuoguang.dao;
import java.util.List;
/**
* 数据基本操作接口
* @author 颜佐光
......@@ -49,4 +51,15 @@ public interface BaseDao {
* @return 需要返回的数据
*/
<T extends Object> T load(Object model, Class<T> cls);
/**
* 加载列表数据
*
* @param model 加载数据的请求参数
* @param cls 需要加载的数据的类型
* @param <T> 返回数据的类型
* @return 需要返回的数据
*/
<T extends Object> List<T> loadList(Object model, Class<T> cls);
}
......@@ -10,13 +10,11 @@ import com.yanzuoguang.util.helper.StringHelper;
import com.yanzuoguang.util.vo.InitDao;
import com.yanzuoguang.util.vo.MapRow;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.*;
/**
* 数据库操作的基本工具类
*
* @author 颜佐光
*/
public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
......@@ -55,7 +53,7 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
return "";
}
String keyString = key.toString();
if (DaoConst.ZERO .equals(keyString)) {
if (DaoConst.ZERO.equals(keyString)) {
keyString = "";
}
return keyString;
......@@ -252,6 +250,46 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
return to;
}
/**
* 加载数据
*
* @param model 加载数据的请求参数
* @param cls 需要加载的数据的类型
* @param <T> 返回数据的类型
* @return 需要返回的数据
*/
@Override
public <T extends Object> List<T> loadList(Object model, Class<T> cls) {
// 获取来源主键
Object from = model;
String key = this.getInputKey(from);
// 当主键存在时,只通过主键加载
if (!StringHelper.isEmpty(key)) {
from = new HashMap<String, Object>(DaoConst.COLLECTION_INIT_SIZE);
this.setKeyString(from, key);
}
// 通过传入数据进行加载
List<T> to = this.query(cls, DaoConst.LOAD, from);
if (to == null || to.size() == 0) {
return new ArrayList<>();
}
// 判断来源主键是否存在,不存在则获取加载后的主键
if (StringHelper.isEmpty(key)) {
check(DaoConst.OPERATOR_TYPE_LOAD, key, to);
} else {
for (Object item : to) {
key = this.getKeyString(item);
check(DaoConst.OPERATOR_TYPE_LOAD, key, to);
}
}
return to;
}
/**
* 添加统计数据
*
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment