zoukankan      html  css  js  c++  java
  • 第十四周总结&实验报告八

    实验八

    实现一个简单的记事本操作,有菜单项的

    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.IOException;
    
    import javax.swing.*;
    
    public class Textpad implements ActionListener{
    	JFrame frame;
    	JTextArea text;
    	JMenu menu;
    	File file;
    	JMenuBar menubar;
    	JMenuItem newfile;
    	JMenuItem openfile;
    	JMenuItem savafile;
    	JMenuItem exitfile;
    	JFileChooser choose;
    	public Textpad() {
    		frame = new JFrame("记事本");
    		text = new JTextArea(30,40);
    		menu = new JMenu("文件");
    		menubar = new JMenuBar();
    		newfile = new JMenuItem("新建(N)",new ImageIcon("c:"+ File.separator + "Users" + File.separator + "hyl18" + File.separator + "Desktop" + File.separator + "newfile.jpg"));
    		openfile = new JMenuItem("打开(O)",new ImageIcon("c:"+ File.separator + "Users" + File.separator + "hyl18" + File.separator + "Desktop" + File.separator + "openfiel.jpg"));
    		savafile =  new JMenuItem("保存(S)",new ImageIcon("c:"+ File.separator + "Users" + File.separator + "hyl18" + File.separator + "Desktop" + File.separator + "closefiel.jpg"));
    		exitfile = new JMenuItem("退出(E)",new ImageIcon("c:"+ File.separator + "Users" + File.separator + "hyl18" + File.separator + "Desktop" + File.separator + "exitfiel.jpg"));
    		newfile.setMnemonic('N');
    		openfile.setMnemonic('O');
    		savafile.setMnemonic('S');
    		exitfile.setMnemonic('E');
    		newfile.setAccelerator(KeyStroke.getKeyStroke('N',java.awt.Event.CTRL_MASK));
    		openfile.setAccelerator(KeyStroke.getKeyStroke('O',java.awt.Event.CTRL_MASK));
    		savafile.setAccelerator(KeyStroke.getKeyStroke('S',java.awt.Event.CTRL_MASK));
    		exitfile.setAccelerator(KeyStroke.getKeyStroke('E',java.awt.Event.CTRL_MASK));
    		menu.add(newfile);
    		menu.add(openfile);
    		menu.add(savafile);
    		menu.add(exitfile);
    		menubar.add(menu);
    		newfile.addActionListener(this);
    		openfile.addActionListener(this);
    		savafile.addActionListener(this);
    		exitfile.addActionListener(this);
    		frame.setJMenuBar(menubar);
    		frame.setVisible(true);
    		frame.setSize(400,300);
    		frame.setLocation(300, 200);
    		frame.add(text);
    	}
    	
    	public void actionPerformed(ActionEvent e) {
    		Object obj = e.getSource();
    		if(obj instanceof JMenuItem) {
    		JMenuItem item = (JMenuItem)obj;
    		if(item == newfile) {
    			new Textpad();
    		}
    		else if(item == openfile) {
    			choose = new JFileChooser();
    			choose.showOpenDialog(null);
    			file = choose.getSelectedFile();
    			try {
    				FileInputStream fis = new FileInputStream(file);
    				byte b[] = new byte[fis.available()];
    				fis.read(b);
    				fis.close();
    			} catch (FileNotFoundException e1) {
    				// TODO Auto-generated catch block
    				e1.printStackTrace();
    			} catch (IOException e1) {
    				// TODO Auto-generated catch block
    				e1.printStackTrace();
    			}
    		}
    		else if(item == savafile) {
    			choose = new JFileChooser();
    			choose.showSaveDialog(null);
    		}
    		else if(item == exitfile) {
    			System.exit(1);
    		}
    		}
    		
    	}
    
    }
    
    public class Jishiben {
    	public static void main(String args[]) {
    		new Textpad();
    	}
    
    }
    

    相关截屏


    本周讲解了Java数据库编程,JDBC的介绍,MySQL数据库简介,怎样用JDBC链接数据库,以及必要的驱动程序,KResultSet接口操作

    JDBC

    jdbc提供的是一套标准的接口,极大的体现了Java可移植性的设计思想
    jdbc有
    jdbc-odbc驱动,用微软的odbc进行直接操作
    本地驱动,只能在特定的数据库上,丧失了程序的可移植性。
    网络驱动将纯java客户机连接到不同的数据库上
    本地协议纯jdbc驱动,可以从客户机上直接调用dbms服务器。
    jdbc的核心是为用户提供api类库。

    MySQL

    MySQL由于其体积小,速度快,总体拥有成本低,开放源码
    MySQL默认端口值是3306.

    jdbc链接数据库

    各个数据库会提供jdbc的驱动开发包,直接把jdbc操作所需要的开发包配置到classpath路径即可。
    链接数据库可以使用DriverManager类链接数据库

    数据库连接地址格式

    Connetion接口,以后所有的数据库的操作都从此接口开始

    数据库链接后,数据库的具体操作则要使用Statement接口完成,此接口可以使用Connect接口中提供的create Statement()方法实例化

    ResultSet接口

    在jdbc的操作中数据库的所有查询记录将使用ResultSet接口接收,并使用ResultSet取得内容。

    开发中要限制查询数量。
    所有数据都可以通过getString()方法取得。

  • 相关阅读:
    tectangular container
    WIFI
    微信小程序动态改变数组或对象中的某个属性值
    常用的正则表达式
    前端登录通过账号显示对应头像
    JS返回页面时自动回滚到历史浏览位置
    JavaScript让登录或搜索文本框自动获得焦点
    react脚手架应用
    npm教程3_脚手架原理以及bootstrap引入
    npm教程2
  • 原文地址:https://www.cnblogs.com/xiao--liang/p/11953626.html
Copyright © 2011-2022 走看看