1,数据库建立表(此处省略)
2,将数据库连接的Jar包导入项目的lib包中
3,创建编写db.properties配置文件
创建文件更改名字保存就可以了,因为我已经创建过,所以报错
将配置代码复制到创建的properties配置文件中
drivername=oracle.jdbc.driver.OracleDriver //(驱动名,直接复制)
url=jdbc:oracle:thin:@localhost:1521:orcl //(服务地址名)
username=system //数据库用户名
password=Oracle12 //数据库密码
4,编写JDBC工具类连接代码
public class JdbcUtil {
//jdbc协议+数据库协议+本机地址+端口+连接的数据库实例名
public static String url = null;
//驱动名
public static String driverName = null;
//用户名
public static String userName = null;
//密码
public static String password = null;
/*
* 驱动只要加载一次,静态代码块
*
* */
static{
//读取配置文件信息
//1)创建Properties对象
Properties prop = new Properties();
//2)构建输入流
try {
InputStream in = new FileInputStream("src/db.properties");
//3)加载文件
prop.load(in);
//4)读取配置信息
driverName = prop.getProperty("drivername");
url = prop.getProperty("url");
userName = prop.getProperty("username");
password = prop.getProperty("password");
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//注册驱动程序
try {
Class.forName(driverName);
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//获取连接对象
public static Connection getConnection(){
Connection conn = null;
try {
conn = DriverManager.getConnection(url, userName, password);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return conn;
}
//释放资源
public static void close(Connection conn,Statement stmt,ResultSet rs){
if(rs != null){
try {
rs.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(stmt != null){
try {
stmt.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(conn != null){
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
5,编写DAO层接口
/*
* 操作 用户表的 dao层接口
*
* 规范了操作用户表的方法
*
*
* */
public interface IUserDao {
/*
* 查:通过用户名去查用户数据
*
* */
User findUserByName(String name);
/*
* 增:把用户数据添加到数据库中
*
* */
int addUser(User user);
}
6,编写DAO连接数据库执行语句获取结果
public class UserDao implements IUserDao{
@Override
public User findUserByName(String name) {
Connection conn = null;
PreparedStatement pstm = null;
ResultSet rs = null;
String sql = "select * from t_user where u_name = ?";
User user = null;
try{
//1)获取连接对象
conn = JdbcUtil.getConnection();
//2)预编译sql
pstm = conn.prepareStatement(sql);
//3)设置参数
pstm.setString(1,name);
//4)发送参数
rs = pstm.executeQuery();
//5)操作结果集,数据封装成 一个实体对象
while(rs.next()){
//说明存在对应用户名的用户
user = new User();
user.setName(rs.getString("u_name"));
user.setPwd(rs.getString("u_pwd"));
}
}catch (Exception e) {
e.printStackTrace();
}finally{
JdbcUtil.close(conn, pstm, rs);
}
return user;
}
@Override
public int addUser(User user) {
return 0;
}
}