1、初学者常见的方式,使用JDBC直连数据库,加载一下驱动就可以。比较直观,但是项目中没人这样用,因为对于昂贵的数据库连接没有管理。
2、项目常见的方式,使用数据库连接池,DBCP,C3P0,proxool 等等,有统一有效的数据库连接管理,比较方便。
3、希望对你有帮助。
导入javasql包
一、加载要连接数据库的驱动程序
//Jdbc-Odbc桥 和 Microsoft Access 数据库
ClassforName("sunjdbcodbcJdbcOdbcDriver");
// SQL Server 驱动程序:
ClassforName("commicrosoftjdbcsqlserverSQLServerDriver");
注:ClassforName()方法将给定的类加载到JVM,如果系统中不存在给定的类,则会引发异常
二、通过驱动程序管理器得到连接实例
Connection conn=null;
//1
//11建立数据源
conn=DriverManagergetConnection("jdbc:odbc:MyDataSource"); //MyDataSource是数据源名称
//1-2、不建立数据源
conn=DriverManagergetConnection("jdbc:odbc:;Driver=Microsoft Access Driver (mdb);DBQ=C:\\VBTestmdb");
//2SQL Server
conn=DriverManagergetConnection("jdbc:microsoft:sqlserver://127001:1433;databasename=mydb","sa","");
注:DriverManager类跟踪已注册的驱动程序,通过getConnection(URL)方法, 找到一个能够连接至URL中指定的数据库驱动程序
它接收三个参数, 分别表示1 数据源的名称、类型 2 用户名(可选) 3 密码(可选)
三、基于连接对象建立处理器对象
Statement stmt=conncreateStatement();
四、准备sql命令
String sql="select from Student";
五、执行命令返回结果集
ResultSet rs=stmtexecuteQuery(sql);
六、显示结果集
while(rsnext())//只要后面有记录
{
//对当前行的所有字段遍历
for(int i=1;i<=rsgetMetaData()getColumnCount();i++)
{
Systemoutprint(rsgetMetaData()getColumnName(i)+": ");//显示字段名
Systemoutprintln(rsgetString(i));//显示字段当前值
}
Systemoutprintln();
}
七、关闭资源
rsclose(); //关闭记录集
stmtclose(); //关闭处理器对象
connclose(); //关闭连接对象
预处理器的应用:
//3基于连接对象建立预处理器对象
PreparedStatement pstmt=connprepareStatement("insert into student values(,,,)");
//4给预处理对象的参数赋值
pstmtsetString(1,"8888");
pstmtsetString(2,"nemo");
pstmtsetString(3,"accp");
pstmtsetString(4,"sanxianglu");
//5执行预处理命令
int i=pstmtexecuteUpdate();
Systemoutprintln(i+"条记录已成功插入!");
使用jdbc连接类
public class DBUtil {public static Connection getConnection(){
Connection conn = null;
String url = "jdbc:mysql://localhost:3306/stock"
+ "user=root&password=123456&useUnicode=true&characterEncoding=UTF8";
//3306是端口号,stock是数据库名,root是数据库登陆名,123456是登陆密码
try {
ClassforName("commysqljdbcDriver");
conn = DriverManagergetConnection(url);
} catch (ClassNotFoundException e) {
// TODO 自动生成的 catch 块
eprintStackTrace();
} catch (SQLException e) {
// TODO 自动生成的 catch 块
eprintStackTrace();
}
return conn;
}
public static void close(Connection conn){
try {
connclose();
} catch (SQLException e) {
// TODO 自动生成的 catch 块
eprintStackTrace();
}
}
}
首先要看是什么数据库,如果是mysql,要先导入mysql的jar包。数据库的连接可以如下:
public static void main(String[] args) {
try {
//1注册驱动,这样Java才能连接数据库;
ClassforName("commysqljdbcDriver");
//2连接数据库--->第一个参数:连接数据库的URL,第二参数是数据库的用户名(root),第三参数是此用户名下得密码;
//Connection conn=DriverManagergetConnection("jdbc:mysql://localhost:3306/stu106", "root", "sa");
Connection conn=DriverManagergetConnection("jdbc:mysql://1135715157:3306/radiuscharacterEncoding=utf-8", "radius", "bjgcfsfeeradius");
//多态
//List list=new ArrayList(); mysql
//List list1=new LinkedList(); oracle
//3创建执行sql语句的
Statement st=conncreateStatement();
//4得到结果集
ResultSet rs=stexecuteQuery("select from game_news");
//5遍历结果集
while(rsnext()){
// Systemoutprintln("id:"+rsgetInt("id")+" ,name:"+rsgetString("name"));
Systemoutprintln("dd");
}
//6关闭相关的资源
if(rs!=null){
rsclose();
}
if(st!=null){
stclose();
}
if(conn!=null){
connclose();
}
if(conn!=null){
Systemoutprintln("连接成功!");
}
} catch (Exception e) {
// TODO Auto-generated catch block
eprintStackTrace();
}
}
如果是orcal的数据库,要导入orcal的jar包,然后改改相应的地方就可以了。
以上就是关于Java中怎么连接数据库全部的内容,包括:Java中怎么连接数据库、JAVA中怎么连接数据库、如何用Java连接数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)