Java 2 实用教程(第5版)耿祥义版 习题十一

1.问答题
(1)怎样启动Mysql数据库服务器?
(2)JDBC-MySQL数据库驱动的jar文件因该拷贝到哪个目录中?
(3)预处理语句的好处是什么?
(4)什么叫事务,事务处理步骤是怎样的?
2.编程题
1.参照例子3,按出生日期排序mess表的记录。
2.借助例子6中的Query类,编写一个应用程序来查询MySQL数据库,程序运行时用户从命令行输入数据库名和表名,例如:
java 主类 数据库 表
 

一、问答题
1.在MySQL安装目录的bin子目录下键入mysqld或mysqld -nt 启动MySQL数据库服务器。
2.复制到JDK的扩展目录中(即JAVA_HOME环境变量指定的JDK,见第1章的1.3.3),比如:E:\jdk1.8\jre\lib\ext。
3.减轻数据库内部SQL语句解释器的负担。
4.事务由一组SQL语句组成,所谓事务处理是指:应用程序保证事务中的SQL语句要么全部都执行,要么一个都不执行。事务处理步骤是调用:(1)连接对象用setAutoCommit()方法关闭自动提交模式,(2)连接对象用commit()方法处理事务,(3)连接对象用rollback()方法处理事务失败。
二、编程题
1. 同时用到了例子2中的GetDBConnection类。
import java.sql.*;
import java.sql.*; 
public class BianCheng1 {
   public static void main(String args[]) {
      Connection con;
      Statement sql; 
      ResultSet rs;
      con = GetDBConnection.connectDB("students","root","");
      if(con == null ) return;
      String sqlStr =
      "select * from mess order by birthday";
      try { 
          sql=con.createStatement();
          rs = sql.executeQuery(sqlStr);
          while(rs.next()) {
             String number=rs.getString(1);
             String name=rs.getString(2);
             Date date=rs.getDate(3);
             float height=rs.getFloat(4);
             System.out.printf("%s\t",number);
             System.out.printf("%s\t",name);
             System.out.printf("%s\t",date); 
             System.out.printf("%.2f\n",height);
          }
          con.close();
      }
      catch(SQLException e) { 
         System.out.println(e);
      }
  }
}
2.   同时用到了例子6中的Query类。
import javax.swing.*;
public class BianCheng2 {
   public static void main(String args[]) {
      String [] tableHead;
      String [][] content; 
      JTable table ;
      JFrame win= new JFrame();
      Query findRecord = new  Query();
      findRecord.setDatabaseName(args[0]);
      findRecord.setSQL("select * from "+args[1]);
      content = findRecord.getRecord(); 
      tableHead=findRecord.getColumnName();
      table = new JTable(content,tableHead); 
      win.add(new JScrollPane(table));
      win.setBounds(12,100,400,200);
      win.setVisible(true); 
      win.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   }
}

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值