保证Oracle两个服务打开:

  监听服务:OracleOraDb11g_home1TNSListener

  实例服务:OracleServiceMLDN

新建一个项目,随后配置好数据库驱动程序。右键项目,属性,Java Build Path,Libraies,Add External JARs,添加ojdbc6.jar。 

 

 开发数据库连接类

 JDBC操作需要有连接,以及链接必须进行关闭的操作,单独建立一个专门连接数据库的类,此类特点:

  1.这个类只负责数据库的连接与关闭,而不关心具体的数据库操作

  2.如果实例化了这个类的对象,那么就意味着要进行数据库的连接,可以在构造方法中连接

  3.项目中如果数据库连接有问题,一定所有代码都出现问题。  

但是项目的开发需要存在有包,现在假设整个项目父包名称:cn.mldn。那么负责数据库连接的类,将其放在dbc子包中。

范例:定义DatabaseConnection工具类

package DatabaseConnection;
import java.sql.Connection;
import java.sql.DriverManager;

/*本类负责数据库的连接操作,在进行被类对象实例化时自动进行数据库的连接处理
 * */
public class DatabaseConnection {
    private static final String DBDRIVER = "oracle.jdbc.driver.OracleDriver"; //
    private static final String DBURL = "jdbc:oracle:thin:@localhost:1521:orcl";
    private static final String DBUSER = "scott";
    private static final String PASSWORD = "123456";
    private Connection conn = null;
    /*
     * 在构造方法调用时将进行数据库连接对象的取得
     * */
    public DatabaseConnection() {
         try{
             Class.forName(DBDRIVER);//加载数据库的驱动程序
             this.conn = DriverManager.getConnection(DBURL,DBUSER,PASSWORD);
         }catch (Exception e) {
             e.printStackTrace();
         }
         
    }
    /*
     * 取得数据库连接对象
     * 实例化的Connection对象,如果返回null,表示没有连接成功
     * */
    public Connection getConnection() {
        return this.conn;
    }
    /*
     * 进行数据库关闭操作
     * */
    public void close() {
        if(this.conn != null) {
            try{
                this.conn.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
}

如果以后要更换数据库,那么更换连接信息即可。

以上的设计属于最简化设计,最早DAO设计模式出现的时候有一个要解决的头等问题:数据库的可移植性。所以对于数据库连接操作,也需要考虑到这些情况。

 

 

简单Java类 

1.简单java类的名称一定要与实体表名称对应

  命名要求,如果表明:student_info, 那么就转换为StudentInfo,有些人设计表时喜欢在前面追加一个字母“T”,例如:t_student,那么将t忽略。

2.有可能出现传输需求,那么类一定要实现Serializable接口。

3.类中不许使用基本数据类型,统一使用包装类描述。

  包装类本身有null的特点

4.类中属性一定使用private封装,一定按要求编写setter getter方法

5.类中可以定义有任意多个构造方法,但一定要保留有无参构造方法

6.类中可以有选择的覆写equal()、hashCode()、toString()方法

可以将所有java类成为VO(PO、TO、POJO),可以将该种类保存在xxx.vo在包中 

 

范例:定义Emp.java类


package xxx.vo;

import java.io.Serializable;
import java.util.Date;

@SuppressWarnings("serial")
public class Emp implements Serializable {
    private Integer empno;
    private String ename;
    private String job;
    private Date hiredate;
    private Double sal;
    private Double comm;
    public Integer getEmpno() {
        return empno;
    }
    public void setEmpno(Integer 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 Double getSal() {
        return sal;
    }
    public void setSal(Double sal) {
        this.sal = sal;
    }
    public Double getComm() {
        return comm;
    }
    public void setComm(Double comm) {
        this.comm = comm;
    }
    @Override
    public String toString() {
        return "Emp [empno=" + empno + ", ename=" + ename + ", job=" + job + ", hiredate=" + hiredate + ", sal=" + sal
                + ", comm=" + comm + "]";
    }
    
}

 

以后还可以在简单java类中设置关系。

 

 

 

 

 

 

 

 

 

 

  

 

posted on 2018-04-20 13:38  lonske  阅读(248)  评论(0编辑  收藏  举报