java连接数据库的代码

java连接数据库的代码,第1张

package mysql

import java.sql.*

/**

* @author xys

*/

public class ConnectMysql {

public static Connection getConnection() throws ClassNotFoundException, SQLException {

String url = "jdbc:mysql://localhost:3306/databaseName"

String user = "mysqluser"

String password = "password"

String driverClass = "com.mysql.cj.jdbc.Driver"

Connection connection = null

Class.forName(driverClass)

try {

connection = DriverManager.getConnection(url, user, password)

} catch (SQLException e) {

e.printStackTrace()

}

if (connection != null) {

System.out.println("数据库连接成功")

} else {

System.out.println("数据库连接失败")

connection.close()

}

return connection

}

public void getResult() throws ClassNotFoundException, SQLException {

// 实例化 Statement 对象

Statement statement = getConnection().createStatement()

// 要执行的 Mysql 数据库 *** 作语句(增、删、改、查)

String sql = ""

// 展开结果集数据库

ResultSet resultSet = statement.executeQuery(sql)

while (resultSet.next()) {

// 通过字段检索

int id = resultSet.getInt("id")

String name = resultSet.getString("name")

// 输出数据

System.out.println("ID : " +id)

System.out.println("name :" + name)

}

// 完成后需要依次关闭

resultSet.close()

statement.close()

getConnection().close()

}

}

import java.sql.Connection。

import java.sql.DriverManager 

import java.sql.PreparedStatement 

import java.sql.ResultSet 

import java.sql.SQLException

import javax.naming.Context 

import javax.naming.InitialContext 

import javax.naming.NamingException 

import javax.sql.DataSource

public class DBCon {

//数据库驱动对象

public static final String DRIVER="oracle.jdbc.driver.OracleDriver"

//数据库连接地址(数据库名)

public static final String URL="jdbc:oracle:thin:@localhost:1521:orcl"

//登陆名

public static final String USER="FM"

//登陆密码

public static final String PWD="FM"

//创建数据库连接对象

private Connection con=null

//创建数据库预编译对象

private PreparedStatement ps=null

//创建结果集

private ResultSet rs=null

//创建数据源对象

public static DataSource source=null

//  //静态代码块  

//  static{  

//  

//      //初始化配置文件context  

//      try {  

//          Context context=new InitialContext() 

//          source=(DataSource)context.lookup("java:comp/env/jdbc/webmessage") 

//      } catch (Exception e) {  

//          // TODO Auto-generated catch block  

//          e.printStackTrace() 

//      }  

//  

//  

//  }

/**

* 获取数据库连接

*/

public Connection getCon(){

try {

Class.forName(DRIVER)

} catch (ClassNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace()

}

try {

con=DriverManager.getConnection(URL,USER,PWD)

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace()

}

return con

}  

//  /**  

//   * 获取数据库连接  

//   */  

//  public Connection getCon(){  

//  

//      try {  

//          con=source.getConnection() 

//      } catch (SQLException e) {  

//          // TODO Auto-generated catch block  

//          e.printStackTrace() 

//      }  

//  

//      return con 

//  }  

/**

* 关闭所有资源

*/

public void closeAll(){

if(rs!=null)

try {

rs.close()

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace()

}

if(ps!=null)

try {

ps.close()

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace()

}

if(con!=null)

try {

con.close()

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace()

}  

}

/**

* @param sql数据库更新(增、删、改) 语句

* @param pras参数列表(可传,可不传,不传为NULL,以数组形式存在)

* @return 返回受影响都行数

*/

public int update(String sql,String... pras){

int resu=0

con=getCon()

try {

ps=con.prepareStatement(sql)

for(int i=0i<pras.lengthi++){

ps.setString(i+1,pras[i])

}

resu=ps.executeUpdate()

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace()

}

finally{

closeAll()

}

return resu

}

/**

* @param sql数据库查询语句

* @param pras参数列表(可传,可不传,不传为NULL,以数组形式存在)

* @return 返回结果集

*/

public ResultSet query(String sql,String... pras){

con=getCon()

try {

ps=con.prepareStatement(sql)

if(pras!=null)

for(int i=0i<pras.lengthi++){

ps.setString(i+1, pras[i])

}

rs=ps.executeQuery()

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace()

}

return rs

}  

}

Statement stm=conn.createStatement()

ResultSet rs=stm.execute("查询语句")

他会返回一个ResultSet 结果集

然后通过rs.next()方法便利结果集中的值

代码示例:

Class.forName("驱动地址")

Connection con=DriverManager.getConnection("数据库地址","用户名","密码")

Statement stm=con.createStatement()

ResultSet rs=stm.execute("查询语句")

while(rs.next()){

String str=rs.getString("对应的列名")

String str1=rs.getString(2)

int i=rs.getInt(3)

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10078921.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存