草庐IT

hibernate-validator

全部标签

ruby-on-rails - “validates_presence_of”在 Mongoid 中效果不佳?

有两个类:classPersonincludeMongoid::Documentfield:nameembeds_many:addressesendclassAddressincludeMongoid::Documentfield:cityfield:streetvalidates_presence_of:city,:streetend我们可以看到,我们已经验证了city和street应该存在。但是看下面的代码:person=Person.newperson.addressestrue并且,我们使用mongo直接查看数据库:$mongo>usethe_db>db.people.find

如何正确使用 Bean Validation 进行数据校验

一、背景在前后端开发过程中,数据校验是一项必须且常见的事,从展示层、业务逻辑层到持久层几乎每层都需要数据校验。如果在每一层中手工实现验证逻辑,既耗时又容易出错。图片为了避免重复这些验证,通常的做法是将验证逻辑直接捆绑到领域模型中,通过元数据(默认是注解)去描述模型,生成校验代码,从而使校验从业务逻辑中剥离,提升开发效率,使开发者更专注业务逻辑本身。图片在Spring中,目前支持两种不同的验证方法:SpringValidation和JSR-303BeanValidation,即 @Validated(org.springframework.validation.annotation.Valida

java - Hibernate 不连接 MySql

停留在这个地方我是hibernate的新手,在观看教程后制作了一个示例代码但是我被困在将hibernate与MySql连接起来。这里是hibernate.cfg.xml放在源码文件夹中.-->com.mysql.jdbc.Driverjdbc:mysql://localhost:3306/testrootroot1org.hibernate.dialect.MySQLDialectthreadorg.hibernate.cache.internal.NoCacheProviderthreadtruecreate这是我的HibernateTest.java文件packagecom.jav

java - 在 Spring 中将正则表达式查询与 hibernate 一起使用

我能够在查询浏览器(我的sql)中触发查询并能够像下面这样检索记录SELECT*FROMdetailsWHEREtitleREGEXP'dem';但是当我在服务器端使用类似类型的代码时,我会给出错误作为意外标记:REGEXP网上查了下好像是hibernate不支持REGEXP。但也给出了一些与此无关的解决方案。我只需要在hibernate状态下通过查询来处理这个问题。sbQuery.append("selectdistinctidfromdeatilid");sbQuery.append("where((id.titlelike:keyword)OR(id.descriptionlik

java - 在 hibernate jpa OneToOne 关系中的 db 表上添加了额外的列

我在OneToOne关系上有三个实体类Product->SkuImpl->SkuAvailabilityImpl我只需要添加一个产品,所以记录是插入sku表同时插入SkuAvailability表SkuImpl.java@EntitypublicclassSkuImplimplementsSku{@OneToOne(targetEntity=SkuAvailabilityImpl.class,cascade={cascadeType.ALL},fetch=FetchType.EAGER)@Cache(usage=CacheConcurrencyStrategy.READ_WRITE)@

java - 使用 hibernate 条件 hibernate 组中的最后一条记录

我有一个包含以下字段的表:ID(唯一)、类型、值和创建日期数据类型分别为uniqueidentifier、varchar和datetime。示例数据:IDtypevaluecreateddateui1field1value12016-02-1316:39:21.100ui2field1value22016-02-2018:00:00.100ui3field2value32016-02-1316:39:21.200ui4field2value42016-02-2018:00:00.200我需要检索每种类型的最新值记录。因此预期的结果应该是这样的:IDtypevaluecreateddat

java - 为什么 hibernate 在不同的 JVM 实例中为相同的查询创建不同的列别名?

当我在我的Java应用程序中监视hibernate生成的SQL查询时,查询中使用的每个列都有列别名。但是对于不同的JVM实例,列别名以不同的数字作为后缀。例如:selectuser0.IDasID1_276_,user0.DESCRIPTOR_IDasDESCRIPTOR10_276_,user0.USER_IDasUSER11_276_fromCI_USERuser0where...但当应用程序重新启动时,别名列中的后缀不断变化。我不确定这些后缀的逻辑或公式究竟是什么,即_276_。有时,相同的查询会显示如下内容:selectuser0.IDasID1_144_,user0.DESC

spring6-国际化:i18n | 数据校验:Validation

文章目录1、国际化:i18n1.1、i18n概述1.2、Java国际化1.3、Spring6国际化1.3.1、MessageSource接口1.3.2、使用Spring6国际化2、数据校验:Validation2.1、SpringValidation概述2.2、实验一:通过Validator接口实现2.3、实验二:BeanValidation注解实现2.4、实验三:基于方法实现校验2.5、实验四:实现自定义校验1、国际化:i18n1.1、i18n概述国际化也称作i18n,其来源是英文单词internationalization的首末字符i和n,18为中间的字符数。由于软件发行可能面向多个国家,

java - 无法为 XAMPP 和 Eclipse IDE 创建请求的服务 [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment]

我正在使用XAMPP服务器和EclipseIDE来运行hibernate程序。但是我收到以下错误:**Apr21,201712:46:38PMorg.hibernate.VersionlogVersionINFO:HHH000412:HibernateCore{5.2.8.Final}Apr21,201712:46:38PMorg.hibernate.cfg.EnvironmentINFO:HHH000206:hibernate.propertiesnotfoundApr21,201712:46:38PMorg.hibernate.annotations.common.reflecti

java - 为什么 load() 的工作方式与 Hibernate 中的 get() 相同?

我正在尝试以这种方式更新实体字段:SessionFactoryfactory=HibernateUtil.getSessionFactory();Sessionsession=factory.openSession();session.beginTransaction();Useruser=session.load(User.class,4);user.setName("Bober11");session.getTransaction().commit();session.close();我在想,在这种情况下,Hibernate会在不点击它的情况下更新表中的行(我的意思是,没有选择),