用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - java代码库

Jdbc的基本创建过程

2015-07-25 作者: 锋客举报

[java]代码库

package fengke.test;
import java.sql.SQLException;
import fengke.action.Action;
/**
 * 最为简单Jdbc操作方式
 * @author 锋客
 * 学习重点:1.了解jdbc的创建过程;
 *        2.学会使用静态属性和静态块创建链接======Jdbc
 *        3.了解使用静态块创建链接的特点:控制台中输出的链接为同一个
 *        4.学会配置url======"jdbc:mysql://127.0.0.1:3309/jdbctest?useUnicode=true&characterEncoding=utf-8"
 *        5.学会数据库的操作=====add,listall
 *        6.学会合理利用模型=====Emp
 *        7.注意驱动的加载
 *
 */
 
public class Test {
     
    public static void main(String[] args) throws SQLException {
        Action action = new Action();
        System.out.println("添加员工信息:");
        action.addEmp();
        System.out.println("查询所有员工信息:");
        action.listAll();
    }
 
}
=====================================================================================
package fengke.jdbc;
 
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
 
/**
 * 创建数据库连接
 * @author 锋客
 * 内容:使用静态的方法,产生链接对象,调用方法,返回对象
 */
 
public class Jdbc {
    /*
     * 通过静态方法的特点,当对象被使用时,先调用或是生成静态内容
     * 产生Connection链接,并通过public Connection getConnection();方法
     * 返回链接
     *
     * 注意一下:
     * 静态方法创建的链接对象,生成只有一次(第一次调用Jdbc时),但是被多次调用,因此每次输出的链接对象都一样
     */
    static private  Connection connection;
     
    static{
        try {
            Class.forName("com.mysql.jdbc.Driver");
            //URL地址"jdbc:mysql://主机地址/操作的数据库名?useUnicode=true&characterEncoding=utf-8"
            String url="jdbc:mysql://127.0.0.1:3309/jdbctest?useUnicode=true&characterEncoding=utf-8";
            //mysql的用户名
            String userName="root";
            //mysql的密码
            String passWord="root";
            //创建链接
            connection=DriverManager.getConnection(url, userName, passWord);
        } catch (ClassNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
         
    }
 
    public Connection getConnection(){
        //测试是否生成正确的connect
        System.out.println(connection);
        return connection;
    }
 
}
======================================================================================
package fengke.dao;
 
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import fengke.jdbc.Jdbc;
import fengke.model.Emp;
 
/**
 * 数据库操作
 *
 * @author 锋客
 *  内容:1、获得数据库链接 2、操作数据库
 *
 */
public class JdbcDao {
    private Jdbc jdbc = new Jdbc();
    // 实现添加数据的功能
    public void addEmp(Emp emp) throws SQLException {
        // 获得数据库链接对象
        Connection connection = jdbc.getConnection();
        // 进行数据库操作
        String sql = "insert into emp(id,name,sex) values(?,?,?)";
        // 设置操作内容
        PreparedStatement statement = connection.prepareStatement(sql);
        statement.setInt(1, emp.getId());
        statement.setString(2, emp.getName());
        statement.setString(3, emp.getSex());
        int rs = statement.executeUpdate();
        System.out.println("添加成功"+rs+"条记录");
    }
 
    // 实现查询数据的功能
    public void listAll() throws SQLException {
        // 获得数据库链接对象
        Connection connection = jdbc.getConnection();
        // 进行数据库操作
        String sql="select*from emp";
        PreparedStatement statement=connection.prepareStatement(sql);
        ResultSet rs = statement.executeQuery();
        while(rs.next()){
            System.out.println(rs.getInt(1)+"|"+rs.getString(2)+"|"+rs.getString(3));
        }
        System.out.println("结束输出!!!");
 
    }
 
}
======================================================================================
package fengke.action;
 
import java.sql.SQLException;
import java.util.Random;
import fengke.dao.JdbcDao;
import fengke.model.Emp;
/**
 * 功能层
 * @author 锋客
 * 实现添加和查询的功能
 *
 */
public class Action {
     
    public void addEmp() throws SQLException{
        //通过循环将信息输入到数据库中
        for(int i=1;i<10;i++){
            String name="fengke"+i;
            System.out.println(name);
            Emp emp=new Emp(i,name,"man");
            JdbcDao dao=new JdbcDao();
            dao.addEmp(emp);
        }
    }
     
    public void listAll() throws SQLException{
        JdbcDao dao=new JdbcDao();
        dao.listAll();
    }
 
}
=================================================================================
package fengke.model;
/**
 * 模型
 * @author 锋客
 * 内容:员工的基本信息
 */
 
public class Emp {
    private int id;//员工id
    private String name;//员工姓名
    private String sex;//员工性别
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getSex() {
        return sex;
    }
    public void setSex(String sex) {
        this.sex = sex;
    }
    public Emp() {
        super();
        // TODO Auto-generated constructor stub
    }
    //生成员工对象
    public Emp(int id, String name, String sex) {
        super();
        this.id = id;
        this.name = name;
        this.sex = sex;
    }
     
 
}

[源代码打包下载]




网友评论    (发表评论)


发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。


扫码下载

加载中,请稍后...

输入口令后可复制整站源码

加载中,请稍后...