通过session对象操作数据库
*用JDBC驱动建立连接,显示Connection对象
package com.bohy.jdbc.test;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class Demo01 {
public void JDBCConnection(){
try {
//加载JDBC连接数据库的驱动
//驱动说白点,就是一个class文件
Class.forName("com.mysql.jdbc.Driver");
/*
* 获取链接需要三个参数:
* 1、url:连接的地址及相关参数
* 2、username:数据库账号
* 3、password:数据库密码
*/
"//url格式:jdbc:数据库厂商名称(例如:mysql):
//数据库所在地址的IP(例如:localhost):端口号(一般情况下都是3306)/数据库名称(例如:12_db)"
String url="jdbc:mysql://localhost:3306/12_db";
String username="root";
String password="123456";
//从驱动获取一个数据库连接(也就是Connection对象)
//connection:连接; Driver:驱动程序; Manager:管理者;
Connection conn = DriverManager.getConnection(url,username,password);
System.out.println(conn);
/*
* 注意,数据库用完*必须*关掉;这是规定.
*Statement对象将由Java垃圾收集程序自动关闭。
*而作为一种好的编程风格,应在不需要Statement对象时显式地关闭它们。
*这将立即释放DBMS资源,有助于避免潜在的内存问题。
* ResultSet维护指向其当前数据行的光标。
*每调用一次next方法,光标向下移动一行。
*最初它位于第一行之前,
*因此第一次调用next将把光标置于 第一行上,
*使它成为当前行。
*随着每次调用next导致光标向下移动一行,
*按照从上至下的次序获取ResultSet行,
*在ResultSet对象或其父辈 Statement对象关闭之前,
*光标一直保持有效。
*/
conn.close();
} catch (ClassNotFoundException e) {
System.err.println("没有找到JDBC连接mySql的驱动");
} catch (SQLException e) {
System.err.println("连接数据库失败!");
}
}
public static void main(String[] args) {
new Demo01().JDBCConnection();
}
}
*hibernate获取session对象,并显示成功还是失败
Public class SessionTest
{
@Test
Public void testOpenSession()
{
//获得配置对象
Configuration config=new Configuration().configure();
//获得服务注册对象
ServiceRegistry serviceRegistry=new ServiceRegistryBuilder().applySettings(config.getProperties()).buildServiceRegistry();
//获得sessionFactory对象
SessionFactory sessionFactory=config.buildSessionFactory(serviceRegistry);
//获取session对象
Session session=sessionFactory.openSession();
If(session!=null)
{
System.out.println(“session创建成功!”);
}
else
{
System.out.println(“session创建失败!”);
}
}
}