zoukankan      html  css  js  c++  java
  • Java第八次作业

    (一)学习总结

    executeUpdate()方法和executeQuery()方法在实例中的应用

    import java.sql.*;
    
    public class Demo{
        public static String JDriver = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
        public static String JURL = "jdbc:sqlserver://127.0.0.1:1433;databaseName=Pet";
        public static String JUSER = "asahi";
        public static String JPASSWORD = "731226";
        public static void main(String args[]) throws Exception{
    	    Connection con = null;
    	    PreparedStatement pstmt = null;
    	    ResultSet rs = null;
    	    int sum = 0;
    	    Class.forName(JDriver);
    	    con = DriverManager.getConnection(JURL, JUSER, JPASSWORD);
    	    String sql = "select number,kind,age,numbers,price from Pet";
    	    pstmt = con.prepareStatement(sql);        
    	    rs = pstmt.executeQuery();        //执行数据库查询操作,返回ResultSet对象
    	    while(rs.next()){
    		    String number = rs.getString(1);
    		    String kind = rs.getString(2);
    		    String age = rs.getString(3);
    		    String numbers = rs.getString(4);
    		    String price = rs.getString(5);
    		    System.out.println(number+","+kind+","+age+","+numbers+","+price);
    	    }
    	    String sql1 ="insert into Pet values ('3','花猫','1','6','600')";
    	    pstmt = con.prepareStatement(sql1);
    	    sum = pstmt.executeUpdate();        //执行设置的预处理SQL语句
    	    if(sum!=0){
    		    System.out.println(sum);
    	    }
        }
    }
    

    PreparedStatement和Statement的不同

    • PreparedStatement是预编译语句,支持批处理,能够减少对数据库资源的占用
    • Statement在每次调用时,都要重新进行编译
    • PreparedStatement能够编写动态查询语句

    为什么使用PreparedStatement而不用Statement?

    • 提升代码的可读性和可维护性
    • PraparedStatement尽最大可能提升性能
    • 极大的提高了安全性

    总结:虽然在对数据库中的数据只进行一次性的存取时,使用Statement会比PreparedStatement更有效率,但使用PreparedStatement能够提升数据库的总体效率以及安全性,所以在开发中尽量使用PreparedStatement

    (二)实验总结

    程序设计思路

    • 使用数据库替换实验七的dataBase类
    • 新建一个类实现对数据库的连接和关闭
    • 在dao中实例化Conection对象和PreparedStatement对象,实现对数据库中的数据的操作

    总结:数据库编程是固定的套路,记住JDBC的操作步骤和executeUpdate()、executeQuery()的用法即可

    (三)代码托管

    (四)学习进度条

    代码行数(新增/累积) 学习时间(新增/累积) 本周学习内容
    目标 5000行 300小时
    第2-4周 300/300 15/15 学习了用Scanner从控制台输入和随机数的创建和应用
    第5周 200/500 10/25 String和char[]等之间的相互转化
    第6周 50/550 10/35 class类的创建和应用,this关键字,java比较器
    第7-8周 100/650 10/45 继承和覆写
    第9周 100/750 10/55 接口、抽象类、日期类和匿名内部类
    第10周 150/900 8/63 JAVA的异常捕获,List接口和Set接口,迭代器
    第11周 300/1200 12/75 JAVA图形界面
    第12周 100/1300 8/83 数据库的连接
  • 相关阅读:
    HDU2732 Leapin' Lizards 网络流 最大流 SAP
    POJ1459 Power Network 网络流 最大流
    HDU3718 Similarity KM
    HDU3488 Tour KM
    HDU2853 Assignment KM
    HDU1507 Uncle Tom's Inherited Land* 二分图匹配 匈牙利算法 黑白染色
    POJ1469 COURSES 二分图匹配 匈牙利算法
    HDU4185 Oil Skimming 二分图匹配 匈牙利算法
    POJ3041 Asteroids 二分图匹配 匈牙利算法
    BZOJ2553 [BeiJing2011]禁忌 AC自动机 矩阵
  • 原文地址:https://www.cnblogs.com/yamito/p/6855894.html
Copyright © 2011-2022 走看看