我有一个网站,允许以各种方式搜索内容列表,例如“按日期排序显示用户523创建的内容”或“显示最近10篇文章的列表”
我在ORM中使用Hibernate,Hibernate为对象提供缓存。不过,对于对象列表,比如最新内容的首页列表,我不知道如何最好地缓存这些内容。现在,我让我的Spring控制器只返回一个标准JSP页面,然后在JSP级别使用oscache,并围绕对另一个类的调用
不过,这似乎不雅。我真正想要的是我的控制器能够访问缓存的结果(如果有),这样JSP就可以只关注结果的显示
我在这里的选项
我正在编写一个gwt应用程序,使用hibernate在服务器上保存
我有一个类似于客户->订单的概念。因此,如果我创建类customer和类orders,在数据库中,order表有一个指向customer表的外键
假设我想从服务器检索订单,而我不关心客户。如果我写了一些东西来减少订单,如果我使用“急切加载”,它会自动减少客户的订单。如果我不希望这样,那么我可以将其作为延迟加载,只获取订单,并且我假设myOrder.getCustomer==null
现在,如果我想在客户机上创建一个订单,有没有一
我知道,Hibernate是一种直接将对象映射到表数据的ORM。那么这是否意味着hibernate使调试变得容易呢?我是一名学生,自学成才。我在hibernate中遇到了一个程序,在这个程序中,我不必像通常使用JDBC逻辑那样使用try-catch块。因此,我的问题是如何处理异常,在hibernate中调试比在JDBC中调试容易吗?简单的回答是,hibernate将SQLExceptions包装在未检查的hibernate异常中。所以异常仍然会被抛出,您只是不必捕获它们。在实践中,这是可以的,因
我有一张桌子:
具有以下列的用户:{id,name,address}
我想使用hibernate仅从该表中选择id。但我不想将HQL用于本机SQL查询。我想使用Criteria对象。有办法吗
谢谢
肖恩·阮是的。您必须使用投影:
Criteria c = session.createCriteria(User.class, "u");
c.setProjection(Projections.property("u.id"));
return c.list(); // the list of al
我使用的是带弹簧和冬眠的指南针。我得到了一些正确的点击,但没有数据
这是我的实体类
@Entity
@Searchable(alias="patient")
public class Patient {
@Id
@GeneratedValue
@SearchableId
public Integer id;
@SearchableProperty(name="name")
public String firstName;
public String lastName;
}
这是动作类
p
我可能走错了方向,但这是我的设想
基本上,我有一个标题和一个细节实体。
他们有一对多的关系,我把他们映射成这样。所有这些都很好
但是,有多个详细信息记录被设置为不活动
我是否可以进行映射,使其仅通过使用查询或其他方式连接活动的详细信息记录
如果有帮助,我可以添加一些代码
我正在使用hibernate和注释
谢谢
编辑:
下面是如何使这项工作
@OneToMany(mappedBy = "tourHeader", fetch = FetchType.EAGER)
@Where(clause="it
我很好奇Grails框架对数据库/GORM对象缓存的支持
默认情况下启用了什么数据库缓存
框架提供了哪些数据库缓存,但默认情况下禁用了哪些数据库缓存
您通常在Grails项目中启用/禁用哪种数据库缓存?为什么?
Grails将Hibernate用于GORM,因此数据库缓存功能实际上由Hibernate提供
Hibernate一级缓存已启用(仅持续大约用户请求的时间)。它不能被禁用
Hibernate二级缓存也已启用,但可以通过配置关闭。此缓存将长时间保存数据(可按对象类型配置),除非数据无效(
我想使用Hibernate的过滤器,过滤“MyEntity”对象,在过滤条件中使用“AnotherEntity”的suselect。配置如下所示:
<hibernate-mapping>
<filter-def name="myFilter" condition="someProperty in (select x.property1 from AnotherEntity x where property2 = :property2)">
<filte
我有一个域对象Issue,它有一个属性Date createTime,我想用它作为GORM的id,带有一些自定义逻辑
例如,假设第一个问题创建于2011/08/02,则ID应为2011080201。同一天的下一期应该有ID2011080202等等
然后,第二天创建的第一期2011/08/03ID应该是2011080301
因此,基本要求是我必须在createTime属性上附加一个递增的值
应该采用什么方法???我认为您必须创建一个自定义id生成器
尝试创建一个类my.package.MyCust
只是想了解一些关于如何在Spring3.0.2和Hibernate3.2.7Web应用程序上使用JUnit4设置“单元”测试的建议
目前,我们有超过500个测试,分布在75个以上的班级
我们的测试类的设置(注释)与下面的类类似:
@RunWith(SpringJUnit4ClassRunner.class)
@TransactionConfiguration
@Transactional
@ContextConfiguration(locations={"/location/of/SomeSer
两个表,Cat和kittenone to many,kitten表中有5条记录,Cat表中有1条记录。小猫有颜色,2只白色,3只黄色。我编写了下面的HQL返回Cat
select c from Cat c inner join c.kitten k where k.color='yellow'
这只猫还给了我。但当我这么做的时候
cat.getKitten().size()
它返回5,而不是3。我想做的是只得到匹配的孩子,而不是所有的孩子,正确的方法是什么
看来这就成功了,谢谢zzz和大家
我需要跟踪一个M:N与属性的关系,所以我使用了一个链接表,它遵循。。。但是,我看不出如何查询合法但尚不存在的成员关系,例如,任何不在给定团队中的员工或用户尚未竞标的项目等。我正在HQL中对此进行研究,但我对此一无所知,因此我可以使用一些指导来说明什么技术最有效。。。或者,这类查询的示例
为了便于讨论,只需假设Employees:TeamMembership类,每个类都有一个非常大的集合,太大了,无法直接进入中间层并执行集合操作
class Membership {
Employee em
我正在使用Hibernate模板。
从控制器调用DAO方法,如下所示:
List<SearchQuestionnaire> lst =
questionnaireDAO.listQuestionnaire(searchQuestionnaire);
String queryString1 = "select
new com.apple.ist.cm.ruleadmin.model.SearchQuestionnaire
(qc.questi
我的大学正在筹建中科院。目前,我正致力于将hibernate与CAS集成,以便CAS可以连接到数据库,并一直遵循以下指南:
完整堆栈跟踪:
SEVERE: Exception starting filter springSecurityFilterChain
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'servicesManager' defined in Ser
我是Maven的新手,对Maven有以下两个问题:
我正在寻找一个包含Spring+Hibernate+JPA的Maven工件。我发现的唯一一个是混合了Flex的。现在,我想让它保持简单,不想处理Flex增加的复杂性
当您下载一个Maven工件,比如Spring+Hibernate+JPA的工件时,它们是否已经提供了必要的配置,或者Maven只处理库和文件的下载,然后我必须进入并添加必要的配置
我正在寻找一个包含Spring+Hibernate的Maven工件+
JPA。我发现的唯一一个是混合了
我已经编写了hql,它在hql编辑器中正常工作,但当我在java代码中应用它时,它会给我错误
HQL查询是否正常工作
select auhority.id from Authority as auhority where auhority.action = 'USER_MASTER_FULL_ACCESS' and auhority.aclObject is NULL
用于执行查询的Java代码
String hql = "from " + Authority.class.getCanoni
我想在一些插件上显示doWithDynamicMethod调用的persistentProperties值
通过下面的代码,我成功地截获了域类上的save和update方法,并在它们试图保存对象时查看它们的输出
但是我无法打印persistentProperties的内容(可能是因为我是groovy和grails的noob,因此我不熟悉groovy反射的语法)
有人能帮忙吗
以下是我的代码:
def doWithDynamicMethods = { ctx ->
// TODO Im
当我从一个集合中删除一个将被重新保存的对象时,我不断收到一个错误,因为它存在于其他集合中。在当前会话中,只有我正在处理的集合存在。没有其他的了。
所以我认为NHibernate告诉我,即使对象将被删除,它仍然存在于会话中
我如何查看当前会话中的对象或NHibernate发现我试图删除的对象属于哪个集合的对象?我找到了它:
var sessionContext = session.GetSessionImplementation().PersistenceContext;
foreach (var
我们正在使用以下技术堆栈:hibernate搜索最新版本(4.1)、hibernate核心、InnoDB的Mysql表、Tomcat应用程序
我们的应用程序每天从一些网页读取数据并更新索引一次。索引更新未丢失关键操作(更新可能失败,我们将等待第二天)。但索引搜索必须始终可用,并且内容必须在不同节点之间同步。索引相对较小(50mb)
你知道我们如何实现故障转移架构吗?我们的第一个想法是总是在第一个节点上更新索引,并在其他节点上复制更改。但我们不知道如何做到这一点。谢谢你的帮助
问候,,
Matic
我有一个DLawUserMaster表,它有UserID、LoginId和password字段。其中UserId和LoginId是复合密钥。当用户尝试使用userID和密码登录时,我希望验证用户并获取userID以将其存储在会话中,以便在应用程序中进一步使用
我已尝试在netbeans HQL查询编辑器中使用查询获取userID,如下所示
从DLawUserMaster user中选择count(*),其中user.id.loginId='admin'和user.password='admin'
如何创建带有注释的POJO,以便hibernate在映射时创建下表?一列是followEE,一列是followER
CREATE TABLE friends(
id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
followee_id INT(11) UNSIGNED NOT NULL,
follower_id INT(11) UNSIGNED NOT NULL,
start_time TIMESTAMP NOT NULL,
end_ti
我有以下问题。
我使用JBoss5.1、JPA/Hibernate和二级缓存。
我的系统很少有实体映射同一个数据库表。
例子:
桌子家具由实体“Furn”和“Furniture”映射
这些类别不能更改
现在,当我更改id为1的“Furn”数据时,id为1的“Furniture”仍保留旧数据。更新“Furn”后是否有可能收回“家具”?不建议将同一个表映射到两个实体,因此我认为hibernate不会自动处理此问题
您可以为Furn实体实现一个后刷新侦听器,然后使用类似下面的代码来逐出相应的家具对象
出于测试目的,我试图预填充一个由Hibernate创建的表。我在我的hibernate.cfg.xml中有这个:
<!-- Prepopulate database with these DML scripts -->
<property name="hibernate.hbm2ddl.import_files">/genres.sql</property>
为什么不工作?文件在类路径中,因为它在/src目录下,但IntelliJ只查找特定的扩展名,。sql
我有以下域模型:
class Department {
Contact primaryContact
Company company
}
当我执行JPQL查询时
from Department e
left join e.primaryContact
where (e.company.id=?) order by e.name asc
我得到以下SQL:
select *aliases*
left outer join contact contact1_
我有两个抽象类:
@Entity
@Inheritance(strategy = InheritanceType.JOINED)
@Table(name="compound")
public abstract class Compound<T extends Containable {
@OneToMany(fetch = FetchType.EAGER, mappedBy="compound",
targetEntity=Containable.class,
GrailsV2.0.1配置已经外部化到一个文件中,因此它可以位于一个安全分区上
这是通过修改Config.groovy和DataSource.groovy完成的
grails.config.locations = ["file:/Volumes/secure/local.config.groovy"]
当此添加的配置位置不可用时,引导代码无法连接到数据库,我会遇到以下令人困惑的错误:
运行Grails应用程序
错误util.jdbceptionReporter-未找到表“用户”;SQL语句:
嗨,我在Ubuntu的tomcat服务器上部署了一个web应用程序。但我在登录时遇到以下错误
HTTP Status 500 - Request processing failed; nested exception is org.hibernate.exception.SQLGrammarException: could not execute query
message Request processing failed; nested exception is org.hibernate
我使用Hibernate处理单个Tomcat节点,但当我尝试在集群中运行时,会出现以下错误:
SEVERE: IOException while loading persisted sessions: java.io.InvalidObjectException: Could not find a SessionFactory [uuid=158c1e24-039b-4406-9a9b-cebb836100d1,name=null]
java.io.InvalidObjectException:
我有一个@实体,但我也想将此实体用作另一个实体中的嵌入部分。甚至在JSF中也有可能吗?我找不到任何关于@Embeddeble这种用法的例子,也找不到任何明确表示这是禁止的材料。这就是为什么我要问你们这些家伙,@Entity可以@embedded吗?也许有一些资料可以读?提前感谢。最坏情况下,您不能在同一个类上混合使用@Entity和@embeddeble注释。充其量你不应该。
(这是JPA/Hibernate问题,不是JSF问题。)
您可能想看看:
并检查@MappedSupercla
我不熟悉hibernate,在使用getCurrentSession()和openSession()检索会话时有点困惑,许多文章提到getCurrentSession会在会话不存在时创建一个全新的会话,而在会话可用时不会创建新会话,另一方面,openSession创建了一个全新的会话
这里我有一个困惑openSession()总是创建一个全新的会话吗
hibernate池会话是否使用getCurrentSession()中的相同会话
你能帮我澄清这一点,并为我犯的任何错误道歉吗
非常感谢
是。
我正在使用hibernate和mongodb映射的域类。然后我安装了elastic search gorm插件并提到
"elasticSearch.datastoreImpl = 'mongoDatastore'" in Config.groovy.
它适用于mongodb域类。如何在剩余的hibernate域类上应用弹性搜索?如果我将searchable=true,则会出现错误。替代解决方案-将hibernate域行转换为JSON,并使用本机弹性搜索调用将其添加到弹性搜索数据库。使用hibe
我知道Hibernate没有实现UNION,但问题是为什么?我发现这个问题已经被报道过了,而且已经很老了()。当然,union可以替换为IN子句,但它不一样。有没有希望有朝一日实现它?作为一个提示,我将创建一个包含UNION的视图,然后使用hibernate查询视图对象。
桌子。我希望获得具有firm_id=1和firm_id=2(非或)的用户
用户id |公司id
----------------
1|1
2|1
1|2
在SQL上,它将是:从表中选择用户id,其中(1,2)组中的公司id按用户id的计数(用户id)=2选择用户id,因此如果将Hibernate与一个或多个标准Api一起使用,您还可以使用限制界面
List users = sess.createCriteria(User.class)
.add( Restrictions.and(
Re
我在继承方面有问题:
类项和从项扩展的类用户
@Inheritance(strategy= InheritanceType.JOINED)
@Entity
@Table(name = "item")
public class Item{
...
Date lastdate;
}
@Entity
@Table(name = "user")
public class User extends Item{
...
Date logindate
}
我想做这个查询:
我正在开发一个web应用程序,其中我有一个表单,其中包含一些select标记,这些标记应该根据前面select标记上的选定值填充。应用程序是使用Struts2和Hibernate构建的。现在我的问题是,我是否需要用对象填充select标记,或者用字符串值填充它们,以提供更好的性能。
在这里,我用数据库中的Company类型的对象填充了Select Company,onselect使用Item类型的对象更新Select项的值。因此,在本例中,我必须使用hibernate query来填充标记。因
在JSF(Primefaces)应用程序中,我有以下实体:
@Entity
@Table(name = "shop_tree")
@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
@DiscriminatorColumn(name = "itemType", discriminatorType = DiscriminatorType.STRING)
@NamedQuery(name = "selectSorted", query
我定义了两个实体之间的一对一关系。(EntHesaplasma和EntHesaplasmaek)在EntHesaplasma实体中,关系注释被添加到getEntHesaplasmaek方法中
public class EntHesaplasma implements Serializable{
@Id
@GeneratedValue
@Column(name = "hesaplasmaid", unique = true, nullable = false)
p
在运行我的应用程序时,我遇到了以下错误
无法确定的类型:java.util.List,位于表:Users,for
列:[org.hibernate.mapping.Column(角色)]
这是我当前的代码,我不明白为什么我会收到这个错误
@Entity
@Table(name="Users")
public class UserEntity extends BaseEntity {
/**
*
*/
private static final long serialVersionUID
UserFullTest有一个associatedTestContentElementResponses的集合
每个TestContentElementResponse依次有一个关联ResponseAttributes的集合
我想在一次提取中提取所有数据
这是我的密码:
Session session = this.sessionFactory.getCurrentSession();
Criteria c=session.createCriteria(User
(我将在示例中使用Groovy/Grails语法)
在hibernate中,当加载一个实体时,它们被保存在会话缓存/L1中,问题是如果在会话之外更改它们,即使我通过GORM方法重新查询它们,它们也不会被引用。这就是我使用refresh()的原因
(以下所有操作均在一个会话中完成。)
还有别的办法吗
这意味着我必须查询两次,以确保第二笔交易的值正确。是
只需放下刷新按钮:
User.withNewTransaction {
user = User.findById(1L) //user = U
由于JBPM的默认配置指向H2数据库(这是不推荐的),因此我尝试将JBPM配置为使用Oracle数据库进行持久化
我尝试了以下链接:
我尝试部署jbpm-console.war时遇到以下异常。有人能解释一下吗
[org.jbpm.shared.services.impl.TransactionalCommandService] (EJB default - 3) Could not commit session: javax.persistence.PersistenceException:
SpringBoot/JPA/Hibernate的新手,我正在尝试理解该属性的实际功能
根据该文件,它:
“…指示在使用@GeneratedValue时如何生成标识列或序列列”
但它并不能真正解释当它的true与false时的行为差异。有什么想法吗
默认情况下,“hibernate.id.new_generator_mappings”为false,它使用“SequenceHilgenerator”,它将具有该乘法行为。一旦我们将其设置为true,它将使用“SequenceStyleGenerat
我想在我的实体中嵌入一个对象。即,我希望该类型与MyEntity位于同一表格中
@Entity
public class MyEntity<T extends MyType> {
@Id
long id;
@Any(metaColumn = @Column(name = "MY_TYP"))
@AnyMetaDef(
idType = "integer",
metaType = "string",
me
我最近刚开始在冬眠时弄湿脚。我一直在关注关于hibernate的在线hibernate教程。在本课程中,创建了两个类;用户详细信息,地址。UserDetails类使用@Entity注释,而Address类使用@Embeddeble注释
与其在UserDetails类中使用@GenericGenerator和@CollectionId注释创建主键“ADDRESS_ID”,不如在ADDRESS类中声明一个实例变量(private int ADDRESS_ID)更简单、更实用,并使用@Id@Gener
我有点像这样的问题:
我可以按照这样的步骤来做
<dependency>
<groupId>javax.transaction</groupId>
<artifactId>javax.transaction-api</artifactId>
<version>1.2</version>
</dependency>
<dep
我有两张桌子。一个是主键,另一个是复合键
表a:
@Entity
@Table(name = "TableA")
public class TableA {
@Id
@Column(name = "myId")
private Long id;
@Column(name = "myName")
private String name;
@Column(name = "myRegion")
private String regionNa
我正在努力处理MySQL数据库查询,希望你能帮助我。
该示例是抽象的,因为问题在于查询:
POJO:
class Parent
{
List<Child> children;
}
class Child
{
Integer id;
}
类父类
{
列出儿童名单;
}
班童
{
整数id;
}
现在我想找到所有没有孩子的父母
比如:
List findByChildrenNotIn(List childs);
或
@Query(“从父p中选择p”
+“左外连接p.c”
+“
我有电影课和演员课。我已经将这些实体映射为一部电影,反之亦然,一部电影可以有很多演员。Crnk正在创建端点,它们工作得很好,除了Actor上关系下的链接之外,它还创建了一个位于Actor端点下的URL,而实际上它应该返回到根电影URL
因此,在Actors下,findAll relationships.movie.links.related应该是:
相关:/api/v1/movies/1
而不是
相关:/api/v1/actors/156/电影
对自己来说也是如此
芬德尔终点电影
参与者find
我正在尝试使用hibernates@query参数获取半径范围内的位置
@Query("SELECT id, (6371 * acos (cos(radians(:latitude)) * cos(radians(latitude)) * cos(radians(longitude) - radians(:longitude)) + sin(radians(:latitude)) * sin(radians(latitude)))) AS distance FROM gang HAVING d
我正在将一个旧的Spring应用程序转换为Spring boot。因此,我仍将使用现有的xml配置,而不是注释。在appContext.xml中,我将hibernate属性配置为从应用程序属性中读取,如下所示
<bean id="appSessionFactory"
class="org.springframework.orm.hibernate5.LocalSessionFactoryBean">
<property name="dataSource" ref