• 第十四周课程总结&实验报告


    简单记事本

    实验代码

    package Demo;
    
    import java.awt.event.*;
    import java.io.*;
    import javax.swing.*;
    
    class Charon implements ActionListener{
        JFrame frame;
        JMenuBar bar;
        JMenu fileMenu;
        JMenuItem  newItem,openItem,saveItem,closeItem;
        ImageIcon newIcon,openIcon,saveIcon,closeIcon;
        JScrollPane scroll;
        JTextArea area;
        JFileChooser chooser;
        File file;
        
    public Charon() {
        frame = new JFrame("HJ");
        bar = new JMenuBar();
        fileMenu =new JMenu("文件");
        
        newItem = new JMenuItem("新建(N)",newIcon);
        openItem = new JMenuItem("打开(O)",openIcon);
        saveItem = new JMenuItem("另存为(A)",saveIcon);
        closeItem = new JMenuItem("关闭(X)",closeIcon);
        
        area = new JTextArea();
        scroll = new JScrollPane(area);
        
        newItem.setMnemonic(KeyEvent.VK_N);
        openItem.setMnemonic(KeyEvent.VK_O);
        saveItem.setMnemonic(KeyEvent.VK_A);
        closeItem.setMnemonic(KeyEvent.VK_X);
        
        newItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,InputEvent.CTRL_DOWN_MASK));
        openItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O,InputEvent.CTRL_DOWN_MASK));
        saveItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_A,InputEvent.CTRL_DOWN_MASK));
        closeItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,InputEvent.CTRL_DOWN_MASK));
        
        fileMenu.add(newItem);
        fileMenu.add(openItem);
        fileMenu.add(saveItem);
        fileMenu.addSeparator();
        fileMenu.add(closeItem);
        
        newItem.addActionListener(this);
        openItem.addActionListener(this);
        saveItem.addActionListener(this);
        closeItem.addActionListener(this);
        
        bar.add(fileMenu);
        
        frame.setJMenuBar(bar);
        frame.add(scroll);
        frame.setSize(400,300);
        frame.setVisible(true);
        
    }
    
    @Override
    public void actionPerformed(ActionEvent event) {
        
        Object obj = event.getSource();
        JMenuItem item = null;
        if(obj instanceof JMenuItem) {
            JMenuItem item1=(JMenuItem) obj;
            if(item1==newItem) {
                new Charon();
            }else if (item1==openItem) {
                chooser =new JFileChooser();
                chooser.showOpenDialog(null);
                file = chooser.getSelectedFile();
                try {
                    FileInputStream f=new FileInputStream(file);
                    byte[] b = new byte [f.available()];
                    f.read(b);
                    area.append(new String(b));
                    f.close();
                } catch (FileNotFoundException e) {
                    
                    e.printStackTrace();
                } catch (IOException e) {
                    e.printStackTrace();
                }
                
            }else if(item1 ==saveItem) {
                
                chooser.showSaveDialog(null);
                file = chooser.getSelectedFile();
                
            }
            try {
                if(!file.exists()) {
                    file.createNewFile();
                }
                FileOutputStream f1 = new FileOutputStream(file);
                byte[] b=area.getText().getBytes();
                f1.write(b);
                f1.close();
            }catch (FileNotFoundException e) {
                
                e.printStackTrace();
            }catch (IOException e) {
                
                e.printStackTrace();
             }
            }else if(item == closeItem) {
                
                System.exit(1);
            }
        }
    }
    
    public class Pluto4 {
        public static void main(String args[]) {
            new Charon();
        }
    }
    

    运行结果截图



    实验总结:

    这次的记事本我感觉还是挺难的,主要是在实现那几个功能的方面,其他的都用过。在这个记事本中,我没有用到图片,好像不太符合要求。在刚开始实现那几个功能键的时候,我都不会写,后来上网查了资料,看了书上的知识点,以及看了同学的代码,有一点懂了。但是还是得多练习。

    学习总结

    MySQL数据库

    DriverManager类的常用方法

    Connection接口的常用方法


    (1)连接MySQL数据库: mysql -u 用户名 -p 密码

    (2)创建数据库:CREATE DATABASE 数据库名称;

    (3)删除数据库:DROP DATABASE 数据库名称;

    (4)使用数据库:USE 数据库名称;

    (5)创建数据库表:

    CREATE TABLE 表名称(
    字段名称1 字段类型[DEFAULT 默认值][约束],
    字段名称2 字段类型[DEFAULT 默认值][约束],
    ...,
    字段名称n 字段类型[DEFAULT 默认值][约束],
    );

    (6)删除数据库表:DROP TABLE 表名称;

    (7)查看表结构:DESC 表名称 ;

    (8)查看数据库信息

    查看全部数据库:SHOW DATABASES ;
    查看一个数据库的全部表:SHOW TABLES ;

    SQL语法

    (1)SQL分类

    DML(Data Manipulation Language,数据操作语言)——用于检索或者修改数据。
    DDL(Data Definition Language,数据定义语言)——用于定义数据的结构,如创建、修改或者删除数据库对象。
    DCL(Data Control Language,数据控制语言)——用于定义数据库用户的权限。

    (2)创建操作表

    DROP TABLE user ; -- 删除数据库表
    CREATE TABLE user
    (
    id INT AUTO_INCREMENT PRIMARY KEY ,
    name VARCHAR(30) NOT NULL ,
    password VARCHAR(32) NOT NULL ,
    age INT NOT NULL ,
    sex VARCHAR(2) DEFAULT '男' ,
    birthday DATE
    ) ;

    (3)MySQL中的数据类型

    MySQL中的数据类型(1)

    MySQL中的数据类型(2)

    (4)增加数据

    向表中增加数据,可以使用以下的语法:
    INSERT INTO 表名称[(字段1,字段2,字段3,...,字段n)] VALUES (值1,值2,值3,...值n) ;

    (5)删除数据

    删除表中的数据,可以使用以下的语法:
    DELETE FROM 表名称 [删除条件] ;

    (6)更新数据

    当需要修改数据表中的某些记录时,就可以使用UPDATE语句,语句格式如下:
    UPDATE 表名称 SET 字段1=值1,....字段n=值1 [WHERE 更新条件] ;

    (7)查询数据

    简单查询语句格式

    SELECT {*|column alias}
    FROM 表名称 别名
    [WHERE condition(s)] ;  设置查询条件

    指定查询列

    查询user表中的姓名和生日
    SELECT name,birthday FROM user ;

    模糊查询

    查询姓名或密码中包含字母“m”的用户
    SELECT * FROM user WHERE name LIKE '%m%' OR password LIKE '%m%' ;

    LIMIT语句

    以上的查询是将全部的数据都取了出来,如果现在要是想取出数据库表中的一部分数据的话,则在查询的最后加上一个LIMIT语句即可,此语句格式如下:
    SELECT 字段 FROM 表 WHERE 条件 LIMIT 开始行,取出的数据个数;

  • 相关阅读:
    vcruntime140.dll 14.0与PHP版本不兼容,PHP Warning: 'vcruntime140.dll' 14.0 is not compatible with this PHP build linked with 14.16 in Unknown on line 0
    PHP处理字符中的emoji表情
    Thinkphp5 使用unlink删除文件出错Permission denied
    TP5多字段排序
    TP5 按照汉字的拼音排序
    PHP发送微信模版消息
    [52ABP系列]
    [52ABP系列]
    通过微信公众号实现微信快捷登陆
    [Jexus系列] 一、安装并运行 Jexus
  • 原文地址:https://www.cnblogs.com/hltltp/p/11957917.html
Copyright © 2020-2023  润新知