package com.cw.util;
import java.io.File;
import java.io.FileInputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;
import org.junit.Test;
public class DBUtil {
@Test
// 1.getConnenction 方法的封装
public static Connection getConnection() {
// 利用配置文件来读取数据库路径,用户名,密码
String url = null;
String dbUser = null;
String dbPwd = null;
Connection conn = null;
Properties pro = new Properties();
try {
FileInputStream fis=new FileInputStream(new File("src/db_mysql.properties"));
pro.load(fis); //读取配置文件中的键值对
url = pro.getProperty("url");
dbUser = pro.getProperty("dbUser");
dbPwd = pro.getProperty("dbPwd");
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection(url, dbUser, dbPwd);
// 如果创建Connection成功则返回一个Connection对象
System.out.println(url+dbUser+dbPwd);
} catch (Exception e) {
// TODO: handle exception
}
return conn;
}
// 2.close() 方法的封装,关闭ResultSet,PreparedStatement,Connection
public static void close(ResultSet rs, Statement pstmt,
Connection conn) {
try {
if (rs != null) {
rs.close();
}
if (pstmt != null) {
pstmt.close();
}
if (conn != null) {
conn.close();
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
package com.cw.DAO.imp;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import com.cw.DAO.DogDAO;
import com.cw.entity.Dog;
import com.cw.util.DBUtil;
public class DogDAOImpl implements DogDAO{
public void deleteById(int id) {
// TODO Auto-generated method stub
}
public Dog findById(int id) {
// TODO Auto-generated method stub
return null;
}
public Dog findByName(String name) {
// TODO Auto-generated method stub
return null;
}
public List<Dog> findall() {
String sql="select * from dog";
Connection conn=null;
PreparedStatement pstmt=null;
ResultSet rs=null;
//定义一个集合,存放数据库中信息
List<Dog> list=new ArrayList<Dog>();
//获取连接
conn=DBUtil.getConnection();
try {
pstmt=conn.prepareStatement(sql);
rs=pstmt.executeQuery();
while(rs.next()){
Dog dog=new Dog();
dog.setName(rs.getString("name"));
dog.setAge(rs.getInt("age"));
dog.setSex(rs.getString("sex"));
详细解决方案
pstmt=conn.prepareStatement(sql)空指针错误,求大神支招
热度:677 发布时间:2016-04-21 23:32:15.0
相关解决方案
- ASP上Set GetSession("conn")=server.CreateObject("adodb.connection")
- PreparedStatement pstmt=conn.prepareStatement(sql,Statement.RETURN_GENERATED_KEYS);oracle出现java.sql.SQLException: 不支持的特性的异常,什么原因
- prepareStatement 的有关问题
- using (SqlConnection conn = new SqlConnection.是什么意思,该怎么处理
- “string”并不包孕“conn”的定义
- 运行时说语句 SqlCommand com1=new SqlCommand (strsql,conn);附近有异常
- conn.cs 数据库连接文件请老师们帮看一下,该怎么解决
- SqlConnection s_conn = new SqlConnection(ConfigurationSettings.AppSettings["conn"]);解决思路
- conn.open一直揭示说未将对象设置到实例
- ORACLE内char的参数处置(connection.prepareStatement)
- Connection conn = linejdbc.getopenConnection()请问大家这是什么意思
- PrepareStatement(sql预处理类)
- conn.execute搞不定了,不知道什么东东
- 不能这样输出结果吗?response.write(conn.execute(sql))解决办法
- 不能这么输出结果吗?response.write(conn.execute(sql))
- conn.execute 在服务器上执行的有关问题
- sql="DECLARE @var varchar;select @var='"&id&"';SELECT * FROM dbo.TR_Template where name=@var;"rs.open sql,conn,1,1这段代码有不,该如何处理
- 读取数据id=conn.execute("select id from table where id2=1")(0)解决方法
- conn.Open 参数有关问题
- rs.open sql,conn,1,3这句话出错啊 大家帮帮忙啊 毕业设计时间就快到了解决办法
- Conn.Execute相当于Rs里的什么级别的锁定那?解决思路
- rs.open sql,conn,1,1.求
- conn.Execute执行出错解决方案
- conn.execute 和 rs.open 效率测试!解决办法
- Set Conn = Server.CreateObject("ADODB.Connection")创建失败,该怎么处理
- 在Win2003里,小弟我的网站程序里为何不能用./Conn.asp这种路径了
- statement、prepareStatement、callableStatement的运用
- 最近遇到的IE8 jsessionID共有, 手入url check, Mysql Conn Pool TimeOut的有关问题
- i=pstmt.executeUpdate();报错
- The value for the useBean class attribute com.bwm.db.Conn is invalid.解决思路