原生jdbc连接配置

获取jdbc连接: 

package com.gfl.news.util;

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

public class JdbcUtils {
	 //加载静态代码块
    static {
		try {
			//Class.forName("oracle.jdbc.driver.OracleDriver"); // oracle
			Class.forName("com.mysql.jdbc.Driver"); // mysql
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		}
	}
	private static Connection conn;

	public static Connection getConnection() throws SQLException {
        //获取连接数据库对象
        String url = "jdbc:mysql://localhost:3306/test";
       // String url = "jdbc:oracle:thin:@localhost:1521:orcl";// oracle
		String user = "root";
		String password = "root";
		if (conn == null || conn.isClosed())
			conn=DriverManager.getConnection(url, user, password);
		return conn;
	}
	//关闭资源
	public static void close(Connection conn, PreparedStatement ps, ResultSet rs) throws SQLException {
		if (conn != null ) {
			conn.close();
		}
		if (ps != null) {
			ps.close();
		}
		if (rs != null) {
			rs.close();
		}
	}

}

操作数据库:

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
 
import com.chen.MiniOj.Utils.JdbcUtils;
 
public class UserServiceImpl  {
	private Connection conn;
	private PreparedStatement ps;
	private ResultSet rs;
 
    //查询
	public boolean CheckLogin(String username, String password) {
		boolean flag = false;
		try {
			conn = JdbcUtils.getConnection();
			String sql = "select count(*) count from user where username=? and password=?";
			ps = conn.prepareStatement(sql);
			ps.setString(1, username);
			ps.setString(2, password);
			rs = ps.executeQuery();
			if (rs.next()) {
				int num = rs.getInt("count");
				if (num > 0) {
					flag = true;
				}
			}
			return flag;
		} catch (SQLException e) {
			e.printStackTrace();
			return flag;
		} finally {
			try {
				JdbcUtils.close(conn, ps, rs);
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
	}

    //添加
        public void insert(String title,String type) {
	    try {
		    conn = JdbcUtils.getConnection();
		    String sql = "insert into Problem(title,type) values (?,?)";
		    ps = conn.prepareStatement(sql);
		    //给?赋值 
		    ps.setString(1, title);
		    ps.setString(2, type);
		    int c = ps.executeUpdate();
	    } catch (SQLException e) {
	   	    e.printStackTrace();
	    }finally {
		    //关闭资源
		    try {
		    	JdbcUtils.close(conn, ps, rs);
		    } catch (SQLException e) {
		    	e.printStackTrace();
	   	    }
	    }
    }
}

// 将事务模式设置为手动提交事务:conn.setAutoCommit(false);

// 提交事务:conn.commit();

// Oracle获取主键
String vsql = "select seq.nextval as id from dual";
 ps = conn.prepareStatement(vsql);
 rs = ps.executeQuery();
 rs.next();
 long id = rs.getLong(1);
 rs.close();
 ps.close();

发布了13 篇原创文章 · 获赞 2 · 访问量 486

猜你喜欢

转载自blog.csdn.net/m_crayon/article/details/103038859