|NO.Z.00103|——————————|BigDataEnd|——|Java&MySQL.数据库连接池和DBUtils.V12|——|MySQL.v13|DBUtils工具类|

一、DBUtils 工具类
### --- DBUtils 简介

——> 使用JDBC 我们发现冗余的代码太多了, 为了简化开发
——> 我们选择使用 DbUtilsCommons DbUtils是Apache组织提供的一个对
——> JDBC 进行简单封装的开源工具类库,使用它能够简化 JDBC 应用程序的开发,
——> 同时也不会影响程序的性能。

### --- 使用方式:

——> DBUtils就是JDBC的简化开发工具包。需要项目导入 commons-dbutils-1.6.jar。

### --- Dbutils 核心功能介绍

——> 1. QueryRunner 中提供对sql语句操作的API.
——> 2. ResultSetHandler接口,用于定义select操作后,怎样封装结果集.
——> 3. DbUtils类,他就是一个工具类,定义了关闭资源与事务处理相关方法.

二、案例相关知识
### --- 表和类之间的关系

——> 整个表可以看做是一个类
——> 表中的一行记录,对应一个类的实例(对象)
——> 表中的一列,对应类中的一个成员属性

三、JavaBean 组件
### --- JavaBean 就是一个类, 开发中通常用于封装数据, 有一下特点

——> 1. 需要实现 序列化接口, Serializable (暂时可以省略)
——> 2. 提供私有字段: private 类型 变量名;
——> 3. 提供 getter 和 setter
——> 4. 提供 空参构造

### --- 创建 Employee 类和数据库的 employee 表对应

——> 我们可以创建一个 entity包,专门用来存放 JavaBean类

public class Employee implements Serializable {
    private int eid;
    private String ename;
    private int age;
    private String sex;
    private double salary;
    private Date empdate;
    // 空参 getter setter 省略
}
四、sql 语句
package com.yanqi.entity;
    <span class="hljs-keyword">import</span> java.<span class="hljs-property">io</span>.<span class="hljs-property">Serializable</span>;
    <span class="hljs-keyword">import</span> java.<span class="hljs-property">util</span>.<span class="hljs-property">Date</span>;

/**

  • JavaBean 类
  •  用来存储数据 成员变量私有 提供get set 提供空参  实现序列化接口
    
  • Employee 类 就是对应了 数据库中 Employee 表
  • eid INT(11) NOT NULL AUTO_INCREMENT,
  • ename VARCHAR(20) DEFAULT NULL,
  • age INT(11) DEFAULT NULL,
  • sex VARCHAR(6) DEFAULT NULL,
  • salary DOUBLE DEFAULT NULL,
  • empdate DATE DEFAULT NULL,

*/
public class Employee implements Serializable {

<span class="hljs-comment">//成员变量的名称 与 表中的列要一样</span>
<span class="hljs-keyword">private</span> int eid;

<span class="hljs-keyword">private</span> <span class="hljs-title class_">String</span> ename;

<span class="hljs-keyword">private</span> int age;

<span class="hljs-keyword">private</span> <span class="hljs-title class_">String</span> sex;

<span class="hljs-keyword">private</span> double salary;

<span class="hljs-keyword">private</span> <span class="hljs-title class_">Date</span> empdate;

<span class="hljs-keyword">public</span> <span class="hljs-title class_">Employee</span>() {
}

<span class="hljs-keyword">public</span> <span class="hljs-title class_">Employee</span>(int eid, <span class="hljs-title class_">String</span> ename, int age, <span class="hljs-title class_">String</span> sex, double salary, <span class="hljs-title class_">Date</span> empdate) {
    <span class="hljs-variable language_">this</span>.<span class="hljs-property">eid</span> = eid;
    <span class="hljs-variable language_">this</span>.<span class="hljs-property">ename</span> = ename;
    <span class="hljs-variable language_">this</span>.<span class="hljs-property">age</span> = age;
    <span class="hljs-variable language_">this</span>.<span class="hljs-property">sex</span> = sex;
    <span class="hljs-variable language_">this</span>.<span class="hljs-property">salary</span> = salary;
    <span class="hljs-variable language_">this</span>.<span class="hljs-property">empdate</span> = empdate;
}

<span class="hljs-keyword">public</span> int <span class="hljs-title function_">getEid</span>(<span class="hljs-params"></span>) {
    <span class="hljs-keyword">return</span> eid;
}

<span class="hljs-keyword">public</span> <span class="hljs-built_in">void</span> <span class="hljs-title function_">setEid</span>(<span class="hljs-params">int eid</span>) {
    <span class="hljs-variable language_">this</span>.<span class="hljs-property">eid</span> = eid;
}

<span class="hljs-keyword">public</span> <span class="hljs-title class_">String</span> <span class="hljs-title function_">getEname</span>(<span class="hljs-params"></span>) {
    <span class="hljs-keyword">return</span> ename;
}

<span class="hljs-keyword">public</span> <span class="hljs-built_in">void</span> <span class="hljs-title function_">setEname</span>(<span class="hljs-params"><span class="hljs-built_in">String</span> ename</span>) {
    <span class="hljs-variable language_">this</span>.<span class="hljs-property">ename</span> = ename;
}

<span class="hljs-keyword">public</span> int <span class="hljs-title function_">getAge</span>(<span class="hljs-params"></span>) {
    <span class="hljs-keyword">return</span> age;
}

<span class="hljs-keyword">public</span> <span class="hljs-built_in">void</span> <span class="hljs-title function_">setAge</span>(<span class="hljs-params">int age</span>) {
    <span class="hljs-variable language_">this</span>.<span class="hljs-property">age</span> = age;
}

<span class="hljs-keyword">public</span> <span class="hljs-title class_">String</span> <span class="hljs-title function_">getSex</span>(<span class="hljs-params"></span>) {
    <span class="hljs-keyword">return</span> sex;
}

<span class="hljs-keyword">public</span> <span class="hljs-built_in">void</span> <span class="hljs-title function_">setSex</span>(<span class="hljs-params"><span class="hljs-built_in">String</span> sex</span>) {
    <span class="hljs-variable language_">this</span>.<span class="hljs-property">sex</span> = sex;
}

<span class="hljs-keyword">public</span> double <span class="hljs-title function_">getSalary</span>(<span class="hljs-params"></span>) {
    <span class="hljs-keyword">return</span> salary;
}

<span class="hljs-keyword">public</span> <span class="hljs-built_in">void</span> <span class="hljs-title function_">setSalary</span>(<span class="hljs-params">double salary</span>) {
    <span class="hljs-variable language_">this</span>.<span class="hljs-property">salary</span> = salary;
}

<span class="hljs-keyword">public</span> <span class="hljs-title class_">Date</span> <span class="hljs-title function_">getEmpdate</span>(<span class="hljs-params"></span>) {
    <span class="hljs-keyword">return</span> empdate;
}

<span class="hljs-keyword">public</span> <span class="hljs-built_in">void</span> <span class="hljs-title function_">setEmpdate</span>(<span class="hljs-params"><span class="hljs-built_in">Date</span> empdate</span>) {
    <span class="hljs-variable language_">this</span>.<span class="hljs-property">empdate</span> = empdate;
}

<span class="hljs-meta">@Override</span>
<span class="hljs-keyword">public</span> <span class="hljs-title class_">String</span> <span class="hljs-title function_">toString</span>(<span class="hljs-params"></span>) {
    <span class="hljs-keyword">return</span> <span class="hljs-string">"Employee{"</span> +
            <span class="hljs-string">"eid="</span> + eid +
            <span class="hljs-string">", ename='"</span> + ename + <span class="hljs-string">'\''</span> +
            <span class="hljs-string">", age="</span> + age +
            <span class="hljs-string">", sex='"</span> + sex + <span class="hljs-string">'\''</span> +
            <span class="hljs-string">", salary="</span> + salary +
            <span class="hljs-string">", empdate="</span> + empdate +
            <span class="hljs-string">'}'</span>;
}

}


 
 
 
 
 
 
 
 
 

Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
                                                                                                                                                   ——W.S.Landor