第十四周课程总结&实验报告(简单记事本的实现)

学习总结

JDBC:即Java数据库连接,提供了一种与平台无关的用于执行SQL语句的标准javaAPI,可以方便实现多种关系型数据库的统一操作.

JDBC常用的类与接口:DriverManager、Connection、Statement、Result、PreparedStatement.

JDBC操作步骤:

连接数据库

1.配置MySQL数据库的驱动程序:下载相应的MySQL,若能输出Class,则已经配置好了.

2.DriveManager:(1)getConnection(String url, String user ,String password) :通过连接地址链接数据库,同时输入用户名和密码 (2)子名称:一种标识数据库的方法,必须遵循”//主机名 : 端口/子协议" 的标准URL命名 .

3.数据库的更新操作:Statement接口,通过Connection接口的createStatement()方法实例化,来操作数据.

简单记事本的实现

package Lemon;
import java.awt.*;
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
public class Note implements ActionListener {
    JFrame frame;
    JMenuBar bar;
    JMenu fileMenu,editMenu,formatMenu,searchMenu,helpMenu;
    JMenuItem newItem,openItem,saveItem,closeItem;
    JScrollPane scroll;
    JTextArea area;
    JFileChooser chooser;
    File file;
public Note() {
    frame=new JFrame("记事本");
    bar=new JMenuBar();
    fileMenu=new JMenu("文件");
    editMenu=new JMenu("编辑");
    formatMenu=new JMenu("格式");
    searchMenu=new JMenu("查找");
    helpMenu=new JMenu("帮助");
    newItem=new JMenuItem("新建(N)");
    openItem=new JMenuItem("打开(O)");
    saveItem=new JMenuItem("另存为(A)");
    closeItem=new JMenuItem("关闭(X)");
    area=new JTextArea();
    scroll=new JScrollPane(area);
    newItem.addActionListener(this);
    openItem.addActionListener(this);
    saveItem.addActionListener(this);
    closeItem.addActionListener(this);
    fileMenu.add(newItem);
    fileMenu.addSeparator();
    fileMenu.add(openItem);
    fileMenu.addSeparator();
    fileMenu.add(saveItem);
    fileMenu.addSeparator();
    fileMenu.add(closeItem);  
    newItem.setMnemonic(KeyEvent.VK_N);
    newItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,java.awt.Event.CTRL_MASK));    
    openItem.setMnemonic(KeyEvent.VK_O);
    openItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O,java.awt.Event.CTRL_MASK)); 
    saveItem.setMnemonic(KeyEvent.VK_A);
    saveItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_A,java.awt.Event.CTRL_MASK));
    closeItem.setMnemonic(KeyEvent.VK_X);
    closeItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,java.awt.Event.CTRL_MASK));
    frame.setJMenuBar(bar);
    frame.add(scroll);
    frame.setSize(800,500);
    frame.setVisible(true);
    bar.add(fileMenu);
    bar.add(editMenu);
    bar.add(formatMenu);
    bar.add(searchMenu);
    bar.add(helpMenu);
             }
public void actionPerformed(ActionEvent event) {
    Object obj=event.getSource();
    if(obj instanceof JMenuItem) {
        JMenuItem item=(JMenuItem)obj;
        if(item==newItem)
        {
            new Note();
        }else if(item==openItem) {
            chooser=new JFileChooser();
            chooser.showOpenDialog(null);
            file=chooser.getSelectedFile();
            try {
                FileInputStream fis=new FileInputStream(file);
                try {
                    byte[] b=new byte[fis.available()];
                    fis.read(b);
                    area.append(new String(b));
                    fis.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            }
        }else if(item==saveItem) {
            chooser=new JFileChooser();
            chooser.showOpenDialog(null);
            file=chooser.getSelectedFile();
                try {
                    if(!file.exists()) {
                    file.createNewFile();
                    }
                    FileOutputStream fos=new FileOutputStream(file);
                    byte[] b=area.getText().getBytes();
                    fos.write(b);
                    fos.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }               
        }else if(item==closeItem)
        {
            System.exit(1);
        }
        }
}
}
package Lemon;

public class Test {

    public static void main(String[] args) {
        Note no = new Note();

    }

}

第十四周课程总结&实验报告(简单记事本的实现)_第1张图片
第十四周课程总结&实验报告(简单记事本的实现)_第2张图片
第十四周课程总结&实验报告(简单记事本的实现)_第3张图片

你可能感兴趣的:(第十四周课程总结&实验报告(简单记事本的实现))