Java——数据库连接层
来源:互联网 发布:上传淘宝图片尺寸 编辑:程序博客网 时间:2024/04/29 09:49
之前忘了一个东西,之前提到,软件一般有三层架构,视图层,业务逻辑层和数据库连接层。视图层
可以是Android中设计界面,业务逻辑就是java后端运行的
代码,将业务逻辑层的数据用数据流通格式javabean封装起来,通过创建类的
beandao,通过类的beandao实现顶层接
口设计,调用sql语句将javabean导入数据库。
简单写一下代码:
以之前图书销售单的例子来说,正规标准点的设计,base包下面存放顶层的接口,bean
包下面存放标准javabean,dao包下面存放javabean的各自dao,domain存放main方
法测试。
接口类:
package com.example.base;public interface DBinter { String name = "root"; String password = "root"; String address = "jdbc:mysql//localhost:3066/xxx"; void insert(Object o); void delete(Object o); void update(Object o); Object find(Object o);}
javabean:
图书类:
package com.example.bean;public class TuShu { private String id; private String name; private String chubanshe; private double jiage; public TuShu(String id, String name, String chubanshe, double jiage) { super(); this.id = id; this.name = name; this.chubanshe = chubanshe; this.jiage = jiage; } public TuShu() { super(); } public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getChubanshe() { return chubanshe; } public void setChubanshe(String chubanshe) { this.chubanshe = chubanshe; } public double getJiage() { return jiage; } public void setJiage(double jiage) { this.jiage = jiage; } @Override public String toString() { return "TuShu [id=" + id + ", name=" + name + ", chubanshe=" + chubanshe + ", jiage=" + jiage + "]"; } @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((chubanshe == null) ? 0 : chubanshe.hashCode()); result = prime * result + ((id == null) ? 0 : id.hashCode()); long temp; temp = Double.doubleToLongBits(jiage); result = prime * result + (int) (temp ^ (temp >>> 32)); result = prime * result + ((name == null) ? 0 : name.hashCode()); return result; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; TuShu other = (TuShu) obj; if (chubanshe == null) { if (other.chubanshe != null) return false; } else if (!chubanshe.equals(other.chubanshe)) return false; if (id == null) { if (other.id != null) return false; } else if (!id.equals(other.id)) return false; if (Double.doubleToLongBits(jiage) != Double.doubleToLongBits(other.jiage)) return false; if (name == null) { if (other.name != null) return false; } else if (!name.equals(other.name)) return false; return true; }}
用户类:
package com.example.bean;public class User { private String id; private String name; private String password; private String addr; public User(String name, String id, String password, String addr) { super(); this.name = name; this.id = id; this.password = password; this.addr = addr; } public User() { super(); } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getId() { return id; } public void setId(String id) { this.id = id; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public String getAddr() { return addr; } public void setAddr(String addr) { this.addr = addr; } @Override public String toString() { return "User [name=" + name + ", id=" + id + ", password=" + password + ", addr=" + addr + "]"; } @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((addr == null) ? 0 : addr.hashCode()); result = prime * result + ((id == null) ? 0 : id.hashCode()); result = prime * result + ((name == null) ? 0 : name.hashCode()); result = prime * result + ((password == null) ? 0 : password.hashCode()); return result; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; User other = (User) obj; if (addr == null) { if (other.addr != null) return false; } else if (!addr.equals(other.addr)) return false; if (id == null) { if (other.id != null) return false; } else if (!id.equals(other.id)) return false; if (name == null) { if (other.name != null) return false; } else if (!name.equals(other.name)) return false; if (password == null) { if (other.password != null) return false; } else if (!password.equals(other.password)) return false; return true; }}
销售单类:
package com.example.bean;public class XiaoShouDan { private String id; private String time; private int num; public XiaoShouDan(String id, String time, int num) { super(); this.id = id; this.time = time; this.num = num; } public XiaoShouDan() { super(); } public String getId() { return id; } public void setId(String id) { this.id = id; } public String getTime() { return time; } public void setTime(String time) { this.time = time; } public int getNum() { return num; } public void setNum(int num) { this.num = num; } @Override public String toString() { return "XiaoShouDan [id=" + id + ", time=" + time + ", num=" + num + "]"; } @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((id == null) ? 0 : id.hashCode()); result = prime * result + num; result = prime * result + ((time == null) ? 0 : time.hashCode()); return result; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; XiaoShouDan other = (XiaoShouDan) obj; if (id == null) { if (other.id != null) return false; } else if (!id.equals(other.id)) return false; if (num != other.num) return false; if (time == null) { if (other.time != null) return false; } else if (!time.equals(other.time)) return false; return true; }}
各自javabean对应的dao:
图书类dao:
package com.example.dao;import com.example.base.DBinter;import com.example.bean.TuShu;public class TuShuDao implements DBinter{ @Override public void insert(Object o) { // TODO Auto-generated method stub TuShu ts = (TuShu) o; System.out.println("图书数据已添加!"); } @Override public void delete(Object o) { // TODO Auto-generated method stub TuShu ts = (TuShu) o; System.out.println("图书数据已删除!"); } @Override public void update(Object o) { // TODO Auto-generated method stub TuShu ts = (TuShu) o; System.out.println("图书数据已更新!"); } @Override public Object find(Object o) { // TODO Auto-generated method stub System.out.println("图书数据已找到!"); return null; }}
用户类dao:
package com.example.dao;import com.example.base.DBinter;import com.example.bean.User;public class UserDao implements DBinter{ @Override public void insert(Object o) { // TODO Auto-generated method stub User u = (User) o; System.out.println("用户数据已添加!"); } @Override public void delete(Object o) { // TODO Auto-generated method stub User u = (User) o; System.out.println("用户数据已删除!"); } @Override public void update(Object o) { // TODO Auto-generated method stub User u = (User) o; System.out.println("用户数据已更新!"); } @Override public Object find(Object o) { // TODO Auto-generated method stub System.out.println("用户数据已找到!"); return null; }}
销售单dao:
package com.example.dao;import com.example.base.DBinter;import com.example.bean.XiaoShouDan;public class XiaoShouDanDao implements DBinter{ @Override public void insert(Object o) { // TODO Auto-generated method stub XiaoShouDan xsd = (XiaoShouDan) o; System.out.println("销售单数据已添加!"); } @Override public void delete(Object o) { // TODO Auto-generated method stub XiaoShouDan xsd = (XiaoShouDan) o; System.out.println("销售单数据已删除!"); } @Override public void update(Object o) { // TODO Auto-generated method stub XiaoShouDan xsd = (XiaoShouDan) o; System.out.println("销售单数据已更新!"); } @Override public Object find(Object o) { // TODO Auto-generated method stub System.out.println("销售单数据已找到!"); return null; }}
测试类:
package com.example.domain;import com.example.bean.TuShu;import com.example.bean.User;import com.example.bean.XiaoShouDan;import com.example.dao.TuShuDao;import com.example.dao.UserDao;import com.example.dao.XiaoShouDanDao;public class MainTest { public static void main(String[] args) { // TODO Auto-generated method stub User u = new User("张三", "1", "123", "大同大学"); UserDao ud = new UserDao(); ud.insert(u); ud.delete(u); ud.find(u); XiaoShouDan xsd = new XiaoShouDan("2", "2016-11-6", 50); XiaoShouDanDao xsdd = new XiaoShouDanDao(); xsdd.insert(xsd); xsdd.update(xsd); xsdd.find(xsd); TuShu ts = new TuShu("3", "安徒生童话", "人民出版社", 18.50); TuShuDao tsd = new TuShuDao(); tsd.delete(ts); tsd.insert(ts); }}
0 0
- Java——数据库连接层
- JAVA——数据库连接
- JDBC—Java数据库连接
- Java 数据库连接——JDBC
- java——jdbc数据库连接
- JDBC—Java的数据库连接
- 数据库连接——jdbc——java
- java课程实验设计——数据库连接 问题
- 皮皮java笔记——数据库连接DriverManager
- 【Java进阶】——初识数据库连接池
- Java数据库连接池2——c3p0
- 皮皮java笔记——java数据库连接:JDBC API
- Mysql数据库连接———JDBC,Java代码
- 【Java EE学习1】——MyEclipse数据库连接
- Java编程琐事(9)——数据库连接池
- Java数据库连接——JDBC基础知识(JDBC简介)
- Java数据库连接——JDBC基础知识(JDBC使用详解)
- Java数据库连接——JDBC基础知识(JDBC总结)
- Block Chain --- (0) Intro
- c# reflection的作用
- scala集合函数式编程使用示例
- iOS开发- 如何查看崩溃信息
- Python实现简单的WEB服务器
- Java——数据库连接层
- Eclipse一直显示(Hangs)“Computing Git status for repository Application”
- 初始化脚本
- distinct的使用
- 归并排序
- android BLE蓝牙详细讲解(一)
- StarUML使用
- Mybatis trim用法
- UINavigationBar属性及返回按钮更改小结