JDBC的一个实例

来源:互联网 发布:工程量清单软件 编辑:程序博客网 时间:2024/06/05 05:34

JDBC只是自己在学习的时候使用过,到了工作基本都是用框架。今天利用一点小空余时间使用javaJDBC写了一个例子;


package test;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.mysql.jdbc.PreparedStatement;

public class JDBCTest {

    /**
     * @param args
     */
    public static void main(String[] args) {
        List<Map<String,Object>> listMap=getAllFbsAccount(0,5);
        //遍历输出
        for(Map map:listMap){
            System.out.println("id="+map.get("id")+", url="+map.get("url")+", status="+
                    map.get("status")+" ,updateDate="+map.get("updateDate"));
        }
    }
    /**
     * 获取数据库连接
     * @return
     */
    public static Connection getCon(){
        String url="jdbc:mysql://localhost:3306/fbs";
        String user="root";
        String password="1234";
        try {
            //加载驱动
            Class.forName("com.mysql.jdbc.Driver");
        } catch (ClassNotFoundException e) {
            System.out.println("数据库驱动类加载失败");
            e.printStackTrace();
        }
        Connection con=null;
        try {
            //获取连接
            con = DriverManager.getConnection(url,user,password);
            return con;
        } catch (SQLException e) {
            System.out.println("获取连接失败");
            e.printStackTrace();
        }
        return con;
    }
    
    /**
     * 分页查询fbs_cover_photo表中的所有记录
     * @param page 当前页
     * @param pageSize 页容量
     * @return
     */
    public static List<Map<String,Object>> getAllFbsAccount(int page,int pageSize){
        List<Map<String,Object>> listMap=new ArrayList<Map<String,Object>>();
        Connection con=getCon();
        String sql="select * from fbs_cover_photo limit ?,?";
        try {
            //使用PreparedStatement预编译
            PreparedStatement ps=(PreparedStatement) con.prepareStatement(sql);
            ps.setInt(1, page);
            ps.setInt(2, pageSize);
            ResultSet rs=ps.executeQuery();
            while(rs.next()){
                Map<String,Object> map=new HashMap<String,Object>();
                map.put("id",rs.getInt("id"));
                map.put("url", rs.getString("url"));
                map.put("status", rs.getInt("status"));
                map.put("updateDate", rs.getDate("update_date"));
                //将结果集存放在listMap中
                listMap.add(map);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return listMap;
    }
}



执行结果:

id=1, url=upload/cover/1376551718921.jpg, status=1 ,updateDate=2013-08-15
id=2, url=upload/cover/1376551720496.jpg, status=1 ,updateDate=2013-08-15
id=3, url=upload/cover/1376551721177.jpg, status=1 ,updateDate=2013-08-15
id=4, url=upload/cover/1376551722081.jpg, status=1 ,updateDate=2013-08-15
id=5, url=upload/cover/1376551722766.jpg, status=1 ,updateDate=2013-08-15



0 0