package jdbc;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class Demo_main {
/*
* ORM(Object Relationship Mapping)的基本思想
* 表结构和类对应
* 表中字段和类属性对应
* 表中数据和对象对应
*/
//将表中的多条记录封装到Map中
//方法1用list套map,此处使用该方法
//方法2用map套map
public static void main(String[] args){
PreparedStatement ps = null;
Connection c = null;
ResultSet rs = null;
List<Map<String,Object>> li = new ArrayList<Map<String,Object>>();
try {
//加载驱动类并建立连接
c = Demo.getmysqlCon();
//执行SQL语句
ps = c.prepareStatement("select * from Demo_1 where id<? ");
ps.setObject(1, 4);
rs = ps.executeQuery();
//获取数据
while(rs.next()) {
Map<String,Object> row = new HashMap<String,Object>();
row.put("id", rs.getObject(1));
row.put("name", rs.getObject(2));
row.put("money", rs.getObject(3));
li.add(row);
}
//输出
for(Map<String, Object> row:li) {
for(String key:row.keySet()) {
System.out.println(key+" "+row.get(key));
}
}
} catch (Exception e) {
e.printStackTrace();
}finally {
//关闭
Demo.closeBase(rs, ps, c);
}
}
}
工具类
package jdbc;
import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Properties;
public class Demo {
static Properties p = null;//用于帮助我们读取和处理资源文件的信息
//获取资源文件数据
static {
p = new Properties();
try {
p.load(Thread.currentThread().getContextClassLoader().getResourceAsStream("JDBC.properties"));
} catch (IOException e) {
e.printStackTrace();
}
}
//加载驱动和获取连接的方法
//Mysql
public static Connection getmysqlCon() {
try {
Class.forName(p.getProperty("MysqlDriver"));
return DriverManager.getConnection(p.getProperty("MysqlUrl"),p.getProperty("MysqlUser"),p.getProperty("MysqlPassworld"));
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
//常用关闭的方法
public static void closeBase(ResultSet rs,Statement s, Connection c) {
try {
if(s != null) {
s.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
try {
if(c != null) {
c.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
try {
if(rs != null) {
rs.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
//时间转字符串
public static long stringdate(String datestring) {
DateFormat df = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
try {
return df.parse(datestring).getTime();
} catch (ParseException e) {
e.printStackTrace();
return 0;
}
}
}
资源文件
MysqlDriver=com.mysql.jdbc.Driver
MysqlUrl=jdbc:mysql://localhost:3306/jdbc\u7684\u4F7F\u7528
MysqlUser=root
MysqlPassworld=root