学习总结:

一、JDBC:

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

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



3.JDBC的操作步骤:

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

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

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

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

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

安装及配置:

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

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

实验 :记事本

实现代码:

  1. package jishi;
  2. import java.awt.event.ActionEvent;
  3. import java.awt.event.ActionListener;
  4. import java.awt.event.KeyEvent;
  5. import javax.swing.*;
  6. import java.io.File;
  7. import java.io.FileInputStream;
  8. import java.io.FileNotFoundException;
  9. import java.io.FileOutputStream;
  10. import java.io.IOException;
  11. public class Notepad implements ActionListener {
  12. JFrame frame;
  13. JMenuBar bar;
  14. JMenu fileMenu,editMenu;
  15. JMenuItem newItem,openItem,saveItem,closeItem;
  16. ImageIcon newIcon,openIcon,saveIcon,closeIcon;
  17. JScrollPane scroll;
  18. JTextArea area;
  19. JFileChooser chooser;
  20. File file;
  21. public Notepad(){
  22. frame = new JFrame("记事本");
  23. bar = new JMenuBar();
  24. fileMenu = new JMenu("文件(F)");
  25. editMenu = new JMenu("编辑(E)");
  26. area = new JTextArea();
  27. scroll = new JScrollPane(area);
  28. newItem = new JMenuItem("新建(N)",newIcon);
  29. openItem = new JMenuItem("打开(O)",newIcon);
  30. saveItem = new JMenuItem("保存(S)",newIcon);
  31. saveItem = new JMenuItem("另存为(A)",newIcon);
  32. closeItem = new JMenuItem("关闭(X)",newIcon);
  33. JScrollPane scroll = new JScrollPane(area, ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);
  34. //加监听器
  35. newItem.addActionListener(this);
  36. openItem.addActionListener(this);
  37. saveItem.addActionListener(this);
  38. saveItem.addActionListener(this);
  39. closeItem.addActionListener(this);
  40. fileMenu.add(newItem);
  41. fileMenu.add(openItem);
  42. fileMenu.add(saveItem);
  43. fileMenu.add(saveItem);
  44. fileMenu.add(closeItem);
  45. newItem.setMnemonic(KeyEvent.VK_N);
  46. newItem.setAccelerator(KeyStroke.getKeyStroke('N', java.awt.Event.CTRL_MASK));
  47. openItem.setMnemonic(KeyEvent.VK_D);
  48. openItem.setAccelerator(KeyStroke.getKeyStroke('D', java.awt.Event.CTRL_MASK));
  49. closeItem.setMnemonic(KeyEvent.VK_K);
  50. closeItem.setAccelerator(KeyStroke.getKeyStroke('K', java.awt.Event.CTRL_MASK));
  51. saveItem.setMnemonic(KeyEvent.VK_S);
  52. saveItem.setAccelerator(KeyStroke.getKeyStroke('S', java.awt.Event.CTRL_MASK));
  53. bar.add(fileMenu);
  54. bar.add(editMenu);
  55. frame.setJMenuBar(bar);
  56. frame.add(scroll);
  57. frame.setSize(600,400);
  58. frame.setVisible(true);
  59. }
  60. //事件监听处理
  61. public void actionPerformed(ActionEvent event){
  62. Object ob = event.getSource();
  63. if(ob instanceof JMenuItem){
  64. JMenuItem item = (JMenuItem) ob;
  65. if(item == newItem){
  66. new Notepad();
  67. }
  68. else if (item == openItem){
  69. chooser = new JFileChooser();
  70. chooser.showOpenDialog(null);
  71. file = chooser.getSelectedFile();
  72. try{
  73. FileInputStream fs = new FileInputStream(file);
  74. byte[] b = new byte[fs.available()];
  75. fs.read(b);
  76. area.append(new String(b));
  77. fs.close();
  78. }catch(FileNotFoundException e){
  79. e.printStackTrace();
  80. }catch(IOException e){
  81. e.printStackTrace();
  82. }
  83. }
  84. else if (item == saveItem){
  85. chooser = new JFileChooser();
  86. chooser.showSaveDialog(null);
  87. file = chooser.getSelectedFile();
  88. try{
  89. if(!file.exists()){
  90. file.createNewFile();
  91. }
  92. FileOutputStream fos = new FileOutputStream(file);
  93. byte[] b = area.getText().getBytes();
  94. fos.write(b);
  95. fos.close();
  96. }catch(IOException e){
  97. e.printStackTrace();
  98. }
  99. }
  100. else if (item == closeItem){
  101. System.exit(1);
  102. }
  103. }
  104. }
  105. }
  1. package jishi;
  2. public class Demo {
  3. public static void main(String[] args) {
  4. new Notepad();
  5. }
  6. }

运行结果:

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

  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. windows下搭建spark+python 开发环境

    有时候我们会在windows 下开发spark程序,测试程序运行情况,再部署到真实服务器中运行. 那么本文介绍如何在windows 环境中搭建简单的基于hadoop 的spark 环境. 我的wind ...

  2. Git复习(一)之简介、安装、集中式和分布式

    简介 Git是分布式版本控制系统,使用C语言开发的,CVS.SVN是集中式的版本控制系统,集中式的版本控制系统不但速度慢,而且必须联网才能使用. Git是分布式版本控制系统,同一个Git仓库,可以 分 ...

  3. vsCode 前端插件推荐-和插件配置

    参考自网站:https://segmentfault.com/a/1190000011779959 插件安装完成之后,还要对一些插件进行配置,例如: vetur默认配置, 配置的过程: 打开 文件 & ...

  4. jQuery效果--淡入和淡出

    jQuery Fading 方法 通过 jQuery,您可以实现元素的淡入淡出效果. jQuery 拥有下面四种 fade 方法: fadeIn() fadeOut() fadeToggle() fa ...

  5. CentOS查看Java进程并部署jar包

    查看Java进程获取pid号:ps -ef|grep java|grep -v grep 部署Javajar包并指定输出日志文件(null不输出):nohup java -jar xx.jar > ...

  6. 小P的架构生活(上)

    背景:这年小P已经参加工作4年了,在前同事Z的极力劝说下,小P加入了Z新开的公司Y,公司一共有三个人:老板Z.程序员小P.前台W.项目名为XX交易系统 小P加班加点,终于在两个月后把系统开发完成,版本 ...

  7. XAMPP环境搭建及同类推荐

    一.什么是xampp XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包.这个软件包原来的名字是 LAMPP,但是为了避免误解,最新的几个版本就改名为 XAMPP ...

  8. 批处理 使用默认浏览器 打开html文件

    @echo offfor /f "tokens=3,4" %%a in ('"reg query HKEY_CLASSES_ROOT\http\shell\open\co ...

  9. jenkins自动部署代码到多台服务器

    下面讲一下如何通过一台jenkins服务器构建后将代码分发到其他的远程服务器,即jenkins自动部署代码到多台服务器. 1.下载 pulish over ssh 插件 2.系统管理 -> 系统 ...

  10. shell脚本中的数组

    以下命令,都是以数组array=("20150417" "20150416" "20150415")为例. 注意bash中只支持一维数组,没 ...