博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JAVA数据库连接的另一种实现及简单的数据插入及显示
阅读量:6161 次
发布时间:2019-06-21

本文共 4065 字,大约阅读时间需要 13 分钟。

教材是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
get() { List
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
(); 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驱动和自己的类;)

转载地址:http://yulfa.baihongyu.com/

你可能感兴趣的文章
使用局部标准差实现图像的局部对比度增强算法。
查看>>
2017-2018-1 20165313 《信息安全系统设计基础》第八周学习总结
查看>>
《代码敲不队》第四次作业:项目需求调研与分析
查看>>
菜鸡互啄队—— 团队合作
查看>>
HttpWebRequest的GetResponse或GetRequestStream偶尔超时 + 总结各种超时死掉的可能和相应的解决办法...
查看>>
SparseArray
查看>>
第二章
查看>>
android背景选择器selector用法汇总
查看>>
[转]Paul Adams:为社交设计
查看>>
showdialog弹出窗口刷新问题
查看>>
java
查看>>
Vue.js连接后台数据jsp页面  ̄▽ ̄
查看>>
关于程序的单元测试
查看>>
mysql内存优化
查看>>
都市求生日记第一篇
查看>>
Java集合---HashMap源码剖析
查看>>
SQL优化技巧
查看>>
thead 固定,tbody 超出滚动(附带改变滚动条样式)
查看>>
Dijkstra算法
查看>>
css 动画 和 响应式布局和兼容性
查看>>