zoukankan      html  css  js  c++  java
  • 我们怎么获取数据库中的值或者在数据库中添加值那???

    1、第一步:我们要有我们的数据库以及对应的表

      这里我们需要用到sql语句对其进行创建或者通过一些数据库工具对其进行创建。这里我用sql语句进行创建。

      a、create database hcp;

      b、use hcp;

      c、create table Emp(
        empno int,
        ename char(255),
        job char(255),
        hiredate char(255),
        sal decimal(16,3));

      这里我们在hcp库中创建了一个名为Emp的表。

    2、第二步:与我们的数据库建立连接

      

     1 package dao.dbc;
     2 
     3 import java.sql.Connection;
     4 import java.sql.DriverManager;
     5 import java.sql.SQLException;
     6 /*
     7  * 专门负责数据库的打开和关闭的类
     8  */
     9 public class DatabaseConnection {
    10     private static final String DBDRIVER = "org.gjt.mm.mysql.Driver";
    11     public static final String DBURL = "jdbc:mysql://localhost:3306/hcp";
    12     public static final String DBUSER = "root";
    13     public static final String DBPASS = "";
    14     private Connection conn;
    15 
    16     public DatabaseConnection() {
    17         try {
    18             Class.forName(DBDRIVER);
    19             this.conn = DriverManager.getConnection(DBURL, DBUSER, DBPASS);
    20         } catch (ClassNotFoundException e) {
    21             e.printStackTrace();
    22         } catch (SQLException e) {
    23             e.printStackTrace();
    24         }
    25     }
    26 
    27     public Connection getConnection() {
    28         return this.conn;
    29     }
    30 
    31     public void close() {
    32         if (this.conn != null) {
    33             try {
    34                 this.conn.close();
    35             } catch (SQLException e) {
    36                 e.printStackTrace();
    37             }
    38         }
    39     }
    40 }

    这里有一点注意的是,无论是什么数据库,我们都需要在我们的myeclipse或者eclipse中添加相应的数据库驱动,一定要注意!!!!

    3、建立与数据库对应的实体:名字一定要和数据库的名字一样,还有表中的值也要和实体的对应。

      

    package dao;
    
    import java.util.Date;
    /*
     * 属性与表中的字段相对应,每一个对象表示表中的一条记录
     */
    public class Emp {
    	private int empno;
        private String ename;
        private String job;
        private Date hiredate;
        private float sal;
        
        public int getEmpno() {
            return empno;
        }
        public void setEmpno(int empno) {
            this.empno = empno;
        }
        public String getEname() {
            return ename;
        }
        public void setEname(String ename) {
            this.ename = ename;
        }
        public String getJob() {
            return job;
        }
        public void setJob(String job) {
            this.job = job;
        }
        public Date getHiredate() {
            return hiredate;
        }
        public void setHiredate(Date hiredate) {
            this.hiredate = hiredate;
        }
        public float getSal() {
            return sal;
        }
        public void setSal(float sal) {
            this.sal = sal;
        }
    }
    

      这里我刚开始学的时候,有一个疑问,我们为什么要用实体,不用实体我们同样可以通过sql语句获取到相应的数据呀??后来,想了一下,数据库中取到的数据是一堆很乱的数据,假如我们把取到的数据添加到实体中的话,就很有条理,方便后期维护,易于我们对数据进行操作,非常的棒!放在数据库中可能只是单纯的数据,取出来之后放到实体中可就是对象了,我们想干啥就干啥。

    4、写静态工厂方法:静态工厂方法可以让对数据库操作的实例只有一个

     1 package dao.factory;
     2 
     3 import dao.dao.IEmpDAO;
     4 import dao.dao.proxy.EmpDAOProxy;
     5 /*
     6  * 通过工厂类取得Dao的实例化对象
     7  */
     8 public class DAOFactory {
     9     public static IEmpDAO getIEmpDAOInstance() {
    10         return new EmpDAOProxy();
    11     }
    12 }

    5、测试访问

  • 相关阅读:
    Atitit 集团与个人的完整入口列表 attilax的完整入口 1. 集团与个人的完整入口列表 1 2. 流量入口概念 2 3. 流量入口的历史与发展 2 1.集团与个人的完整入口列表
    atitit 每季度日程表 每季度流程 v3 qaf.docx Ver history V2 add diary cyar data 3 cate V3 fix detail 3cate ,
    Atitit react 详细使用总结 绑定列表显示 attilax总结 1. 前言 1 1.1. 资料数量在百度内的数量对比 1 1.2. 版本16 v15.6.1 1 1.3. 引入js 2
    Atitit r2017 r3 doc list on home ntpc.docx
    Atitit r2017 ra doc list on home ntpc.docx
    Atiitt attilax掌握的前后技术放在简历里面.docx
    Atitit q2016 qa doc list on home ntpc.docx
    Atitit r7 doc list on home ntpc.docx 驱动器 D 中的卷是 p2soft 卷的序列号是 9AD0D3C8 D:\ati\r2017 v3 r01\
    Atitit 可移植性之道attilax著
    Atitit q2016 q5 doc list on home ntpc.docx
  • 原文地址:https://www.cnblogs.com/huiyuantang/p/5329129.html
Copyright © 2011-2022 走看看