2019Java第十四周课程总结

Posted h-alice

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2019Java第十四周课程总结相关的知识,希望对你有一定的参考价值。

关于记事本代码上周已经写过了,这次把他粘过来了,如下:

记事本

package jishiben;

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.swing.*;
import javax.swing.undo.UndoManager;

public class Jishiben implements ActionListener{

    JFrame frame;
    JTextArea text;
    JScrollPane sp;
    JMenuItem newItem,windomItem,openItem,saveItem,othersaveItem,pagesetupItem,printItem,closeItem;
    JMenuBar bar;
    JMenu fileMenu,editMenu,formatMenu,checkMenu,helpMenu;
    JFileChooser choose;
    File file;
    JTable table;
    JMenuItem blankItem;
    UndoManager undoManager;
    
    public void Wenjian() {
        
        frame=new JFrame("记事本");
        text=new JTextArea();
        sp=new JScrollPane(text);
        bar=new JMenuBar();
        
        fileMenu=new JMenu("文件(F)");
        editMenu=new JMenu("编辑(E)");
        formatMenu=new JMenu("格式(O)");
        checkMenu=new JMenu("查看(V)");
        helpMenu=new JMenu("帮助(H)");
        
        //关于文件的选项
        newItem=new JMenuItem("新建(N)");
        windomItem=new JMenuItem("新窗口(W)");
        openItem=new JMenuItem("打开(O)");
        saveItem=new JMenuItem("保存(S)");
        othersaveItem=new JMenuItem("另存为(A)");
        pagesetupItem=new JMenuItem("页面设置(U)");
        printItem=new JMenuItem("打印(P)");
        closeItem=new JMenuItem("退出(X)");       
        
        //关于文件助记符的设置
        newItem.setMnemonic('N');
        windomItem.setMnemonic('W');
        openItem.setMnemonic('O');
        saveItem.setMnemonic('S');
        othersaveItem.setMnemonic('A');
        pagesetupItem.setMnemonic('U');
        printItem.setMnemonic('P');
        closeItem.setMnemonic('X');
        
        //关于文件快捷键的设置
        newItem.setAccelerator(KeyStroke.getKeyStroke('N',KeyEvent.CTRL_DOWN_MASK));
        windomItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,InputEvent.CTRL_DOWN_MASK|InputEvent.SHIFT_DOWN_MASK));
        openItem.setAccelerator(KeyStroke.getKeyStroke('O',KeyEvent.CTRL_DOWN_MASK));
        saveItem.setAccelerator(KeyStroke.getKeyStroke('S',KeyEvent.CTRL_DOWN_MASK));
        othersaveItem.setAccelerator(KeyStroke.getKeyStroke('S',KeyEvent.CTRL_DOWN_MASK|KeyEvent.SHIFT_DOWN_MASK));
        printItem.setAccelerator(KeyStroke.getKeyStroke('P',KeyEvent.CTRL_DOWN_MASK));
        
        
        //关于文件菜单的动作监听
        newItem.addActionListener(this);
        windomItem.addActionListener(this);
        openItem.addActionListener(this);
        saveItem.addActionListener(this);
        othersaveItem.addActionListener(this);
        pagesetupItem.addActionListener(this);
        printItem.addActionListener(this);
        closeItem.addActionListener(this);
        
        
        //向菜单栏添加
        bar.add(fileMenu);
        bar.add(editMenu);
        bar.add(formatMenu);
        bar.add(checkMenu);
        bar.add(helpMenu);
        
        
        frame.add(sp);
        frame.setJMenuBar(bar);
        frame.setSize(400,300);
        frame.setVisible(true);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        
        
        
    }
    
    public static void main(String[] args) {
        Jishiben shi=new Jishiben();
        shi.Wenjian();

    }
    public void actionPerformed(ActionEvent e){
        //关于文件下面选项的监听
        if(e.getSource()==newItem) {
            text.setText("");
        }else if(e.getSource()==windomItem) {
            Jishiben ben =new Jishiben();
            ben.Wenjian();
        }else if(e.getSource()==openItem) {
            choose=new JFileChooser();
            choose.showOpenDialog(null);
            file=choose.getSelectedFile();
            try {
                FileInputStream input=new FileInputStream(file);
                byte[] b=new byte[input.available()];
                input.read(b);
                text.append(new String(b));
                input.close();
                
            } catch (FileNotFoundException e1) {
                e1.printStackTrace();
            } catch (IOException e1) {
                e1.printStackTrace();
            }
        }else if(e.getSource()==othersaveItem) {
            choose=new JFileChooser();
            choose.showOpenDialog(null);
            file=choose.getSelectedFile();
            try {
                if(!file.exists()) {
                  file.createNewFile();
                }
                FileOutputStream output=new FileOutputStream(file);
                byte[] b=text.getText().getBytes();
                output.write(b);
                output.close();
            } catch (IOException e1) {
                e1.printStackTrace();
            }
        }else if(e.getSource()==saveItem) {
            choose=new JFileChooser();
            choose.showOpenDialog(null);
            file=choose.getSelectedFile();
            try {
                FileOutputStream output=new FileOutputStream(file);
                byte[] b=text.getText().getBytes();
                output.write(b);
                output.close();
            } catch (IOException e1) {
                e1.printStackTrace();
            }
        }else if(e.getSource()==pagesetupItem) {
            
        }else if(e.getSource()==printItem) {
            
        }else if(e.getSource()==closeItem) {
            System.exit(1);
        }
    }

}

运行截图
技术图片

此外本周还学了关于数据库的知识
1.对于jdbc的一个了解
主要常用操作类与接口:
java.sql.DriverManager 用于管理jdbc驱动程序
Java.sql.Connection 用于建立与特定数据库的连接
Java.sql.Statement 一个Statement的对象用于执行静态sql语句,并获得语句执行后产生的后果
Java.sql.PreparedStatement 创建一个可以编译的sql语句对象,该对象可以多次被运行,以提高执行效率,是Statement的子接口
Java.sql.ResultSet 用于创建表示sql语句检索结果的结果集,用户通过结果集完成对数据库的访问
2.mysql的安装与配置
3.MySQL的常用命令
1)mysql -u用户名 -p密码 连接mysql数据库
2)创建数据库:CREATE DATABASE 数据库名称;
3)删除数据库:DROP DATABASE 数据库名称;
4)USE 数据库名称; 使用数据库
5)创建数据库表

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

6)删除数据库表 DROP TABLE 表名称;
7)查看表结构 DESE 表名称;
8)查看数据库信息
查看全部数据库:SHOW DATABASES;
查看一个数据库的全部表:SHOW TABLES;
4.配置mysql数据库的驱动程序

package textshujuku;

public class Text {
        public static final String DBDRIVER="ora.gjt.mm.mysql.Driver";
    public static void main(String[] args) {
        try {
            Class.forName(DBDRIVER);
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }

}

5.连接及关闭数据库
使用DriverManager类连接数据库和Connection接口
连接地址

jdbc:mysql://IP地址:端口号/数据库名称

以上是关于2019Java第十四周课程总结的主要内容,如果未能解决你的问题,请参考以下文章

第十四周java课程学习总结

第十四周课程总结

课程总结

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

第十四周总结

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