接口:
/**
* 根据某对象获取该对象的数据
*
* @param o
* @return
* @throws ServiceException
*/
public <T> T getObject(T o) throws ServiceException;
/**
* 根据某个对象查询返回该对象的类型
*
* @param o
* @return
* @throws ServiceException
*/
public <T> List<T> getObjectList(T o) throws ServiceException;
/**
* 保存
*
* @param object
* @return
* @throws ServiceException
*/
public boolean insert(Object object) throws ServiceException;
/**
* 修改
*
* @param object
* @return
* @throws ServiceException
*/
public boolean update(Object object) throws ServiceException;
/**
* 删除
*
* @param object
* @return
* @throws ServiceException
*/
public boolean delete(Object object) throws ServiceException;
实现;
/**
* 根据某对象获取该对象的数据
*/
@Override
public <T> T getObject(T o) throws ServiceException {
try {
List<T> l = dataManager.query(o);
if (l != null && l.size() > 0)
return l.get(0);
else {
return null;
}
} catch (DataManagerException e) {
e.printStackTrace();
throw new ServiceException("查询数据对象失败:"+e.getMessage());
}
}
/**
* 根据某个对象查询返回该对象的类型
*
* @param 参数对象object
* @return 返回值 list
*/
public <T> List<T> getObjectList(T o) throws ServiceException {
try {
List<T> l = dataManager.query(o);
return l;
} catch (DataManagerException e) {
e.printStackTrace();
throw new ServiceException("查询集合数据对象失败:"+e.getMessage());
}
}
/**
* 保存一个对象
*
*/
public boolean insert(Object object) throws ServiceException {
boolean flag = false;
DataBlock dbBlock = new DataBlock.Insert(object).build();
try {
dataManager.execute(dbBlock);
flag = true;
} catch (DataManagerException e) {
e.printStackTrace();
}
return flag;
}
/**
* 更新
*/
@Override
public boolean update(Object object) throws ServiceException {
boolean flag = false;
DataBlock dbBlock = new DataBlock.Update(object).build();
dbBlock.parseToSql();
try {
dataManager.execute(dbBlock);
flag = true;
} catch (DataManagerException e) {
e.printStackTrace();
}
return flag;
}
/**
* 删除
*/
public boolean delete(Object object) throws ServiceException {
boolean flag = false;
try {
dataManager.delete(object);
flag = true;
} catch (DataManagerException e) {
flag = false;
e.printStackTrace();
}
return flag;
}
泛型的增删改查公共方法
最新推荐文章于 2020-11-28 11:32:34 发布