本文目录一览:
jdbc连接mysql的代码
public Connection con = null;
public PreparedStatement pst = null;
public Connection getCon() throws SQLException {
String JDriver = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; // SQL驱动
try {
Class.forName(JDriver).newInstance();
String url = "jdbc:sqlserver://localhost:1433;DatabaseName=StudentManagement"; // 数据库的信息
con = DriverManager.getConnection(url, "登录名", "密码");
} catch (InstantiationException | IllegalAccessException | ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return con;
}
jdbc连接数据库的代码问题jdbc连接mysql数据库
用这个类吧.好的话,给我加加分。
import java.sql.*;
/**
* @功能: 一个JDBC的本地化API连接类,封装了数据操作方法,只用传一个SQL语句即可
* @作者: 李开欢
* @日期: 2007/
*/
public class ConnectionDemo {
/*
* 这里可以将常量全部放入另一个类中,以方便修改
*/
private static Connection conn;
private static Statement ps;
private static ResultSet rs;
private static final String DRIVER = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
private static final String URL = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb";
private static final String USER = "sa";
private static final String PASS = "sa";
public ConnectionDemo() {
// TODO Auto-generated constructor stub
ConnectionDemo.getConnection();
}
public static Connection getConnection() {
System.out.println("连接中...");
try {
Class.forName(ConnectionDemo.DRIVER);
conn = DriverManager.getConnection(ConnectionDemo.URL, ConnectionDemo.USER, ConnectionDemo.PASS);
System.out.println("成功连接");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return conn;
}
public static Statement getStatement(String sql) {
System.out.println("执行SQL语句中...");
try {
ps = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
if (sql.substring(0, 6).equals("select")) {
rs = ps.executeQuery(sql);
System.out.println("执行完查询操作,结果已返回ResultSet集合");
} else if (sql.substring(0, 6).equals("delete")) {
ps.executeUpdate(sql);
System.out.println("已执行完毕删除操作");
} else if (sql.substring(0, 6).equals("insert")) {
ps.executeUpdate(sql);
System.out.println("已执行完毕增加操作");
} else {
ps.executeUpdate(sql);
System.out.println("已执行完毕更新操作");
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return ps;
}
public static ResultSet getResultSet() {
System.out.println("查询结果为:");
return rs;
}
public static void closeConnection() {
System.out.println("关闭连接中...");
try {
if (rs != null) {
rs.close();
System.out.println("已关闭ResultSet");
}
if (ps != null) {
ps.close();
System.out.println("已关闭Statement");
}
if (conn != null) {
conn.close();
System.out.println("已关闭Connection");
}
} catch (Exception e) {
// TODO: handle exception
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
ConnectionDemo.getConnection();
String sql = "delete from type where id = 1";
ConnectionDemo.getStatement(sql);
String sql2 = "insert into type values(1,'教学设备')";
ConnectionDemo.getStatement(sql2);
String sql1 = "select * from type";
ConnectionDemo.getStatement(sql1);
ResultSet rs = ConnectionDemo.getResultSet();
System.out.println("编号 " + "类 型");
try {
while (rs.next()) {
System.out.print(" " + rs.getInt(1) + " ");
System.out.println(rs.getString(2));
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
ConnectionDemo.closeConnection();
}
}
如何实现JDBC连接mysql数据库
- 导入mysql数据库的驱动jar包
如我的导的是mysql-connector-java-5.1.40.jar - 注册驱动
注册驱动代码为:Class.forName("com.mysql.jdbc.Driver")
- 获取连接
其中url为Connection con = DriverManager.getConnection(url, username, password)
jdbc:mysql://localhost:3306/xun?useSSL=false
,后面那个xun
为数据库的库名,如果不使用加密的话,?useSSL=false
这个其实也可以省略,省略后为jdbc:mysql://localhost:3306/xun
,不过最好还是别省略哈。 - 获取PrepareStatement并发送sql查询语句
注意,执行查询使用的是String sql = "select * from user where username = ?"; PreparedStatement pst = con.prepareStatement(sql); pst.setString(1, "zengjiaxun"); ResultSet rs = pst.executeQuery();
executeQuery()
方法,此方法返回的是ResultSet
,ResultSet
为结果集,封装了查询结果。插入、删除、修改用的是executeUpdate()
方法。
执行sql后记得关闭相应的流。pst.clearParameters();
分别写出jdbc连oracle和mysql的主要代码
JDBC连接不同数据库的写法如下:
1. Oracle8/8i/9i数据库(thin模式)
Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@localhost:1521:orcl"; // orcl为数据库的SID
String user = "test";
String password = "test";
Connection conn = DriverManager.getConnection(url, user, password);
2. SQL Server2005及以上版本数据库
Class.forName("com.microsoft.sqlserver.SQLServerDriver");
String url = "jdbc:sqlserver://localhost:1433;DatabaseName=mydb"; // mydb为数据库
String user = "sa";
String password = "";
Connection conn = DriverManager.getConnection(url, user, password);
3. MySQL数据库
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost/myDB?user=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1"; // myDB为数据库名
Connection conn = DriverManager.getConnection(url);
4. DB2数据库
Class.forName("com.ibm.db2.jdbc.app.DB2Driver").newInstance();
String url = "jdbc:db2://localhost:5000/sample"; // sample为你的数据库名
String user = "admin";
String password = "";
Connection conn = DriverManager.getConnection(url, user, password);
5. Sybase数据库
Class.forName("com.sybase.jdbc.SybDriver").newInstance();
String url = "jdbc:sybase:Tds:localhost:5007/myDB"; // myDB为你的数据库名
Properties sysProps = System.getProperties();
sysProps.put("user", "userid");
sysProps.put("password", "user_password");
Connection conn = DriverManager.getConnection(url, sysProps);
6. Informix数据库
Class.forName("com.informix.jdbc.IfxDriver").newInstance();
String url = "jdbc:informix-sqli://123.45.67.89:1533/myDB:INFORMIXSERVER=myserver;user=testuser;password=testpassword"; // myDB为数据库名
Connection conn = DriverManager.getConnection(url);
7. PostgreSQL数据库
Class.forName("org.postgresql.Driver").newInstance();
String url = "jdbc:postgresql://localhost/myDB"; // myDB为数据库名
String user = "myuser";
String password = "mypassword";
Connection conn = DriverManager.getConnection(url, user, password);
8. Access数据库直连用ODBC的
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url = "jdbc:odbc:Driver={MicroSoft Access Driver (*.mdb)};DBQ=" + application.getRealPath("/Data/ReportDemo.mdb");
Connection conn = DriverManager.getConnection(url, "", "");
Statement stmtNew = conn.createStatement();