(查)使用session的get()方法从数据库中获得信息

和之前的内容一样,这次首先需要将持久类中的主键从String改回为int,因为get()方法查询数据库是根据输入的int来查询的.
其次,由于要测试输出查询的内容,需要在持久类中覆写全参的toString()方法.
持久类的变动就这些.

package hiber1;

public class User {
private int uid;
private String username;
private String password;
private String address;
public int getUid() {
return uid;
}
public void setUid(int uid) {
this.uid = uid;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
@Override
public String toString() {
return "User [uid=" + uid + ", username=" + username + ", password=" + password + ", address=" + address + "]";
}





}



其次,创建一个新的测试类,此类需要从工厂类中获得session
package hiber1;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.junit.jupiter.api.Test;

public class HiberGet {
@Test
public void testGet(){
//1.调用工具类(session的工厂类),得到sessionfactory
SessionFactory sessionF = HiberTool.getSessionFactory();
//2.获取session
Session session = sessionF.openSession();
//3.开启事务
Transaction tx = session.beginTransaction();
//4.根据id查询,获取User对象(重点)
User user = session.get(User.class, 2);//第一个参数:实体类.class||第二个参数:id值
System.out.println(user);//直接输出user记得要在User类中重写toString
//5.提交事务
tx.commit();
//6.关闭
session.close();
sessionF.close();
}

}


其余内容就不粘贴了,记得要在xml映射文件中写清楚要获取的数据表名称
最后,输出的内容如下:

[img]http://dl2.iteye.com/upload/attachment/0128/7063/b5433875-96e1-307a-9ed1-674e60792269.png[/img]
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值