教材是JDK8的,家里也可以正规的测试JDK8,

但公司电脑是JDK6的,所以代码要相应的变动一下下,以适应老的TRY语句。

Message.java

package cc.openhome;import java.io.Serializable;public class Message implements Serializable {private Long id;private String name;private String email;private String msg;public Message() {}public Message(String name, String email, String msg) {this.name = name;this.email = email;this.msg = msg;}public String getEmail(){return email;}public void setEmail(String email) {this.email = email;}public Long getId() {return id;}public void setId(Long id) {this.id = id;}public String getMsg() {return msg;}public void setMsg(String msg) {this.msg = msg;}public String getName() {return name;}public void setName(String name) {this.name = name;}
}

MessageDAO.java

package cc.openhome;import java.sql.*;
import java.util.*;public class MessageDAO {private String url;private String user;private String passwd;public MessageDAO(String url, String user, String passwd) {this.url = url;this.user = user;this.passwd = passwd;}public void add(Message message) {try {Connection conn = DriverManager.getConnection(url, user, passwd);Statement statement = conn.createStatement();statement.executeUpdate("INSERT INTO t_message(name, email, msg) VALUES('"+ message.getName() + "', '"+ message.getEmail() + "', '"+ message.getMsg() + "')");} catch (SQLException e) {throw new RuntimeException(e);}}public List<Message> get() {List<Message> messages = null;try {Connection conn = DriverManager.getConnection(url, user, passwd);Statement statement = conn.createStatement();ResultSet result = statement.executeQuery("SELECT * FROM t_message");messages = new ArrayList<Message>();while(result.next()) {Message message = new Message();message.setId(result.getLong(1));message.setName(result.getString(2));message.setEmail(result.getString(3));message.setMsg(result.getString(4));messages.add(message);}} catch (SQLException e) {throw new RuntimeException(e);}return messages;}}

MessageDAODemo.java

package cc.openhome;import java.util.Scanner;public class MessageDAODemo {public static void main(String args[]) throws Exception {Scanner scanner = new Scanner(System.in);MessageDAO dao = new MessageDAO("jdbc:mysql://1.2.3.4:3306/demo?" +"useUnicode=true&characterEncoding=UTF8","user", "pwd");while (true) {System.out.print("(1) Show Message (2) Add Message: ");switch(Integer.parseInt(scanner.nextLine())) {case 1:for (Message message : dao.get()) {System.out.printf("%d\t%s\t%s\t%s%n",message.getId(),message.getName(),message.getEmail(),message.getMsg());}break;case 2:System.out.print("Name: ");String name = scanner.nextLine();System.out.print("Email: ");String email = scanner.nextLine();System.out.print("Message: ");String msg = scanner.nextLine();dao.add(new Message(name, email, msg));}}}
}

注意编译命令的先后顺序(何时带-d. 何时带-cp . 何时需要引用MYSQL的jdbc驱动和自己的类;)

JAVA数据库连接的另一种实现及简单的数据插入及显示相关推荐

  1. java制作oracle程序,Java程序操作Oracle两种方式之简单实现

    Java程序操作Oracle两种方式之简单实现 1.通过JDBC-ODBC桥连接Oracle数据库 (1)创建odbc源,在控制面板->管理工具->数据源(odbc)中添加DSN,比如取名 ...

  2. java定时增量同步,一种可配置的定时数据同步方法与流程

    本发明涉及数据交换技术,尤其涉及一种可配置的定时数据同步方法.解决企业内部异构系统之间的数据同步问题.主要利用计算机多线程技术.XML技术.数据库技术实现.具有简单配置.快速部署.灵活扩展的特点,并且 ...

  3. jdbc批量插入的4种方式【百万条数据插入只需几秒】

    mysql数据库准备 #打开数据库test01; use test01; #创建表a,表a包含int型的id列.可变长度型的name[长度20个字符] create table a (id INT,N ...

  4. Java数据库连接(JDBC)之一:JDBC详细连接过程

    JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口 ...

  5. 4.Java数据库连接_1.JDBC (Java DB Connection)简介

    //============================================================================ Mysql安装参考: http://blo ...

  6. JDBC (Java DB Connection)---Java数据库连接

    一:JDBC (Java DB Connection)-Java数据库连接 JDBC是一种可用于执行SQL语句的JAVA API(ApplicationProgramming Interface应用程 ...

  7. JAVA数据库连接(JDBS)

    1.JDBS简介 JDBC(Java DataBase Connectivity), 即java数据库连接,是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Ja ...

  8. day04 JDBC java数据库连接

    day04 JDBC java数据库连接 yuxiaohu已关注 2017.12.03 16:12:19字数 139阅读 85 1 导包 mysql 提供的实现java接口的包路径 C:\Progra ...

  9. Java数据库连接池实现原理

    https://blog.csdn.net/tuke_tuke/article/details/51532510 一般来说,Java应用程序访问数据库的过程是: ①装载数据库驱动程序: ②通过jdbc ...

最新文章

  1. 基于NPOI的Excel数据导入
  2. 光流Optical Flow介绍与OpenCV实现
  3. MSSQL 访问Mysql
  4. Spark On YARN 集群安装部署
  5. 使用yml多环境配置
  6. SQL Sever sa密码丢失
  7. 一个下课的时间带你手写promise!
  8. JavaScript 面向对象编程(三) —— 函数进阶 / 严格模式 / 高阶函数 / 闭包 / 浅拷贝和深拷贝
  9. Nginx+tomcat+memcached缓存共享session
  10. apache poi 修改docx表格_JAVA poi对word.docx文件的修改
  11. Windows USB驱动开发点滴积累备忘录
  12. 解决Git 克隆代码 The remote end hung up unexpectedly错误
  13. Javascript的防抖和节流、VUE的防抖和节流
  14. 浏览器加载、渲染过程总结
  15. 最全的搜索引擎入口和分类目录入口
  16. 计算机笔记检讨,上课没做笔记的反省检讨书范文550字
  17. MATLAB加柯西分布噪声图像和加柯西分布噪声图像直方图
  18. opencv怎么找到手指最高处
  19. 【JAVA】力扣第198场周赛代码+解题思路——【排名第 1 ~ 300 名的参赛者可获「微软中国」简历内推机会】做对前两道就能排到268/ 5778(4.6%)
  20. 一名优秀的数据分析师,应该具备哪些基本素质?

热门文章

  1. 计算c53的c语言的程序,C程序设计的常用算法.doc
  2. 关于synchronize与lock的区别
  3. 华为鸿蒙产业链股票,华为P40或用鸿蒙 华为产业链概念股一览
  4. 黑星什么意思_星月菩提黑星海南料什么意思
  5. python组合数据类型有哪些_Python学习之组合数据类型
  6. tensorflow2版本学习教程1-mnist数据集手写字体
  7. mysql的字符集编码_MySQL的字符编码设置
  8. 前端页面速度统计方法
  9. c++ 11新特性总结_JDK1.8新特性Stream和Collectors19个常用示例总结
  10. 光伏电站清扫机器人_光伏智能清扫机器人