/====提前工作====:/
String driver="com.micsoft.sqlserver.jdbc.sqlserverDriver";//数据库链接驱动
String url="jdbc:sqlserver://localhost:1433;databasename=库名";//数据库链接路径
PrepareStatement ps=null;//定义预编译语句的变量
Connection con=null;//定义数据库链接变量
ResultSet res=null;//定义查询结果集变量
/====查询方法中的步骤====/
1、加载驱动,
Class.forName("驱动路径");
2、获取链接,(通过驱动管理器获取),
DriverManager.getConnection("数据库地址","数据库用户名","数据库密码");
2、预编译sql语句,(通过获取到的数据库链接)
con.prepareStatement("传入的sql语句");
3、判断传入的数组是否为空,不为空则通过便利给预编译语句赋值(预编译语句赋值从下标1开始)
ps.setObject(i+1,obj[i]);
4、执行查询语句得到查询到的结果集
res=ps.executeQuery();
5、便利结果集得到每一行数据,并且放到map集合里面,最后将map集合放到arrayList集合中并返回
while(res.next()){//逐行读取
Map<String,Object> map=new HashMap<String,Object>();//每行数据都放到map中
for(int i=0;i<res.getMetaDate().getColumCount();i++){
map.put(res.getMetaDate().getColumName(i+1),res.getObject(i+1));
}
list.add(map);//当前行map放到map集合中
}
6、在finlly方法中判断res、ps、con、是否为空,不为空则关闭
if(res!=null){
res.close();
}
/====添加、修改、删除方法中的步骤====/
1、加载驱动,
Class.forName("驱动路径");
2、获取链接,(通过驱动管理器获取),
DriverManager.getConnection("数据库地址","数据库用户名","数据库密码");
2、预编译sql语句,(通过获取到的数据库链接)
con.prepareStatement("传入的sql语句");
3、判断传入的数组是否为空,不为空则通过便利给预编译语句赋值(预编译语句赋值从下标1开始)
ps.setObject(i+1,obj[i]);
4、执行sql语句得到受影响行数,直接返回受影响行数是否大于0就可判断是否执行成功
return ps.executeUpdate();
5、在finlly方法中判断res、ps、con、是否为空,不为空则关闭
if(res!=null){
res.close();
}