`
1028826685
  • 浏览: 941018 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类

使用JPQL语句进行增、删、该、查

阅读更多
@Test
public void query()
{
EntityManagerFactory entityFactory=Persistence.createEntityManagerFactory("person");
EntityManager entity=entityFactory.createEntityManager();
//select o from Person o where o.name=?1 --> 位置参数查询query.setParameter(1,"liyong");
//select o from Person o where o.name=:name and o.id=:id--->命名参数query.setParameter("name", "liyong");
//select o from Person o where o.name=? and o.id=?-->位置参数查询 query.setParameter(1, "liyong");query.setParameter(2, new Integer(3));
Query query=entity.createQuery("select o from Person o where o.name=? and o.id=?");
query.setParameter(1, "liyong");
query.setParameter(2, new Integer(2));
//只返回一条数据
Person person=(Person)query.getSingleResult();
//返回多条数据
/*List<Person> list=query.getResultList();
for(Person person2 : list)
{
System.out.println(person2.getName());
}*/
System.out.println(person.getName());
entity.close();
entityFactory.close();
}

@SuppressWarnings("unchecked")
@Test
public void queryall()
{
EntityManagerFactory entityFactory=Persistence.createEntityManagerFactory("person");
EntityManager entity=entityFactory.createEntityManager();

Query query=entity.createQuery("select o from Person o ");

//返回多条数据
List<Person> list=query.getResultList();
for(Person person : list)
{
System.out.println(person.getName());
}
entity.close();
entityFactory.close();
}


@Test
public void querydelete()
{
EntityManagerFactory entityFactory=Persistence.createEntityManagerFactory("person");
EntityManager entity=entityFactory.createEntityManager();
entity.getTransaction().begin();
Query query=entity.createQuery("delete from Person o where o.id=?1");
query.setParameter(1, new Integer(2));
query.executeUpdate();
entity.getTransaction().commit();
entity.close();
entityFactory.close();
}
@Test
public void queryupdate()
{
EntityManagerFactory entityFactory=Persistence.createEntityManagerFactory("person");
EntityManager entity=entityFactory.createEntityManager();
entity.getTransaction().begin();
Query query=entity.createQuery("update Person o set o.name=:name where o.id=:id");
query.setParameter("name","李勇");
query.setParameter("id", new Integer(3));
query.executeUpdate();
entity.getTransaction().commit();
entity.close();
entityFactory.close();
}
分享到:
评论

相关推荐

    JPA之使用JPQL语句进行增删改查

    JPA之使用JPQL语句进行增删改查 JPA(Java Persistence API)是一种Java持久化API,提供了使用JPQL(Java Persistence Query Language)语句来进行增删改查操作的功能。在本文中,我们将介绍JPA之使用JPQL语句进行...

    JPA连接数据库增删改查

    本篇文章将深入探讨JPA如何连接数据库,并展示其在增、删、改、查(CRUD)操作中的应用。 首先,我们需要了解JPA的基本架构。JPA的核心组件包括实体(Entity)、实体管理器(EntityManager)、实体管理工厂...

    sping+hibernate+struts2增删改查

    在IT行业中,Spring、Hibernate和Struts2是三个非常重要的框架,它们构成了经典的Java Web开发栈,被广泛用于实现Web应用程序的"增删改查"(CRUD)操作。在这个项目中,"北大青鸟"可能是一个教育机构,它可能在教授...

    Test多表联合增删改查,struts两个JAVABEAN

    综上所述,"Test多表联合增删改查,struts两个JAVABEAN"这个主题涵盖了Struts框架的使用、JavaBean的设计、SSH框架的集成、Android开发的基础、数据库管理和设计模式的应用等多个IT领域的重要知识点。通过深入学习和...

    用stuts+hibernate实现增删改查源代码

    例如,当执行一个包含多条SQL语句的增删改查操作时,可以使用Hibernate的Transaction API来控制事务的开始、提交或回滚。 3. **数据查询**:通过Hibernate的Criteria、HQL(Hibernate Query Language)或JPQL(Java...

    J2EE增删改查经典代码

    在J2EE(Java 2 Platform, Enterprise Edition)开发中,增删改查(CRUD:Create, Read, Update, Delete)是基本且至关重要的操作,涵盖了数据库中的数据管理核心功能。以下是对“J2EE增删改查经典代码”的详细解析...

    Hibernate增删改查

    5. 在Session中执行增删改查操作,如`session.save(user)`、`session.delete(user)`、`session.update(user)`等。 6. 使用`session.get()`或`session.load()`获取数据库中的对象,或者使用HQL、Criteria API进行查询...

    springmvc+hibernate 实现的增删改查

    本项目“springmvc+hibernate 实现的增删改查”旨在演示如何整合这两个框架,以实现对MySQL数据库的基本数据操作。 SpringMVC框架提供了一个模型-视图-控制器(MVC)架构,用于组织和处理Web应用中的业务逻辑、数据...

    jap对单表的增删改查.zip

    通过学习和实践这个"jap对单表的增删改查.zip"项目,你可以深入了解JPA与Hibernate的结合使用,以及如何在实际应用中进行数据库操作。记得在实际项目中根据需求调整配置和代码,以达到最佳性能和可维护性。

    Jpa的创建和增删改查的代码

    - **批处理(Batch Processing)**: 通过设置批处理大小,一次处理多个SQL语句,提高批量操作效率。 ### JPA与其他ORM框架 虽然JPA是规范,但具体的实现有多个,比如Hibernate、EclipseLink等。这些实现可能提供...

    SpringBoot JPA实现增删改查、分页、排序、事务操作等功能示例

    除了这些预定义的方法,JPA还支持更复杂的查询,如JOIN操作、自定义SQL查询等,可以通过`@Query`注解在方法上直接编写HQL(Hibernate Query Language)或JPQL(Java Persistence Query Language)语句。 对于分页...

    采用的是servlet+JSP+JPA的学生信息管理系统

    在本系统中,JPA被用来处理学生信息的增删改查操作,通过实体类和注解定义数据模型,JPA会自动完成与数据库的交互。 具体来说,JPA通过实体类来表示数据库中的表,实体类的属性对应表的字段。通过@Entity注解标记...

    Spring Boot中使用Spring-data-jpa实现数据库增删查改

    总的来说,Spring Boot结合Spring Data JPA提供了一种高效、简洁的方式来处理数据库的增删查改操作。它减少了重复的代码,让开发者能更专注于业务逻辑,而不是数据库操作。这对于提升开发效率和代码质量有着显著的...

    NSpring&Nhibernate实例

    《NSpring&Nhibernate实例:深度解析增删改查操作》 在软件开发领域,Spring和Hibernate是两个非常重要的框架,它们分别在依赖注入(IoC)和对象关系映射(ORM)方面有着广泛的应用。本实例将深入探讨如何结合使用N...

    JPA大全之经典全集

    例如,使用`EntityManager`进行数据的增删改查,利用`JPQL`(Java Persistence Query Language)或`Criteria API`进行查询,以及如何处理关联关系和继承结构等。此外,还会讲解如何在Spring框架中集成JPA,使用`...

    5天入门hibernate

    - **对象关系映射(ORM)**: ORM是将数据库中的表映射为Java对象,通过对象的增删改查操作实现对数据库的操作,减少了对SQL的直接依赖。 - **Entity(实体)**: 在hibernate中,实体代表数据库表,通常是一个Java类...

    hibernate-MySQL-java

    我们可以使用Session的save()、update()、delete()和get()等方法来实现对数据库的增删改查操作。 例如,如果我们有一个User类,我们可以创建一个对应的User.hbm.xml文件,声明User类与数据库中的users表之间的映射...

    Spring Data JPA.zip

    通过接口的方法即可完成数据的增删改查。 **6. 查询方法命名规则** Spring Data JPA 支持根据方法名自动转换为 SQL 查询,例如 `findAll()`、`findById()` 等。 **7. JPQL 与 Criteria API** JPQL 是 JPA 提供的...

    hibernate-release-4.0.0.Beta1.zip

    3. **会话操作**:通过SessionFactory获取Session实例,使用beginTransaction()开始事务,然后执行增删改查操作,最后调用commit()提交事务。 4. **查询实现**:使用Query或Criteria API编写查询语句,可以通过add...

    Spring Data JPA1.7中文文档

    Spring Data Repositories 是 Spring Data 框架的核心组成部分,它们定义了一个接口层,用于处理数据访问层的通用操作,如增删查改。通过定义 Repository 接口,你可以轻松地创建数据访问对象,而无需编写大量的样板...

Global site tag (gtag.js) - Google Analytics