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;
}
}
- JDBC连接数据库及具体实现代码
- Jdbc--具体代码实现
- 实现JAVA程序利用JDBC连接数据库的具体流程
- JDBC连接数据库详细步骤及代码
- JDBC连接数据库的代码及步骤
- JDBC连接数据库的代码及步骤
- JDBC-实现Java代码连接数据库
- jdbc连接数据库代码
- JDBc连接数据库代码
- jdbc连接数据库代码
- jdbc连接数据库及对数据库实现增删改查
- JDBC 连接mysql,oracle数据库代码及解析
- Java开发中JDBC连接数据库步骤及代码
- 简单实现jdbc连接数据库通用工具类(代码)
- MySql数据库jdbc连接代码
- JDBC.ODBC连接数据库代码
- 所有数据库JDBC连接代码
- jdbc连接数据库基本代码
- java_高级_多线程
- 蓝桥杯 算法训练 Hankson的趣味题 (唯一分解定理)
- 遍历HashMap的四种方法
- Python中的面向对象特性(更新中……)
- 快速排序算法分析
- JDBC连接数据库及具体实现代码
- Oil Deposits
- 周志华教授gcForest(多粒度级联森林)算法预测股指期货涨跌
- python的列表和字典(简单介绍)
- ecshop 添加手机号码验证唯一性(手机版)
- Fragment防手抖
- Android 5.0新控件 CoordinatorLayout | 协调布局 介绍及使用详情
- 两点之间的所有最短路径
- JQuery的Ajax跨域请求的解决方案