您的位置:首页 > 编程语言 > Java开发

Java连接SQL Server 2008和My SQL数据库的简单操作(1)

2016-08-27 21:52 344 查看

关于Java数据库后台连接(SQL Server 2008和My SQL)

1、获取各个数据库地址的相关链接:(各个数据库的连接地址不同,因此先介绍一下它们的连接方式)

1)SQL Server 2008:URL = "jdbc:sqlserver://localhost:1433;DateBase=数据库名"

2)MySQL:URL="jdbc:mysql://localhost:3306/数据库名" + "?unicode=true&character=utf8&useSSL=false"

PS:后面“?”部分若是用MyEclipse来编程的,可能需要数据库编码的设置,useSSL设置现在高版本的MyEclipse对一种安全协议的要求

3)Oracle:URL="jdbc:oracle:thin:@localhost:1512:数据库名"

PS:通常SQL Server和My SQL这两个数据库最常用

2、Java与SQL Server 2008

PS:首先要创建各类数据库的连接,要先将各个数据库的驱动导入到工程项目中,以确保能够正确连接(大家可以去网上下载),一个专门连接数据库的类GetConn

import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;//导包的快捷方法shift+ctrl+O(英文字母o)
public class GetConn{
public static Connection getConn(){
Connection conn = null;
try{
//1.加载SQL Server驱动
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
}catch(ClassNotFoundException e){
e.printStackTrace();
}
//2.设置URL,用户名及密码
String url = "jdbc:sqlserver://localhost:1433;DateBase=数据库名";
String user =  "sa";
String password = "123456";
try{
conn = DriverManager.getConnection(url,user,password);
}catch(SQLException e){
e.printStackTrace();
}
return conn;
}
}


PS:以上代码就是关于Java对SQL Server的一个连接方式,但是,现实当中,当对数据库进行操作时,由于传递的参数未知,因此我们往往需要提供预编译的实现方式,来避免代码的重复。以下是对于数据库操作的方法实现(预编译)。

public int update(String sql,Object...objs){//(Object...objs)可变参数
int res = 0;
Connection conn = getConn();
PreparedStatement pst = null;//PreparedStatement预编译
ResultSet rs = null;

try{
pst = conn.prepareStatement(sql);
if(objs != null && objs.length != 0){
for(int i=0; i<objs.length;i++){
//设置值,由于有表头,因此,第一行表的值从1开始
pst.setObject(i+1,objs[i])
}
}
res = pst.executeUpdate();
//当有插入语句时,且id为自增长,要做以下步骤
if(sqp.contains("insert")){
pst = conn.prepareStatement("select @@identity");
rs = pst.executeUpdate();
if(rs.next()){
res = rs.getInt(1);
}
}
}catch(Exception e){
e.printStackTrace();
}finally{
closeAll(null,pst,conn);//关闭数据库
}
return res;
}


PS:不算结语的结语。由于增删改的语法一样因此,可共用update这个方法,而查询语句与它们是分开的,需要重新写一个查询的方法。下期针对这个方法进行详细介绍!(未完。。。)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息