zoukankan      html  css  js  c++  java
  • 第十四周课程总结&实验报告(简单记事本的实现)

    一.JDBC
    Java数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。
    JDBC驱动分类:

    1、 桥驱动
    2、网络驱动
    3、本地驱动
    4、本地协议纯JDBC驱动
    

    JDBC的主要操作类及接口:

    
    java.sql.DriverManager   用于管理JDBC驱动程序
    
    java.sql.Connection       用于建立与特定数据库的连接,一个连接就是一个会话,建立连接后便可以执行SQL语句和获得检索结果。
    
    java.sal.Statement        一个Statement对象用于执行静态SQL语句,并获得语句执行后产生的结果。
    
    java.sql.PreparedStatement    创建一个可以编译的SQL语句对象,给对象可以被多次运行,以提高执行效率,改接口是Statement的子接口。
    
    java.sql.ResultSet        用于创建表示SQL语句检索结果集,用户通过结果集完成对数据库的访问。
    
    java.sql.Driver             定义一个数据库的驱动接口。
    
    

    二、MySQL
    MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。
    常用命令:

    show databases; 显示数据库
    create database name; 创建数据库
    use databasename; 选择数据库
    drop database name 直接删除数据库,不提醒
    
    show tables; 显示表
    describe tablename; 表的详细描述
    select中加上distinct 去除重复字段
    

    记事本源码:

    package hlha;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.awt.event.InputEvent;
    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;
    
    import javax.imageio.*;
    import javax.swing.*;
    
    public class jjj implements ActionListener{
        JFrame frame;
        JMenuBar bar;
        JMenu fileMenu,editMenu;
        JMenuItem newItem,openItem,saveItem,closeItem,fnewItem,anothersaveItem;
        ImageIcon newIcon,saveIcon,closeIcon,openIcon;
        JScrollPane scroll;
        JTextArea area;
        JFileChooser chooser;
        File file;
        
        public jjj() {
            frame =new JFrame("记事本");
            bar =new JMenuBar();
            fileMenu =new JMenu("文件");
            editMenu =new JMenu("编辑");
            newIcon = new ImageIcon("d:" + File.separator + "test" + File.separator +"新建.png");
            openIcon = new ImageIcon("d:" + File.separator + "test" + File.separator +"打开.png");
            saveIcon = new ImageIcon("d:" + File.separator + "test" + File.separator +"保存.png");
            closeIcon = new ImageIcon("d:" + File.separator + "test" + File.separator +"关闭.png");
            area =new JTextArea();
            scroll =new JScrollPane(area);
            
            newItem =new JMenuItem("新窗口(N)",newIcon);
            openItem =new JMenuItem("打开(O)",openIcon);
            saveItem =new JMenuItem("保存(S)",saveIcon);
            closeItem =new JMenuItem("关闭(X)",closeIcon);
            anothersaveItem=new JMenuItem("另存为(A)",saveIcon);
            fnewItem =new JMenuItem("新建(N)");
            
            //监听器
            fnewItem.addActionListener(this);
            newItem.addActionListener(this);
            openItem.addActionListener(this);
            saveItem.addActionListener(this);
            closeItem.addActionListener(this);
            anothersaveItem.addActionListener(this);
            
            fileMenu.add(newItem);
            fileMenu.add(openItem);
            fileMenu.add(saveItem);
            fileMenu.add(closeItem);
            fileMenu.add(fnewItem);
            fileMenu.add(anothersaveItem);
            fileMenu.addSeparator();
            
            //快捷键
            
            fileMenu.setMnemonic(KeyEvent.VK_N);
            newItem.setMnemonic(KeyEvent.VK_N);
            openItem.setMnemonic(KeyEvent.VK_O);
            saveItem.setMnemonic(KeyEvent.VK_S);
            anothersaveItem.setMnemonic(KeyEvent.VK_A);
            closeItem.setMnemonic(KeyEvent.VK_C);
            fnewItem.setAccelerator(KeyStroke.getKeyStroke('N',java.awt.Event.CTRL_MASK));
            newItem.setAccelerator(KeyStroke.getKeyStroke('N',java.awt.Event.CTRL_MASK|InputEvent.SHIFT_MASK));
            openItem.setAccelerator(KeyStroke.getKeyStroke('O',java.awt.Event.CTRL_MASK));
            saveItem.setAccelerator(KeyStroke.getKeyStroke('S',java.awt.Event.CTRL_MASK));
            anothersaveItem.setAccelerator(KeyStroke.getKeyStroke('A',java.awt.Event.CTRL_MASK));
            closeItem.setAccelerator(KeyStroke.getKeyStroke('X',java.awt.Event.CTRL_MASK));
            
            bar.add(fileMenu);
            bar.add(editMenu);
            
    
            frame.setJMenuBar(bar);
            frame.add(scroll);
            frame.setSize(600,500);
            frame.setVisible(true);
        }
        public void actionPerformed(ActionEvent event) {
            Object obj=event.getSource();
            if(obj instanceof JMenuItem) {
                JMenuItem item=(JMenuItem) obj;
            //新建窗口
                if(item==newItem) {
                    new jjj();
                }
            //  打开文本
                else if(item == openItem){
                    chooser=new JFileChooser();
                    chooser.showOpenDialog(null);
                    file = chooser.getSelectedFile();
                    try {
                        FileInputStream fis=new FileInputStream(file);
                        byte[] b=new byte[fis.available()];
                        fis.read(b);
                        area.append(new String(b));
                        fis.close();
                    }catch(FileNotFoundException e) {
                        e.printStackTrace();
                    } catch (IOException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }
                }//保存
    //          else if(item == saveItem) {
    //              chooser=new JFileChooser();
    //              chooser.showSaveDialog(.this);
    //          }
                //文件另存为
                else if(item ==anothersaveItem) {
                    chooser=new JFileChooser();
                    chooser.showSaveDialog(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 c) {
                        c.printStackTrace();
                    }
                }else if(item== closeItem) {
                    System.exit(1);
                }
            }   
        }   
    }
    
    



  • 相关阅读:
    统计MySQL数据库硬盘占用量大小
    zookeeper 集群安装与配置
    On Java 8中文版 英雄召集令
    下划线参数转成驼峰
    在Ubuntu 18.04中安装JDK 8
    GIT和GitHub的使用总结
    Python目录
    selenium代码实例
    Fiddler请求图标含义
    Tensorflow之神经网络
  • 原文地址:https://www.cnblogs.com/dapeng1234/p/11960400.html
Copyright © 2011-2022 走看看