学习总结:

一、JDBC:

1.JDBC提供里一套与平台无关的标准数据库操作接口和类,只要支持java的数据库厂商,所提供的数据库都可以以使用JDBC操作。

2.JDBC的主要操作类及接口:



3.JDBC的操作步骤:

(1)加载驱动程序:驱动程序有各个数据库产生商提供。

(2)连接数据库:连接时要提供连接路径、用户名、密码。

(3)实例化操作:通过连接对象实例化Statement或PreparedStatement对象。

(4)操作数据库:使用Statement或PreparedStatemen操作,如果是查询,则全部的查询结果使ResultSet进行接收。

二、MySQL数据库:是一个小型关系数据库管理系统。

安装及配置:

常用命令:
连接MySQL数据库:mysql -u用户名 -p密码
创建数据库:CREATE DATABASE 数据库名称
删除数据库:DROP DATABASE 数据库名称
使用数据库:USE 数据库名称
创建数据库表:
CREATE TABLE 表名称(
字段名称1 字段类型[DEFAULT 默认值][约束],
字段名称2 字段类型[DEFAULT 默认值][约束],
...,
字段名称n 字段类型[DEFAULT 默认值][约束]

删除数据库表:DROP TABLE 表名称;
查看表结构:DESC 表名称;
查看数据库信息:
查看全部数据库:SHOW ADTABASES;
查看一个数据库的全部表:SHOW TABLES;

实验 :记事本

实现代码:

package jishi;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent; import javax.swing.*; import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException; public class Notepad implements ActionListener {
JFrame frame;
JMenuBar bar;
JMenu fileMenu,editMenu;
JMenuItem newItem,openItem,saveItem,closeItem;
ImageIcon newIcon,openIcon,saveIcon,closeIcon;
JScrollPane scroll;
JTextArea area;
JFileChooser chooser;
File file; public Notepad(){
frame = new JFrame("记事本");
bar = new JMenuBar();
fileMenu = new JMenu("文件(F)");
editMenu = new JMenu("编辑(E)");
area = new JTextArea();
scroll = new JScrollPane(area); newItem = new JMenuItem("新建(N)",newIcon);
openItem = new JMenuItem("打开(O)",newIcon);
saveItem = new JMenuItem("保存(S)",newIcon);
saveItem = new JMenuItem("另存为(A)",newIcon);
closeItem = new JMenuItem("关闭(X)",newIcon);
JScrollPane scroll = new JScrollPane(area, ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED); //加监听器
newItem.addActionListener(this);
openItem.addActionListener(this);
saveItem.addActionListener(this);
saveItem.addActionListener(this);
closeItem.addActionListener(this); fileMenu.add(newItem);
fileMenu.add(openItem);
fileMenu.add(saveItem);
fileMenu.add(saveItem);
fileMenu.add(closeItem); newItem.setMnemonic(KeyEvent.VK_N);
newItem.setAccelerator(KeyStroke.getKeyStroke('N', java.awt.Event.CTRL_MASK));
openItem.setMnemonic(KeyEvent.VK_D);
openItem.setAccelerator(KeyStroke.getKeyStroke('D', java.awt.Event.CTRL_MASK));
closeItem.setMnemonic(KeyEvent.VK_K);
closeItem.setAccelerator(KeyStroke.getKeyStroke('K', java.awt.Event.CTRL_MASK));
saveItem.setMnemonic(KeyEvent.VK_S);
saveItem.setAccelerator(KeyStroke.getKeyStroke('S', java.awt.Event.CTRL_MASK)); bar.add(fileMenu);
bar.add(editMenu); frame.setJMenuBar(bar);
frame.add(scroll);
frame.setSize(600,400);
frame.setVisible(true);
} //事件监听处理
public void actionPerformed(ActionEvent event){
Object ob = event.getSource();
if(ob instanceof JMenuItem){
JMenuItem item = (JMenuItem) ob;
if(item == newItem){
new Notepad();
}
else if (item == openItem){
chooser = new JFileChooser();
chooser.showOpenDialog(null);
file = chooser.getSelectedFile();
try{
FileInputStream fs = new FileInputStream(file);
byte[] b = new byte[fs.available()];
fs.read(b);
area.append(new String(b));
fs.close();
}catch(FileNotFoundException e){
e.printStackTrace();
}catch(IOException e){
e.printStackTrace();
}
}
else if (item == saveItem){
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 e){
e.printStackTrace();
}
}
else if (item == closeItem){
System.exit(1);
}
}
} }
package jishi;

public class Demo {

	public static void main(String[] args) {
new Notepad(); } }

运行结果:

十四周学习总结&简易记事本的更多相关文章

  1. 201521123061 《Java程序设计》第十四周学习总结

    201521123061 <Java程序设计>第十四周学习总结 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多数据库相关内容. 2. 书面作业 1. MySQL数据 ...

  2. 201521123072《java程序设计》第十四周学习总结

    201521123072<java程序设计>第十四周学习总结 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多数据库相关内容. 2. 书面作业 1. MySQL数据库 ...

  3. 201521123038 《Java程序设计》 第十四周学习总结

    201521123038 <Java程序设计> 第十四周学习总结 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多数据库相关内容. 接口: DriverManager ...

  4. 杨其菊201771010134《面向对象程序设计(java)》第十四周学习总结

    第十四周学习总结 第一部分:理论知识 理论知识:本周学习Swing用户界面 内容:Swing与模型-视图-控制器设计模式:布局管理概述:文本输入 :选择组件:菜单:复杂的布局管理:对话框: 第二部分: ...

  5. 201871010111-刘佳华《面向对象程序设计(java)》第十四周学习总结

    201871010111-刘佳华<面向对象程序设计(java)>第十四周学习总结 实验十二  Swing图形界面组件(一) 实验时间 2019-11-29 第一部分:基础知识总结 1.设计 ...

  6. 201271050130-滕江南-《面向对象程序设计(java)》第十四周学习总结

    201271050130-滕江南-<面向对象程序设计(java)>第十四周学习总结 项目 内容 这个作业属于哪个课程 <任课教师博客主页链接> https://www.cnbl ...

  7. 201871010104-陈园园 《面向对象程序设计(java)》第十四周学习总结

    201871010104-陈园园 <面向对象程序设计(java)>第十四周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ ...

  8. 201871010105-曹玉中《面向对象程序设计(java)》第十四周学习总结

    201871010105-曹玉中<面向对象程序设计(java)>第十四周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ ...

  9. 201871010106-丁宣元 《面向对象程序设计(java)》第十四周学习总结

    201871010106-丁宣元 <面向对象程序设计(java)>第十四周学习总结 正文开头: 项目 内容 这个作业属于哪个课程 https://home.cnblogs.com/u/nw ...

随机推荐

  1. Eclipse快速生成do while if 等方法

    选中所需要加方法的代码  右键  选中 surrounded with选择你需要就可以了

  2. golang(1):简介

    golang语言特性: 1. 垃圾回收 a. 内存自动回收,不需要开发人员管理内存,开发人员专注业务实现 b. 只需要new分配内存,不需要释放 2. 天然并发 a. 从语言层面支持并发,非常简单 b ...

  3. wpf ActualWidth为0解决方法

    LocalNewsControl() { var descriptor = DependencyPropertyDescriptor.FromProperty(ActualWidthProperty, ...

  4. 学会这 2 点,轻松看懂 MySQL 慢查询日志

    MySQL中的日志包括:错误日志.二进制日志.通用查询日志.慢查询日志等等.这里主要介绍下比较常用的两个功能:通用查询日志和慢查询日志. 1)通用查询日志:记录建立的客户端连接和执行的语句. 2)慢查 ...

  5. SpringBoot + Vue + nginx项目部署(零基础带你部署)

    一.环境.工具 jdk1.8 maven spring-boot idea VSVode vue 百度网盘(vue+springboot+nginx源码): 链接:https://pan.baidu. ...

  6. Hadoop网页监控配置

    接之前的内容http://www.cnblogs.com/jourluohua/p/8734406.html 在之前那的内容中,仅实现了Hadoop的安装和运行,距离实际使用还有很远.现在先完成一个小 ...

  7. 日志:slf4j+logback 的配置与使用

    1. 常用日志组件和选择 java开发日志处理是发现和调试bug所 必不可少的,那么现在企业中常用的日志组件有哪些呢,JCL . JUL.  SLF4j.Log4j.  Log4j2 . Logbac ...

  8. 框架之一:mybatis

    同时加载驱动包 mysql+mybatis 创建bean对应的mapper接口bookMapper package com.imu.mzw.mapper; import java.util.List; ...

  9. Linux SWAP交换分区维护

    1.查看当前swap分区信息

  10. Redis位操作介绍

    在学习redis的过程了,看到了redis还能用于大数据处理,具体场景如下:腾讯10亿用户,要几个毫秒内查询到某个用户是否在线,你能怎么做?千万别说给每个用户建立一个key,然后挨个记(你可以算一下需 ...