java连接MySQL数据库

我们时常会遇到java需要连接数据库的情况,连接数据库大部分都需要如下3个步骤

  1. 注册数据库驱动!
  2. 建立数据库连接的URL,URL指向要访问的数据库名
  3. 获取Connection对象,连接数据库!

对于java连接MySQL数据库来说,需要一个java连接MySQL的jar包,以及MySQL数据库

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
/**JDBC是Java程序与数据库系统通信标准的API(应用程序编程接口),定义在jdk的API中
 * 通过JDBC技术,Java可以非常方便的与多种数据库交互
 * 
 * @author lmm
 *
 */
public class JDBCTest {
	/*public static void main(String[] args) {
		try {
			Connection conn=getConnection();
			queryUserInfo(conn);
	        conn.close();
		}catch(SQLException e) {
			e.printStackTrace();
		}
	}*/
	
	public static Connection getConnection(){
		Connection conn;
		try {
			//第一步:注册数据库驱动,Very Important!!!!
			Class.forName("com.mysql.jdbc.Driver");//加载数据库驱动,注册到驱动器管理器
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		}
		  try {
			  //第二步:建立数据库连接的URL,URL指向要访问的数据库名scutcs
			 String url="jdbc:mysql://localhost/secondarymarket?useUnicode=true&characterEncoding=utf8";
		
			   MySQL配置时的用户名
		      String user="root";
		   // Java连接MySQL配置时的密码
		      String pwd="maomao";
		      //第三步:获取Connection对象,连接数据库!Very Important!!!!
			  conn = DriverManager.getConnection(url,user, pwd);
			  System.out.print("连接成功");
		} catch (SQLException e) {
			e.printStackTrace();
			conn=null;
		}
		  //测试连接是否成功
		return conn;
	}
  
	 public static void insertUserInfo(Connection conn,String a,String p){
		Statement stat;
		try {
			stat = conn.createStatement();
		 String sql="insert into hiCamp values('"+a+"','"+p+"')";
		 int r=stat.executeUpdate(sql);
		 if(r==1){
			 System.out.println("插入数据成功。");
		 }else{
			 System.out.println("插入数据失败。");
		 }
		 stat.close();
		}catch (SQLException e) {
			e.printStackTrace();
		}
	 }
	 
	 public static void insertUserInfoPrepare(Connection conn,String a,String p) throws SQLException{
		 String sql="insert into hiCamp values(?,?)";
		 PreparedStatement ps=(PreparedStatement) conn.prepareStatement(sql);
		 
		 ps.executeUpdate();
	 }

	 
	 public static void deleteUserInfo(Connection conn)throws SQLException{
		 Statement stat=conn.createStatement();
		 String sql="delete from hiCamp where account='222' ";
		 int r=stat.executeUpdate(sql);
		 if(r==1){
			 System.out.println("删除数据成功。");
		 }else{
			 System.out.println("删除数据失败。");
		 }
		 stat.close();
	 }
	
	
    public static void queryUserInfo(Connection conn){
    	 try {
			Statement stat=conn.createStatement();
			
			String sql="select * from hiCamp  LIMIT 0,10";
			ResultSet rs=stat.executeQuery(sql);//获取结果集
			
		    while(rs.next()){
		    	String s1=rs.getString("account");
				String s2=rs.getString("password");
				System.out.println("信息:"+s1+"-"+s2);
				
		    }
            
		    rs.close();
		    stat.close();
			
		} catch (SQLException e) {
			e.printStackTrace();
		}
    }
}

package com.hexiang.utils.dao; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.Properties; import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.NamingException; import javax.sql.DataSource; import org.apache.log4j.Logger; public class DBConnection { /** * 获得与数据库连接 * * @param path * @return Connection */ public static Connection getConn(String classDriver, String url, String user, String pwd) { try { Class.forName(classDriver); return DriverManager.getConnection(url, user, pwd); } catch (ClassNotFoundException ex) { ex.printStackTrace(); } catch (SQLException ex) { ex.printStackTrace(); } return null; } public static Connection getConn(DataSource dataSource) { try { return dataSource.getConnection(); } catch (SQLException ex) { ex.printStackTrace(); } return null; } public static Connection getConn(String jndiName) { try { Context ctx; ctx = new InitialContext(); DataSource dataSource = (DataSource) ctx.lookup("java:comp/env/" + jndiName); return dataSource.getConnection(); } catch (NamingException ex) { ex.printStackTrace(); } catch (SQLException ex) { ex.printStackTrace(); } return null; } public static Connection getConn(Properties properties) { try { String driver = properties.getProperty("jdbc.driverClassName"); String url = properties.getProperty("jdbc.url"); String user = properties.getProperty("jdbc.username"); String password = properties.getProperty("jdbc.password"); Class.forName(driver); return DriverManager.getConnection(url, user, password); } catch (ClassNotFoundException ex) { ex.printStackTrace(); } catch (SQLException ex) { ex.printStackTrace(); } return null; } /** * oracle连接 * * @param path * @return Connection */ public static Connection getOracleConn(String
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值