02javaweb配套-笔记.java操作mysql数据库_第1页
02javaweb配套-笔记.java操作mysql数据库_第2页
02javaweb配套-笔记.java操作mysql数据库_第3页
02javaweb配套-笔记.java操作mysql数据库_第4页
02javaweb配套-笔记.java操作mysql数据库_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

JDBC使JDBC怎么步骤一:驱动.使用不同的数据库要 使用MySQL驱动:libmysql-connector-java-5.1.40-bin.jarBuildPath—>AddtoBuildPath。如果不进行此操作,类加载器就加载不到jar包中的类。在 ConnectionConnectionconn=null;PreparedStatementpstm=null;ResultSetresult=null;try 驱//获得连接conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/myshop","root","123456");Stringsql="select*fromproduct";//创建执行SQL句对pstm=//开始执行,并返回查询结果对result=//遍历结果while(result.next())StringproductName=result.getString("productName");}}catch(Exception{}finallyif(null!=result)try}catch(SQLException{}}if(null!=pstm)trytry}catch(SQLException{}}if(null!=conn)try}catch(SQLException{}}}增向product表中添加一条商id:6productName:会玉断续膏productType:药品productPrice:44.5publicvoidtryConnectionconn=DriverManager.getConnection("jdbc:mysql://localhost:3306/myshop?characterEncoding=UTF-8","root",StringStringsql="insertintoproduct(id,productName,productType,productPrice,ppst.setInt(1,6);ppst.setString(2,"黑玉断续膏");ppst.setString(3,"药品");ppst.setFloat(4,(float)44.5);ppst.setInt(5,intexecuteUpdate=ppst.executeUpdate();TODO此处代码省略,参见2.2}catch(SQLException{}}删*删除product中的数据,删除id=1记publicvoidtry//获取连接Connectionconn=Connectionconn=DriverManager.getConnection("jdbc:mysql://localhost:3306/myshop?characterEncoding=UTF-8","root",Stringsql="deletefromproductwhereid=//执行SQL,SQLintexecuteUpdate=prepareStatement.executeUpdate();TODO参见2.2}catch(SQLException{}}改*更新product中的数据,修改id=6产品价格为publicvoidtry//获取连接Connectionconn=DriverManager.getConnection("jdbc:mysql://localhost:3306/myshop?characterEncoding=UTF-8","root",StringStringsql="updateproductsetproductPrice=?whereid=PreparedStatementppst=ppst.setFloat(1,(float)SQL,SQLintexecuteUpdate=ppst.executeUpdate();//TODO}catch(SQLExceptione)//TODOAuto-generatedcatchblock}}*SQL来的product息,封装成Product并放入到ArrayList<Product>集合publicvoidquery()try//获取连接Connectionconn=DriverManager.getConnection("jdbc:mysql://localhost:3306/myshop?characterEncoding=UTF-8","root",//创建一个可以执行SQLStringsql="select*from//执行查询并返回查询结果ResultSetrs=//定义几个接收结果对象的List<Product>pList=new//从结果中遍历每一条记录并封装成Productwhile(rs.next())intid=StringproductName=rs.getString("productName");StringproductType=rs.getString("productType");floatproductPrice=rs.getFloat("productPrice");intkc=//Product对象封Productproduct=newProduct(id,productName,productType,productPrice,//对象放入集}//关闭资源 此处省略关闭资源代}catch(SQLException{}}publicclassProductprivateintprivateStringproductName;privateStringproductType;privatefloatproductPrice;privateintkc;publicProduct()//TODOAuto-generatedconstructor}publicProduct(intid,StringproductName,StringproductType,floatproductPrice,intkc)ductName=productName;ductType=productType;ductPrice=productPrice;this.kc=kc;}publicintgetId()return}publicvoidsetId(intid)this.id=}publicStringgetProductName()return}publicvoidsetProductName(StringproductName)ductName=}return}ductType=}publicfloatgetProductPrice()return}publicvoidsetProductPrice(floatproductPrice)ductPrice=}publicpublicintgetKc()return}publicvoidsetKc(intkc)this.kc=}publicStringtoString()return"Product[id="+id+",productName="+productName+",productType="+productType+",productPrice="+productPrice+",kc="+kc+}}在myshop数据库中新建一张bank表,整数型主键id自增,字符型name,整数型金额money三个字段,向该表中100000条记录,并打印本次执行所耗费时间。*向bank表中100000条记录,并打印本次执 所耗费时间publicvoidtrylongstart=Connectionconn=DriverManager.getConnection("jdbc:mysql://localhost:3306/myshop?characterEncoding=UTF-8","root",Stringsql="insertintobank(name,money)values(?,?)";PreparedStatementprepareStatement=conn.prepareStatement(sql);100000for(inti=0;i<100000;{prepareStatement.setString(1,"ceshi"+i);}System.out.println("普 耗时:"+(System.currentTimeMillis()-start)/1000);//普通时: }catch(SQLException{}}*向bank表 100000条记录,并打印本次执行所耗费时间publicvoidinsertBank()try//记录开始时longstart=//获取连接Connectionconn="root",//设置自动提交为//创建一个可以执行SQLStringsql="insertintobank(name,money)values(?,?)";PreparedStatementprepareStatement=conn.prepareStatement(sql);//循环执行100000for(inti=0;i<100000;{prepareStatement.setString(1,"ceshi"+i);}System.out.println("普通耗时:"+(System.currentTimeMillis()-start)/1000);//普通入耗时 }catch(SQLException{}}*向bank表中100000条记录,并打印本次执 所耗费时间publicvoidbatchInsertBank()try//记录开始时longstart=//获取连接Connectionconn="root",//设置自动提交为Stringsql="insertintobank(name,money)values(?,?)";PreparedStatementprepareStatement=conn.prepareStatement(sql);100000for(inti=0;i<100000;{prepareStatement.setString(1,"ceshi"+i);}System.out.println("批 耗时:"+(System.currentTimeMillis()-start)/1000);// }catch(SQLException{}} 要从账户中划掉1500,然后YuiHatano的账户余额加1500。在转账过程中,钱已从的账户划出,就在此刻机房停电了,还没有来的及执行Yui的确是扣掉了1500。这个时候仰天长啸一声:,拿着新买铐和皮鞭回家了!2.5.4几天后,给老羊说了这个情况,老羊说这是银行系统的一个错误(bug只要将转publicvoid{Connectionconn=null;try{//获取连接conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/myshop?characterEncoding=UTF-8","root",//设置自动提交为//创建一个可以执行SQLStringsql="updatebanksetmoney=money-1500wherename=?";ppst=conn.prepareStatement(sql);//从 pps

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论