通用DAO接口说明及操作.docx
- 文档编号:25848018
- 上传时间:2023-06-16
- 格式:DOCX
- 页数:28
- 大小:22.56KB
通用DAO接口说明及操作.docx
《通用DAO接口说明及操作.docx》由会员分享,可在线阅读,更多相关《通用DAO接口说明及操作.docx(28页珍藏版)》请在冰豆网上搜索。
通用DAO接口说明及操作
传统关系型数据库定义了四种数据操作:
1.插入Insert
2.删除Delete
3.更新Update
4.查询Query
MethodSummary
int
addValueObject(java.util.List valueObjectList)
批量增加记录到数据库。
int
addValueObject(ValueObject valueObject)
增加一条记录到数据库。
int[]
batchInsert(java.lang.String sql,java.util.List values)
批量增加数据到数据库通用DAO提供访问数据库的一般方法,直接在外部写SQL语句
int[]
batchUpdate(java.lang.String sql,java.util.List values)
批量更新数据库的数据通用DAO提供访问数据库的一般方法,直接在外部写SQL语句
int
delete(java.lang.String sql,java.util.List values)
删除数据库的数据通用DAO提供访问数据库的一般方法,直接在外部写SQL语句
void
deleteAssocVO(ValueObject valueObject)
级联删除,删除vo对象的子对象的数据。
void
deleteVOByPrimaryKey(java.util.List valueOjbectList,boolean delAssociate)
根据主键批量删除记录通用DAO提供访问数据库的特有方法
int
deleteVOByPrimaryKey(ValueObject valueObject,boolean delAssociate)
根据主键删除一条记录通用DAO提供访问数据库的特有方法
int
deleteVOByValues(ValueObject valueObject)
根据dao对象的值删除数据,作为条件的属性存在dao对象中,其余的不应该存在dao对象中如新建一个dao对象ValueObjectvo=newValueObject("test");vo.setSTRING("ID","123");dao.deleteVOByValues(vo);如果是已经存在的dao对象,应该先把其他属性的清除如:
vo.clearData();vo.setSTRING("ID","123");dao.deleteVOByValues(vo);
ValueObject
findByPrimaryKey(ValueObject valueObject)
根据数据主键获得该记录,查询到的数据建立在dao中配置的关联关系上,为了确保主表的数据能被查到,建立的关系使用左联接或右连接返回的dao值对象中包含了关联表的字段,如果没找到将返回传进的数值对象。
java.util.ArrayList
findVOByMethod(java.lang.String modelName,java.lang.String methodName,java.util.List values)
通过dao配置的查询方法查询,查询的结果是建立在配置的关联关系之上的。
java.util.ArrayList
findVOByMethod(java.lang.String modelName,java.lang.String methodName,java.util.List values,int rowsPerPage,int page)
根据指定条件查询dao值对象,查询到的数据建立在dao中配置的关联关系上,返回满足查询条件的数据对象集返回的dao值对象中包含了关联表的字段。
java.util.ArrayList
findVOByValue(ValueObject valueObject,int rowsPerPage,int page)
通过值对象中不为空的字段为条件建立查询,条件的逻辑为and和“=”关系,关联表的字段也可作为查询条件。
java.util.ArrayList
findVOByWhere(java.lang.String modelName,java.lang.String where,java.util.List values,int rowsPerPage,int page)
通过where条件查询dao对象,查询到的数据建立在dao中配置的关联关系上,调用此方法后请使用isBFind()判断是否查找到数据,如果查找到数据isBFind()将返回true,否则返回false。
ValueObject
getCacheVerMgr(java.lang.String code)
获得码表、数据字典、配置文件的版本控制信息
int
insert(java.lang.String sql,java.util.List values)
增加一条记录到数据库通用DAO提供访问数据库的一般方法,直接在外部写SQL语句
javax.sql.RowSet
search(java.lang.String sql,java.util.List values)
一般查询通用DAO提供访问数据库的一般方法,直接在外部写SQL语句
javax.sql.RowSet
search(java.lang.String sql,java.util.List values,int rowsPerPage,int page)
分页查询,目前只支持ORCALE通用DAO提供访问数据库的一般方法,直接在外部写SQL语句
java.util.ArrayList
toSort(java.util.ArrayList aList)
列表排序
int
update(java.lang.String sql,java.util.List values)
更新数据库的一条记录通用DAO提供访问数据库的一般方法,直接在外部写SQL语句
void
updateVOByPrimaryKey(java.util.List valueObjectList)
根据主键批量更新值对象,主键字段必须被赋值
int
updateVOByPrimaryKey(ValueObject valueObject)
根据主键更新值对象对象,主键字段必须被赋值。
Methodsinheritedfromclass.sinosoft.frame.dao.BaseDAO
getConnection,getManySeqs,getOneSeq,getQueryStringList,getQueryStringList,getSeqByRule,getTotalRows,isBFind,queryByMethodName,queryByMethodName,setConnection
Methodsinheritedfromclassjava.lang.Object
equals,getClass,hashCode,notify,notifyAll,toString,wait,wait,wait
ConstructorDetail
ContentDAO
publicContentDAO(java.sql.Connection conn)
MethodDetail
insert
publicintinsert(java.lang.String sql,
java.util.List values)
throws.sinosoft.frame.exception.GeneralException
增加一条记录到数据库通用DAO提供访问数据库的一般方法,直接在外部写SQL语句
Overrides:
insertinclassBaseDAO
Parameters:
sql-sql一个标准INSERTSLQ语句,Forexample:
insertintotable_namevalues(?
?
?
)
values-一个LIST对象,包含将要插入的值,即一条数据。
数据值的顺序要与SQL语句?
的顺序一致
Returns:
被插入的行数
Throws:
java.sql.SQLException-如果数据库发生异常,SQLException将被抛出
.sinosoft.frame.exception.GeneralException
batchInsert
publicint[]batchInsert(java.lang.String sql,
java.util.List values)
throws.sinosoft.frame.exception.GeneralException
批量增加数据到数据库通用DAO提供访问数据库的一般方法,直接在外部写SQL语句
Overrides:
batchInsertinclassBaseDAO
Parameters:
sql-一个标准INSERTSLQ语句,Forexample:
insertintotable_namevalues(?
?
?
)
values-将要插入数据库的数据,他是一组二维数据。
LIST对象中的一个元素还是一个LIST对象。
内层的LIST对象代表一条数据。
Returns:
返回每条数据插入数据库的情况
Throws:
java.sql.SQLException-如果数据库发生异常,SQLException将被抛出
.sinosoft.frame.exception.GeneralException
update
publicintupdate(java.lang.String sql,
java.util.List values)
throws.sinosoft.frame.exception.GeneralException
更新数据库的一条记录通用DAO提供访问数据库的一般方法,直接在外部写SQL语句
Overrides:
updateinclassBaseDAO
Parameters:
sql-一个标准的UPDATESQL语句,Forexample:
updatetable_namesetfield1=?
field2=?
wherefield1=?
values-一个LIST对象,包含将要更新的数据和条件
Returns:
被更新的行数
Throws:
java.sql.SQLException-如果数据库发生异常,SQLException将被抛出
.sinosoft.frame.exception.GeneralException
batchUpdate
publicint[]batchUpdate(java.lang.String sql,
java.util.List values)
throws.sinosoft.frame.exception.GeneralException
批量更新数据库的数据通用DAO提供访问数据库的一般方法,直接在外部写SQL语句
Overrides:
batchUpdateinclassBaseDAO
Parameters:
sql-一个标准的UPDATESQL语句,Forexample:
updatetable_namesetfield1=?
field2=?
wherefield1=?
values-将要更新数据库的数据,他是一组二维数据。
LIST对象中的一个元素还是一个LIST对象。
内层的LIST对象代表一条数据和条件。
Returns:
被更新的行数的数组
Throws:
java.sql.SQLException-如果数据库发生异常,SQLException将被抛出
.sinosoft.frame.exception.GeneralException
delete
publicintdelete(java.lang.String sql,
java.util.List values)
throws.sinosoft.frame.exception.GeneralException
删除数据库的数据通用DAO提供访问数据库的一般方法,直接在外部写SQL语句
Overrides:
deleteinclassBaseDAO
Parameters:
sql-一个标准的DELETESQL语句,Forexample:
deletefromtable_namewherefield1=?
values-一个LIST对象,包含将要删除的数据的查询条件
Returns:
被删除数据的行数
Throws:
java.sql.SQLException-如果数据库发生异常,SQLException将被抛出
.sinosoft.frame.exception.GeneralException
search
publicjavax.sql.RowSetsearch(java.lang.String sql,
java.util.List values,
int rowsPerPage,
int page)
throwsjava.sql.SQLException
分页查询,目前只支持ORCALE通用DAO提供访问数据库的一般方法,直接在外部写SQL语句
Parameters:
sql-一个标准的SELECTSQL语句,Forexample:
select*fromtable_namewherefield1=?
values-一个LIST对象,包含查询条件
rowsPerPage-每页行数
page-第几页
Returns:
返回一个RowSet结果集
Throws:
java.sql.SQLException-如果数据库发生异常,SQLException将被抛出
search
publicjavax.sql.RowSetsearch(java.lang.String sql,
java.util.List values)
throwsjava.sql.SQLException
一般查询通用DAO提供访问数据库的一般方法,直接在外部写SQL语句
Overrides:
searchinclassBaseDAO
Parameters:
sql-一个标准的SELECTSQL语句,Forexample:
select*fromtable_namewherefield1=?
values-一个LIST对象,包含查询条件
Returns:
返回一个RowSet结果集
Throws:
java.sql.SQLException-如果数据库发生异常,SQLException将被抛出
toSort
publicjava.util.ArrayListtoSort(java.util.ArrayList aList)
列表排序
Parameters:
aList-
Returns:
addValueObject
publicintaddValueObject(ValueObject valueObject)
throws.sinosoft.frame.exception.GeneralException
增加一条记录到数据库。
类似ENTITYBEANS的CREATE方法,只不过使用该方法可以向任何表里增加数据,通用DAO提供访问数据库的特有方法
Parameters:
valueObject-增加数据,要求对应数据库中非空字段必须被付值
Returns:
返回增加行数,正常是1
Throws:
.sinosoft.frame.exception.GeneralException
addValueObject
publicintaddValueObject(java.util.List valueObjectList)
throws.sinosoft.frame.exception.GeneralException
批量增加记录到数据库。
通用DAO提供访问数据库的特有方法
Parameters:
valueObjectList-增加数据集合
Throws:
.sinosoft.frame.exception.GeneralException-如果数据库发生异常,GeneralException将被抛出
updateVOByPrimaryKey
publicintupdateVOByPrimaryKey(ValueObject valueObject)
throws.sinosoft.frame.exception.GeneralException
根据主键更新值对象对象,主键字段必须被赋值。
如果存在同步字段,更新时会检测同步字段的值,如果数据被更新和删除,将报错。
Parameters:
valueObject-
Returns:
更新行数
Throws:
.sinosoft.frame.exception.GeneralException
updateVOByPrimaryKey
publicvoidupdateVOByPrimaryKey(java.util.List valueObjectList)
throws.sinosoft.frame.exception.GeneralException
根据主键批量更新值对象,主键字段必须被赋值
Parameters:
valueObjectList-更新数据列表。
Throws:
.sinosoft.frame.exception.GeneralException
deleteVOByPrimaryKey
publicintdeleteVOByPrimaryKey(ValueObject valueObject,
boolean delAssociate)
throws.sinosoft.frame.exception.GeneralException
根据主键删除一条记录通用DAO提供访问数据库的特有方法
Parameters:
valueObject-该ValueObject对象的主键必须被付值
delAssociate-是否删除关联表信息,true删除,false不删
Returns:
返回删除行数
Throws:
.sinosoft.frame.exception.GeneralException-如果发生异常,GeneralException将被抛出.
deleteAssocVO
publicvoiddeleteAssocVO(ValueObject valueObject)
throws.sinosoft.frame.exception.GeneralException
级联删除,删除vo对象的子对象的数据。
Parameters:
valueObject-该ValueObject对象的主键必须被付值
Returns:
返回删除行数
Throws:
.sinosoft.frame.exception.GeneralException-如果发生异常,GeneralException将被抛出.
deleteVOByValues
publicintdeleteVOByValues(ValueObject valueObject)
throws.sinosoft.frame.exception.GeneralException
根据dao对象的值删除数据,作为条件的属性存在dao对象中,其余的不应该存在dao对象中如新建一个dao对象ValueObjectvo=newValueObject("test");vo.setSTRING("ID","123");dao.deleteVOByValues(vo);如果是已经存在的dao对象,应该先把其他属性的清除如:
vo.clearData();vo.setSTRING("ID","123");dao.deleteVOByValues(vo);
Parameters:
valueObject-
Returns:
Throws:
.sinosoft.frame.exception.GeneralException
deleteVOByPrimaryKey
publicvoiddeleteVOByPrimaryKey(java.util.List valueOjbectList,
boolean delAssociate)
throws.sinosoft.frame.exception.GeneralException
根据主键批量删除记录通用DAO提供访问数据库的特有方法
Parameters:
valueOjbectList-一个LIST对象,包含多个ValueOjbect对象,该ValueObject对象的主键字段必须被付值
Throws:
.sinosoft.frame.exception.GeneralException-如果数据库发生异常,GeneralException将被抛出。
findByPrimaryKey
publicValueObjectfindByPrimaryKey(ValueObject valueObject)
throws.sinosoft.frame.exception.GeneralException
根据数据主键获得该记录,查询到的数据建立在dao中配置的关联关系上,为了确保主表的数据能
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 通用 DAO 接口 说明 操作
![提示](https://static.bdocx.com/images/bang_tan.gif)