Java数据库的连接(练习)

2016-09-07  本文已影响46人  Cloverss

数据库启动类:DataBase

package com.liuya.db;

import java.sql.*;

/**
 * Created by liuya on 2016/9/7.
 */
public class DataBase {
    //数据库连接
    public static final String URL = "jdbc:mysql://localhost:3306/t1";
    //数据库驱动
    public static final String NAME = "com.mysql.jdbc.Driver";
    //用户名
    public static final String USERNAME = "root";
    //密码
    public static final String PASSWORD = "";

    private Connection connection;
    //预执行的SQL语句
    public PreparedStatement pst;

    public DataBase(String sql) {
        try {
            Class.forName(NAME);
            connection = DriverManager.getConnection(URL, USERNAME, PASSWORD);
            pst = connection.prepareStatement(sql);

        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

    /**
     * 关闭连接
     */
    public void close() {
        if (pst != null) {
            try {
                pst.close();
                connection.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
}

接口类:ImstudetDao

package com.liuya.dao;

import com.liuya.entry.Student;

import java.util.List;

/**
 * Created by liuya on 2016/9/7.
 */
public interface ImstudetDao {

    List<Student> queryStudent();
}

实现接口类:StudentIm

package com.liuya.imdao;

import com.liuya.dao.ImstudetDao;
import com.liuya.db.DataBase;
import com.liuya.entry.Student;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

/**
 * Created by liuya on 2016/9/7.
 */
public class StudentIm implements ImstudetDao {

    @Override
    public List<Student> queryStudent() {
        String sql = "select * from student";
        List<Student> list = new ArrayList<Student>();
        DataBase dataBase = new DataBase(sql);
        try {
            ResultSet resultSet = dataBase.pst.executeQuery();
            while (resultSet.next()) {
                Student student = new Student();
                student.setId(resultSet.getInt(1));
                student.setName(resultSet.getString(2));
                student.setSex(resultSet.getString(3));
                student.setDepartment(resultSet.getInt(4));
                student.setScore(resultSet.getInt(5));
                list.add(student);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        dataBase.close();
        return list;
    }
}

对象实例:Student

package com.liuya.entry;

/**
 * Created by liuya on 2016/9/7.
 */
public class Student {
    private int id;
    private String name;
    private String sex;
    private int department;
    private int score;

    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 int getDepartment() {
        return department;
    }

    public void setDepartment(int department) {
        this.department = department;
    }

    public int getScore() {
        return score;
    }

    public void setScore(int score) {
        this.score = score;
    }
}

测试类:Test

package com.liuya.test;

import com.liuya.entry.Student;
import com.liuya.imdao.StudentIm;

import java.util.List;

/**
 * Created by liuya on 2016/9/7.
 */
public class Test {
    public static void main(String[] args) {
        StudentIm studentIm = new StudentIm();
        List<Student> list = studentIm.queryStudent();
        System.out.println("姓名\t学号\t性别\t班级\t\t分数");
        System.out.println("----------------------------");
        for ( int i = 0; i < list.size(); i++ ) {
            System.out.print(list.get(i).getName() + "\t");
            System.out.print(list.get(i).getId() + "\t");
            System.out.print(list.get(i).getSex() + "\t");
            System.out.print(list.get(i).getDepartment() + "\t");
            System.out.print(list.get(i).getScore() + "\t");
            System.out.println();
        }
    }
}

项目结构图:


database.JPG
上一篇 下一篇

猜你喜欢

热点阅读