JDBC连接数据库及具体实现代码

来源:互联网 发布:怎么在淘宝上购物流程 编辑:程序博客网 时间:2024/06/01 08:51

JDBC概述:

java数据库连接(Java Database Connectivity,JDBC)是一种用于执行SQL语句的Java API,

       由一组用 Java 编程语言编写的类和接口组成。
JDBC的目的: 
推广java的应用。
设计出一种通用的数据库访问接口。使应用程序开发人员使用JDBC可以连接任何提供了JDBC驱动程序的数据库系统。
 JDBC连接数据库的步骤:
    1)加载驱动
  2)建立数据库连接
  3)发送sql语句
    4)处理结果集  

    5)释放资源  

具体的代码实现:

ConnectionUtils.java
package com.jdbc.common;


import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;


public class ConnectionUtils {
public static Connection getConnection(){
Connection con=null;
try {
//加载驱动
Class.forName("oracle.jdbc.driver.OracleDriver");
//建立连接
try {
con=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:oracle", "scott", "tiger");
if(con!=null){
System.out.println("connection success!!");
}
} catch (SQLException e) {
e.printStackTrace();
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
return con;
}
//查询,释放资源
public static void close(ResultSet rs,Statement st,Connection con){
try {
if(rs!=null){
rs.close();
}
if(st!=null){
st.close();
}
if(con!=null){
con.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
//添加、修改,删除时使用
public static void close(Statement st,Connection con){
try {
if(st!=null){
st.close();
}
if(con!=null){
con.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
UserDao.java
package com.dao.dao;


import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;


import com.jdbc.common.ConnectionUtils;
import com.jdbc.jdbc.User;


public class UserDao {
Connection con=null;
Statement st=null;
ResultSet rs=null;
int num=0;
public ArrayList<User> getAllUser(){
ArrayList<User> arrayList=new ArrayList<User>();
con=ConnectionUtils.getConnection();


try {
//发送SQL文
String sql="select t_name,t_pass from t_user";
st=con.createStatement();
rs=st.executeQuery(sql);

//处理结果集
while(rs.next()){
User user=new User();
user.setUsername(rs.getString(1));
user.setPassword(rs.getString(2));
 
arrayList.add(user);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
//释放资源
ConnectionUtils.close(rs, st, con);

}

return arrayList;
}
//用户的添加
public int insertUser(User user){
con=ConnectionUtils.getConnection();
String sql="insert into t_user(t_name,t_pass) values('"+user.getUsername()+"','"+user.getPassword()+"')";
try {
st=con.createStatement();
num=st.executeUpdate(sql);
if(num>0){
System.out.println("insert success!!");
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
//释放资源
ConnectionUtils.close(st, con);
}
return num;
}
//用户的修改
public int updateUser(User user){
con=ConnectionUtils.getConnection();
String sql="update t_user set t_name='"+user.getUsername()+"'where t_pass='"+user.getPassword()+"'";
try {
st=con.createStatement();
num=st.executeUpdate(sql);
if(num>0){
System.out.println("update success!!");
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
//释放资源
ConnectionUtils.close(st, con);
}
return num;
}
//用户的删除
public int deleteUser(String pass){
con=ConnectionUtils.getConnection();
String sql="delete from t_user where t_pass='"+pass+"'";
try {
st=con.createStatement();
num=st.executeUpdate(sql);
if(num>0){
System.out.println("delete success!!");
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
//释放资源
ConnectionUtils.close(st, con);
}
return num;
}
}
Test.java
package com.test.test;


import java.util.ArrayList;


import com.dao.dao.UserDao;
import com.jdbc.jdbc.User;


public class Test {
public static void main(String[] args){
//测试查询
/* UserDao userDao=new UserDao();
ArrayList<User>array=userDao.getAllUser();
if(array!=null&&array.size()>0){
for(User user:array){
System.out.println(user.getUsername()+" "+user.getPassword());
}
}*/
/* //测试用户添加
User user=new User();
user.setUsername("Jone");
user.setPassword("1234");
UserDao userDao=new UserDao();
System.out.println(userDao.insertUser(user));*/
/* //测试用户修改
User user=new User();
user.setUsername("Jack");
user.setPassword("1234");
UserDao userDao=new UserDao();
System.out.println(userDao.updateUser(user));*/
//测试用户的删除
/* UserDao userDao=new UserDao();
System.out.println(userDao.deleteUser("1234"));*/
}
}
User.java
package com.jdbc.jdbc;


public class User {


private String username;
private String password;
public User() {

}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 铁锅手柄上的铆钉拧不动怎么办 喂完鱼鱼缸上边飘着一层油膜怎么办 铸铁管道横着排的结口漏水怎么办 缤智行李架免打孔螺丝款怎么办 前保险杠和叶子板缝隙大怎么办 新奥拓的大灯调节螺丝滑丝了怎么办 小米手环2计步不准怎么办 小米手环3计步不准怎么办 眼镜用洗发水洗了后模糊怎么办 雷朋近视镜眼镜腿折了怎么办 近视镜眼镜腿断了该怎么办 老师把学生的眼镜打坏了怎么办 生死狙击忘了密保改不了密码怎么办 我叫mt狂猎之弓怎么办 你能利用你的弱点打击你怎么办 研控两相混合伺服电机反转怎么办? 战地一要我升级显卡驱动怎么办 刺客信条兄弟会存档损坏了怎么办 电脑上所有软件和文件被删了怎么办 电脑显示文件已打开无法删除怎么办 金立手机桌面停止运行黑屏怎么办 苹果平板电脑玩游戏黑屏闪退怎么办 电脑开机时显示无法找到入口怎么办 我的世界显示网络玩不了的怎么办啊 网页被设置成不可以到下一页怎么办 小天鹅热水器排污螺丝拧不动怎么办 葡萄霜霉严重叶片开始发焦了怎么办 上海高架gps定位信号差怎么办 老公开车技术不行还非要开怎么办 我偷了同学手机被发现应该怎么办 没满月孩孑4天没大便了怎么办 电机轴总是从皮带轮处断裂怎么办 天花板吊顶里的热水管经常坏怎么办 摩托车油箱下面的废油管漏油怎么办 大修机械压力机轴取不下来怎么办 萌侠传说账号密码没了怎么办 车子前保护杠塑料刮花了怎么办 糖猫电话手表关机了找不到了怎么办 小天才电话手表被洗衣机洗了怎么办 小天才电话手表放洗衣机洗了怎么办 小天才电话手表泡水了怎么办