`
VaxVall
  • 浏览: 20904 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

(查)使用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映射文件中写清楚要获取的数据表名称
最后,输出的内容如下:




  • 大小: 58.2 KB
分享到:
评论

相关推荐

    session的get与load比较

    - **get** 方法:一旦调用`get`方法,并且指定的ID对应的实体对象不在当前Session的缓存中,Hibernate将立即执行SQL查询语句从数据库加载数据。 - **load** 方法:只有当调用了`load`返回的对象的属性或方法时,...

    php中将session保存到数据库的函数类代码.zip

    在PHP开发中,Session是用于跟踪用户状态的一种机制,它在服务器端存储用户信息,而不仅仅是像Cookie那样在客户端存储。然而,PHP默认将Session数据保存在文件系统中,这在高并发或需要持久化Session数据的情况下...

    将PHP的session数据存储到数据库中的代码实例

    5. `destroy`方法用于销毁一个session,从数据库中删除session数据。 6. `gc`方法是一个垃圾收集函数,在session关闭时调用,用于清理过期的session数据。 值得注意的是,PHP的内置垃圾收集器(session.gc_...

    将PHP的session数据存储到数据库中的代码实例_.docx

    【将 PHP Session 存储到数据库中的方法】 在 PHP 开发中,为了增强安全性、可扩展性和便于管理,有时会需要将 session 数据存储到数据库中,而不是默认的文件系统。以下是一个具体的实例,展示了如何使用 ...

    达梦数据库常用系统视图及查询语句.pdf

    3. 查询数据库初始化配置:使用函数`SF_GET_PAGE_SIZE()`, `SF_GET_EXTENT_SIZE()`, `SF_GET_UNICODE_FLAG()`, `SF_GET_CASE_SENSITIVE_FLAG()` 和 `SF_GET_SYSTEM_PATH()` 来获取数据库的初始设置。 4. 查询数据库...

    Struts2 的Action使用session的方法

    对于Struts2,我们不需要使用Spring的注解,而是直接在Action方法中获取session。 2. **获取session**:在Action方法中,可以通过`ActionContext`来获取当前的session。例如: ```java ActionContext context = ...

    重写hibernate的session简单增删改查

    "重写hibernate的session简单增删改查"是一个针对初学者的实践教程,旨在帮助理解如何在Hibernate中自定义Session的操作,以便更好地控制数据库交互。 一、Hibernate Session Hibernate的Session是与数据库交互的...

    网页和数据库的增删改查

    网页和数据库的交互是Web应用开发中的核心环节,主要涉及数据的增删改查(CRUD)操作。在这个过程中,我们通常使用Java Server Pages (JSP) 作为前端展示,结合Java Database Connectivity (JDBC) 来实现后端与...

    hibernate3.2_GET方法

    3. **GET方法的使用**:作者会详细讲解`Session.get()`方法的用法,包括其参数(通常是实体类的Class对象和对象ID)以及返回值(如果数据库中有匹配的对象,则返回该对象;否则返回null)。 4. **示例代码**:`...

    jsp页面,连接数据库实现增删改查

    在JSP中,我们可以通过`Class.forName()`加载数据库驱动,然后使用`DriverManager.getConnection()`建立连接,接着创建Statement或PreparedStatement对象来执行SQL语句。 对于用户注册功能,我们需要创建一个新的...

    jsp显示数据库信息

    1. **创建数据库连接**:在JavaBean中,使用JDBC驱动建立到Access数据库的连接,这通常涉及到加载驱动、设置连接参数(如数据库路径)并调用`DriverManager.getConnection()`方法。 2. **执行SQL查询**:通过...

    简单的jsp+mysql实现数据库的增删改查

    4. **删除(Delete)**: 类似于更新操作,用户选择要删除的记录,JSP通过DELETE SQL语句从数据库中移除相应记录。在执行删除操作前,通常会提示用户确认,以防止意外删除。 权限控制: 在Web应用中,权限控制是...

    Hibernate操作数据库的方法

    上述内容简要介绍了如何使用 Hibernate 操作数据库。Hibernate 是一个强大的 ORM(Object-Relational Mapping)框架,它将 Java 对象与数据库表映射,简化了数据库交互的过程。通过 Configuration 配置对象读取 ...

    在hibernate中的数据库操作

    - 如果提供的 ID 值不存在于数据库中,`session.get()` 将返回 `null`。 - 当调用 `session.get()` 时,会立即执行 SQL 查询。 **3. session.load()** - **功能**: 类似于 `session.get()`,但只有在实际访问对象...

    Spring Security 安全实例-数据库应用(用户从数据库中获取) 2

    要从数据库中获取用户信息,我们需要配置Spring Security以连接到我们的数据库。这通常涉及到创建一个自定义的`UserDetailsService`实现,该接口用于加载用户信息。例如,我们可以创建一个名为`...

    使用hibernate连接oracle数据库的详细方法,代码实现实现数据库的增删改查.zip

    本教程将深入讲解如何使用Hibernate连接Oracle数据库,并通过代码实例演示数据库的增删改查操作。 首先,我们需要理解Hibernate的核心概念。它允许开发者用面向对象的方式来处理数据库,将Java类映射到数据库表,将...

    在WEB API中启用session

    3. 使用Session:现在,你可以在控制器的方法中像在ASP.NET MVC或Web Forms中一样访问Session。 ```csharp public class ValuesController : ApiController { public IHttpActionResult Get() { // 设置Session...

    这是我用JSP写的购物车,没有连接数据库!

    7. **扩展性**:要连接数据库,可以使用JDBC(Java Database Connectivity)来建立数据库连接,执行SQL查询,将商品信息存储在数据库表中,并将购物车中的操作映射为相应的数据库操作。 8. **安全性**:没有数据库...

    Hibernate查询 load与get的区别及其它查询测试

    `load`和`get`方法是Hibernate中用于检索实体的两种主要方式,它们都是从Session接口中调用,但有明显的区别和各自的适用场景。 1. `load`方法: - `load`方法主要用于根据主键加载对象,它返回一个代理对象,而...

Global site tag (gtag.js) - Google Analytics