本周完成了JDBC 的学习,请对此内容进行总结。

完成简单记事本的练习。

  1 import java.awt.FileDialog;
  2 import java.awt.event.ActionEvent;
  3 import java.awt.event.ActionListener;
  4 import java.io.File;
  5 import java.io.FileInputStream;
  6 import java.io.FileNotFoundException;
  7 import java.io.FileOutputStream;
  8 import java.io.IOException;
  9 import java.io.PrintStream;
 10 import javax.swing.JFileChooser;
 11 import javax.swing.JFrame;
 12 import javax.swing.JMenu;
 13 import javax.swing.JMenuBar;
 14 import javax.swing.JMenuItem;
 15 import javax.swing.JScrollPane;
 16 import javax.swing.JTextArea;
 17 
 18 
 19 class Demo implements ActionListener
 20 {
 21     private JFrame frame = new JFrame("记事本");
 22     private JMenu fileMenu = new JMenu("文件");
 23     private JMenu editMenu = new JMenu("编辑");
 24     private JMenuBar bar = new JMenuBar();
 25     private JMenuItem newItem = new JMenuItem("新建");
 26     private JMenuItem openItem = new JMenuItem("打开");
 27     private JMenuItem saveItem = new JMenuItem("保存");
 28     private JMenuItem saveasItem = new JMenuItem("另存为");
 29     private JMenuItem closeItem = new JMenuItem("关闭");
 30     private JTextArea area = new JTextArea();
 31     private JScrollPane scroll = new JScrollPane(area,JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
 32     JFileChooser chooser;
 33     File file;
 34     FileDialog savedia;
 35     
 36     public Demo()
 37     {
 38    
 39         bar.add(fileMenu);
 40         bar.add(editMenu);
 41        
 42         fileMenu.add(newItem);
 43         fileMenu.add(openItem);
 44         fileMenu.add(saveItem);
 45         fileMenu.add(saveasItem);
 46         fileMenu.add(closeItem);
 47  
 48         newItem.addActionListener(this);
 49         openItem.addActionListener(this);
 50         saveItem.addActionListener(this);
 51         saveasItem.addActionListener(this);
 52         closeItem.addActionListener(this);
 53         area.setEditable(true);
 54         frame.add(scroll);
 55         frame.setJMenuBar(bar);
 56         frame.setVisible(true);
 57         frame.setSize(400, 300);
 58     }
 59     public void actionPerformed(ActionEvent event) 
 60     {
 61         Object obj = event.getSource();
 62         if(obj instanceof JMenuItem) 
 63         {
 64             JMenuItem item = (JMenuItem) obj;
 65             if(item == newItem) 
 66             {
 67                 new Demo();
 68             }
 69             else if(item == openItem) 
 70             {
 71                 chooser = new JFileChooser();
 72                 chooser.showOpenDialog(null);
 73                 file = chooser.getSelectedFile();
 74                 try 
 75                 {
 76                     FileInputStream fis= new FileInputStream(file);
 77                         byte[] b = new byte[fis.available()];
 78                         fis.read(b);
 79                         area.append(new String(b));
 80                         fis.close();
 81                 } 
 82                 catch (FileNotFoundException e) 
 83                 {
 84                     e.printStackTrace();
 85                 } 
 86                 catch (IOException e) 
 87                 { 
 88                     e.printStackTrace();
 89                 }
 90             }
 91             else if(item == saveItem) 
 92             {
 93                 if(file!=null) 
 94                 {
 95                     try 
 96                     {
 97                         PrintStream out = new PrintStream(new FileOutputStream(file));
 98                         out.print(this.area.getText());
 99                         out.close();
100                     } 
101                     catch (FileNotFoundException e) 
102                     {
103                         e.printStackTrace();
104                     }
105                 }
106                 else if(file == null)
107                 {
108                     savedia = new FileDialog(frame,"保存",FileDialog.SAVE);
109                     savedia.setVisible(true);
110                     
111                     String diaPath = savedia.getDirectory();
112                     String fileName = savedia.getFile();
113                     
114                     if(diaPath == null ||fileName == null) 
115                     {
116                         file = new File(diaPath,fileName);
117                     }
118                 }
119                 
120             }
121             else if(item == saveasItem) 
122             {
123                 chooser.showSaveDialog(null);
124                 file = chooser.getSelectedFile();
125                 if(!file.exists()) 
126                 {
127                     try 
128                     {
129                         if(!file.exists()) 
130                         {
131                         file.createNewFile();
132                         }
133                         FileOutputStream fos=new FileOutputStream(file);
134                         byte[] b = area.getText().getBytes();
135                         fos.write(b);
136                         fos.close();
137                     } 
138                     catch (IOException e) 
139                     {
140                         e.printStackTrace();
141                     }
142               }
143             } 
144             else if(item == closeItem) 
145             {
146                 System.exit(1);
147             }
148         }
149         
150     }
151 }
152 public class DemoTest
153 {
154     public static void main(String args[]) 
155     {
156         new Demo();
157     }
158 }

 

 

 

 

 

JDBC规范(掌握四个核心对象):

    DriverManager:用于注册驱动(创建连接对象)。 java.sql.DriverManager;

    Connection接口:表示与数据库创建的连接 。java.sql.Connection;

    Statement接口:操作数据库sql语句的对象,并返回相应结果的对象。 java.sql.Statement;

      preparedStatement接口:预编译对象,是Statement对象的子类。用于解决sql的注入问题。实际用的是这个类。java.sql.PreparedStatement;

    ResultSet接口:结果集或一张虚拟表(客户端存表数据的对象)。 java.sql.ResultSet;

开发步骤:

  1、注册驱动.

      告知JVM使用的是哪一个数据库的驱动

  2、获得连接.

      使用JDBC中的类,完成对MySQL数据库的连接

  3、获得语句执行平台

      通过连接对象获取对SQL语句的执行者对象

  4、执行sql语句

      使用执行者对象,向数据库执行SQL语句  获取到数据库的执行后的结果

  5、处理结果

  6、释放资源.

 

posted on 2019-11-29 20:54  青春永驻岁月无忧  阅读(209)  评论(0)    收藏  举报