欢迎来到天天文库
浏览记录
ID:41542840
大小:359.82 KB
页数:20页
时间:2019-08-27
《javajdbc分页、元数据分析》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、分页.元数据分析QueryRunner分页•元数据分析•JDBCDataBascMctadata兀数据分析■ResultSetMetadata対装成Map类型.;kList>DBUtils的实现原理-BeanList炎型何调函数使用泛型的何调曲数1.表之间的关联的级联关系1.不设置-默认。当删除主表中的数据时,如果子表中已经引用了主表中的数据,(主外键引用),则主表中的数据不能删除。•oowiocainosrI)jjQS表(A)具它(o)ia(T)ea(w)琵助(旳QueryQueryBuilder兰:架构设计去=EE▼Database:d
2、ayl3studentbnameds回>idnum创建、圈辑和删所迭数据库和数携表的FOREIGNkeys数拥库.day13数提表:student已有引用Referencessjk*FOREIGNKEY(cid')REFERENCESds*(id)叨EditRelationship当前数舷(外缝表)引用表(主键表)索引,cl$约束名设为Nul@无动作约束约束—创逮(C)取消(L)左删除fl寸⑼衣更iffil(u)层亘设为Nul@无动作$Ik2.级联删除,会级联删除所有关联数据。3.设置数据删除缓存的引用,会把关联表的该外键设为null.2•条件查询pu
3、blicclassContactDao{//查询所有联系人publicListquery2(Contactcon){Listlist=null;QueryRunnerrun=newQueryRunner(DataSouceUtils.getDataSource());//1:先声明sqlStringBuildersql=newStringBuilder(Hselect*fromcontactswhere1=1n);//声明一个参数列表Listparams=newArrayList();
4、//2:判断如果泡的名称有值if(con.getName()!=null&&!con•getNAme()rim().equals(nn)){sql.append(11andnamelike?n);params•add(H%n+con.getName()+"%");}if(con.getSex()!=null&&!con•getSex()•trim()•equals(")){sql•append(nandsex=?n);params•add(con•getSex());}if(con.getStart()!=null){sql.append(nandag
5、e>=?H);params•add(con•getStart());}if(con•getEnd()!=null){sql•append(nandage<=?n);params.add(con•getEnd());}if(con•getAddr()!=null&&!con•getAddr().trim()•equals(Hn)){sql.append(11andaddrlike?n);params•add(n%n+con•getAddr()+”%”);}list=run•query(sql•toString()znewBeanListHandler6、ontact>(Contact•class)rparams.toArray());returnlist;3.用dbutils管理事务3.1.定义事务是指用户的操作只有一种结果,成功或是失败。3・2・如何来管理数据库事务try{//开启事务connection・setAutoCommit(false);//・・・//提交connection.commit();}catch(Exceptione){//回滚connection•rollback();}finally{//将自动提交状态设置为原状态connection・setAutoCommit(true)7、;//归还连接connection•close();}3・3・什么时候用事务对一个表进行多次insertupdate,delete对多个表进行insert,update^delete管理事务的关键点在多次操作同一个表,或是操作多个表,必须要使用同一个连接3.5.正常操作,对一个表执行两次insert在dbutils中所有方法可以直接接收一个sql去执行,也可以接收一个connection连接。所有接收Connectoin,郁应该有程序员,来传嗦&7鍛籐:Stringsqll=rrinsertintocontacts(id#naroe)valuesrun8、.upd&t皂(withoutanytheDataSource:ommitmodeortheO
6、ontact>(Contact•class)rparams.toArray());returnlist;3.用dbutils管理事务3.1.定义事务是指用户的操作只有一种结果,成功或是失败。3・2・如何来管理数据库事务try{//开启事务connection・setAutoCommit(false);//・・・//提交connection.commit();}catch(Exceptione){//回滚connection•rollback();}finally{//将自动提交状态设置为原状态connection・setAutoCommit(true)
7、;//归还连接connection•close();}3・3・什么时候用事务对一个表进行多次insertupdate,delete对多个表进行insert,update^delete管理事务的关键点在多次操作同一个表,或是操作多个表,必须要使用同一个连接3.5.正常操作,对一个表执行两次insert在dbutils中所有方法可以直接接收一个sql去执行,也可以接收一个connection连接。所有接收Connectoin,郁应该有程序员,来传嗦&7鍛籐:Stringsqll=rrinsertintocontacts(id#naroe)valuesrun
8、.upd&t皂(withoutanytheDataSource:ommitmodeortheO
此文档下载收益归作者所有