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

    课程总结

    JDBC驱动程序分为四类:

    1)JDBC-ODBC桥驱动;
    2)JDBA本地驱动;
    3)JDBC网络驱动;
    4)本地协议纯JDBC驱动;
    

    JDBC的连接地址实际上是由以下的3个部分组成。

    (1)jabc 协议:JDBC URL 中的协议总是 jdbc。
    (2)子协议:驱动程序名或数据库连接机制(这种机制可由一个或多个驱动程序支持)的名称,如
    MySQL。
    (3)子名称: 种标识数据库的方法。必须遵循“//主机名:端口/子协议”的标准URL 命名约定,
    如//localhost:3306/mldn
    

    加载驱动程序:

    Class.forName(driverClass)
    //加载MySql驱动
    Class.forName("com.mysql.jdbc.Driver")
    //加载Oracle驱动
    Class.forName("oracle.jdbc.driver.OracleDriver")
    
    

    数据库语言

    1、增加数据

    insert into 表名称[(字段1,字段2,....字段n)]values(值1,值2.....值n);
    

    2、删除数据

    delete 表名称[删除条件];
    

    3、更新数据

    update 表名称 set 字段1=值1......字段n=值1[where 更新条件];
    

    4查询数据

    select{*|column alias}
    from 表名称 别名
    [where condition(s)];        //设置查询条件
    

    简易记事本

    实验代码

    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.awt.event.WindowAdapter;
    import java.awt.event.WindowEvent;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.util.EventObject;
    
    import javax.swing.JFileChooser;
    import javax.swing.JFrame;
    import javax.swing.JMenu;
    import javax.swing.JMenuBar;
    import javax.swing.JMenuItem;
    import javax.swing.JTextArea;
    import javax.swing.KeyStroke;
    
    import junit.framework.Test;
    
    public  class jishiben implements ActionListener{
    	JFrame frame;
    	JMenu q,w,e,r,t;
    	JTextArea wb;
    	JMenuBar bar;
    	JMenuItem one,two,theer,four,five,one1,two1,theer1;
    	JFileChooser open;
    	File file;
    
    
    
    public   jishiben() {
    	
        	 frame=new JFrame("记事本");
        	
        	 bar=new JMenuBar();
        	
        	 q=new JMenu("文件(F)");
        	 w=new JMenu("编辑(E)");
        	 e=new JMenu("格式(O)");
        	 r=new JMenu("查看(V)");
        	 t=new JMenu("帮助(H)");
        	
        	 wb=new JTextArea();
        	
        	 one=new JMenuItem("新建(N)");
        	 two=new JMenuItem("打开(O)");
        	 theer=new JMenuItem("保存(S)");
        	 four=new JMenuItem("另存为(A)");
        	 five=new JMenuItem("退出(X)");
        	
        	 one1=new JMenuItem("撤销(U)");
        	 two1=new JMenuItem("复制(C)");
        	 theer1=new JMenuItem("粘贴(P)");
        	
        	
        	
        	
        	
        	q.setMnemonic('F');
        	w.setMnemonic('E');
        	e.setMnemonic('O');
        	r.setMnemonic('V');
        	t.setMnemonic('H');
        	
        	one1.setMnemonic('U');
        	two1.setMnemonic('C');
        	theer1.setMnemonic('P');
        	
        	
        	one.setMnemonic('N');
        	two.setMnemonic('O');
        	theer.setMnemonic('s');
        	four.setMnemonic('A');
        	five.setMnemonic('X');
        	
        	//q.setAccelerator(KeyStroke.getKeyStroke('F',java.awt.Event.ALT_MASK));
        	
        	one.setAccelerator(KeyStroke.getKeyStroke('N',java.awt.Event.CTRL_MASK));
        	two.setAccelerator(KeyStroke.getKeyStroke('O',java.awt.Event.CTRL_MASK));
        	theer.setAccelerator(KeyStroke.getKeyStroke('S',java.awt.Event.CTRL_MASK));
        	four.setAccelerator(KeyStroke.getKeyStroke('A',java.awt.Event.CTRL_MASK));
        	five.setAccelerator(KeyStroke.getKeyStroke('X',java.awt.Event.CTRL_MASK));
        	
        	one1.setAccelerator(KeyStroke.getKeyStroke('U',java.awt.Event.CTRL_MASK));
        	two1.setAccelerator(KeyStroke.getKeyStroke('C',java.awt.Event.CTRL_MASK));
        	theer1.setAccelerator(KeyStroke.getKeyStroke('P',java.awt.Event.CTRL_MASK));
        	
        	
        	  one.addActionListener(this);
              two.addActionListener(this);
              theer.addActionListener(this);
              four.addActionListener(this);
              five.addActionListener(this);
        	
        	q.add(one);
        	q.add(two);
        	q.add(theer);
        	q.add(four);
        	q.addSeparator();
        	q.add(five);
        	
        	w.add(one1);
        	w.add(two1);
        	w.add(theer1);
        	
        	bar.add(q);
        	bar.add(w);
        	bar.add(e);
        	bar.add(r);
        	bar.add(t);
        	
        	frame.addWindowListener(new WindowAdapter() {
    			public void windowClosing(WindowEvent arg0) {
    				System.exit(1);
    			}
    		});
        	frame.add(wb);
        	frame.setJMenuBar(bar);
        	frame.setVisible(true);
        	frame.pack();
        	frame.setLocation(300,300);
        	
        }
    
    
    
    
    
    	@Override
    	public void actionPerformed(ActionEvent event) {
    		 
    		Object obj=event.getSource();
    	        if(obj instanceof JMenuItem) {
    	            JMenuItem item=(JMenuItem) obj;
    	        
    	            if(item==one) {
    	                new jishiben();
    	            }
    	       
    	            else if(item == two){
    	                open=new JFileChooser();
    	                open.showOpenDialog(null);
    	                file = open.getSelectedFile();
    	                try {
    	                    FileInputStream fis=new FileInputStream(file);
    	                    byte[] b=new byte[fis.available()];
    	                    fis.read(b);
    	                    wb.append(new String(b));
    	                    fis.close();
    	                }catch(FileNotFoundException e) {
    	                    e.printStackTrace();
    	                } catch (IOException e) {
    	                    // TODO Auto-generated catch block
    	                    e.printStackTrace();
    	                }
    	            }
    	          else if(item == theer) {
                 
             }
    
    	            else if(item ==four) {
    	                open=new JFileChooser();
    	                open.showSaveDialog(null);
    	                file = open.getSelectedFile();
    	                try {
    	                    if(!file.exists()) {
    	                        file.createNewFile();
    	                    }
    	                    FileOutputStream fos=new FileOutputStream(file);
    	                    byte[] b = wb.getText().getBytes();
    	                    fos.write(b);
    	                    fos.close();
    	                }catch(IOException c) {
    	                    c.printStackTrace();
    	                }
    	            }else if(item== five) {
    	                System.exit(1);
    	            }
    	        }   
    	}
    }
    
    

    测试代码:

    
    public class jishibenTest {
    	 public static void main(String[] args) {
    	        new jishiben();
    	    }
    }
    
    

    新建:

    打开

    保存

  • 相关阅读:
    JQuery中的动画
    javascript之变量、作用域、作用域链
    正确理解javascript的this关键字
    我忽略了的DOCTYPE!
    JQuery中的DOM操作
    发布一款html5移动端scroll框架:xScroll
    在debug时使Flutter中的print打印json数据时更美观易读
    使用ValueListenableBuilder监听TextEditingController
    Flutter使用rxdart和ChangeNotifier实现的倒计时按钮
    Flutter设计一个长按自动步进的按钮
  • 原文地址:https://www.cnblogs.com/hhl296738954/p/11960516.html
Copyright © 2011-2022 走看看