休眠ID生成器(Hibernate ID Generator)

任何人都知道一些关于如何为休眠创建自定义ID生成器的很好的教程?


Anyone know of some good tutorials on how to create a custom ID generator for hibernate?


原文:https://stackoverflow.com/questions/495536
2023-12-31 21:12

满意答案

您可以使用带JAXB的XmlAdapter来处理不可变对象:


You can use an XmlAdapter with JAXB to handle immutable objects:

相关问答

更多

使用构建器模式编组不可变对象的最佳方法(best approach for marshaling unmarshaling immutable objects with builder pattern)

您可以使用带JAXB的XmlAdapter来处理不可变对象: http://bdoughan.blogspot.com/2010/12/jaxb-and-immutable-objects.html You can use an XmlAdapter with JAXB to handle immutable objects: http://bdoughan.blogspot.com/2010/12/jaxb-and-immutable-objects.html

如何指定JAXB用于封送/解组数据的适配器?(How do I specify the adapter(s) which JAXB uses for marshaling/unmarshaling data?)

尝试这个 <jaxb:javaType name="int" parseMethod="Integer.decode" printMethod="Integer.toHexString"/> 我还没有测试过,但我记得使用了非常相似的东西。 Try this <jaxb:javaType name="int" parseMethod="Integer.decode" printMethod=...

C#中的不可变对象模式 - 你觉得怎么样?(Immutable object pattern in C# - what do you think? [closed])

对于信息,第二种方法被称为“冰棒不变性”。 Eric Lippert从这里开始有一系列关于不变性的博客条目。 我仍然需要掌握CTP(C#4.0),但它看起来很有趣,可选/命名参数(.ctor)可能在这里(当映射到只读字段时)... [更新:我已经博客在这里 ] 对于信息,我可能不会使这些方法virtual - 我们可能不希望子类能够使其不可冻结。 如果您希望他们能够添加额外的代码,我会建议如下: [public|protected] void Freeze() { if(!frozen) ...

最佳方法(模式?)从不同的资源创建视图对象(Best approach (pattern?) to create view objects, from different resources)

如果在创建对象之前拥有所有可用的资源,那么使用工厂就可以为您工作 - 只需将它们传递给工厂方法即可,它将发挥魔力。 如果您正在创建的对象(视图)是按步骤创建的 - 即首先您只有searchResult ,然后再挖掘更多并获取一些额外的URL添加到视图中,然后再进一步搜索以获取更多信息,只有当你想获得视图对象时,构建器才是更好的解决方案。 Using a factory will work for you if you have all of the resources available befo...

为java不可变对象实现Groovy构建器的最佳方法(The best way to implement Groovy builder for java immutable object)

不是真正的构建器,但只要它有一个可以将List项作为参数的构造函数,就可以强制List为您的类型: def entity = [ 'hi', 'hej' ] as Entity 如果您的类型具有带2个字符串的构造函数,则此方法有效。 由于您的类型没有setter,Groovy无法猜测哪个参数具有哪个名称,因此无法自动生成构建器。 但是,您可以手动编写一些代码来实现一些不错的代码。 例如: @Builder class GroovyEntity { String field1 St...

如何使用包含所有参数的构建器模式?(How to use builder pattern with all parameters as mandatory? [duplicate])

当有许多不同的有效参数排列允许您创建对象时,Builder模式会发光。 如果没有Builder模式,您将被迫创建许多丑陋且令人困惑的构造函数来处理所有可能的有效参数组合。 但在您的情况下,只有一组有效的参数可以让您创建对象。 这正是构造函数的用途。 在这里使用Builder模式不仅仅是矫枉过正,它根本就不合适。 只需为ResponseHolder类使用普通构造函数即可。 The Builder pattern shines when there are many different valid p...

我应该在DTO中使用构建器模式吗?(Should i use builder pattern in DTO?)

我的简短回答是,这是一个偏好问题。 如果您喜欢Builder Pattern的工作方式,请应用它。 对于这么小的案例,我认为无论如何都不重要。 我个人的偏好是不在这里使用Builder,因为它似乎没有增加太多价值。 我更长的答案是,Builder Pattern旨在简化复杂对象的配置,而不需要像伸缩构造函数那样使用反模式。 在这种情况下,在任何一种情况下都没有反模式; 两种选择都相对较小且有效。 虽然我们在谈论偏好,但我更喜欢使用流畅界面的修改版本的构建器模式; 每个方法返回Builder的实例,...

如何在ObjC中创建一个不可变对象和一个Builder模式?(How to creating an immutable object along with a Builder pattern in ObjC?)

您在上面发布的链接使用两个对象来实现构建器模式。 一个专用的构建器对象,随后传递给create/build方法,返回要构建的对象。 这是一个使用不可变对象实现构建器模式的完全人为的示例。 首先让我们创建一个不可变对象; 将由构建器对象构建的对象。 @interface Person: NSObject @property (nonatomic, readonly) NSString *firstName; @property (nonatomic, readonly) NSString *las...

不可变对象构建器(Immutable objects builder)

如果重复使用Builder构建第二个实例会发生什么? 然后,第一个实例中的Builder将生成类似于第二个实例的实例。 可能不是你的预期。 我建议使用模板实例创建Builder的选项。 public Builder(NutritionFacts template) { this.servingSize = template.getServingSize(); ... } What happens if you reuse the Builder t...

具有嵌套对象和构建器的不可变值对象(Immutable value objects with nested objects and builders)

使用Rebindable解决方案是可以的,我认为这是实现此目标的最佳方式。 另一个可能的解决方案是使嵌套_可变并使用强制转换,但这不是那么优雅和安全: class Builder { import std.typecons : Rebindable; union { private Nested m_nested_; immutable(Nested) nested_; } this() { this...

相关文章

更多

分布式ID生成器【snowflake雪花算法】

基于snowflake雪花算法分布式ID生成器 snowflake雪花算法分布式ID生成器几大特点: ...

hibernate id 生成策略及主要使用方法

hibernate主键策略生成器 hibernate提供多种主键生成策略,有点是类似于JPA,有的是h ...

配置solr自动生成id

schema.xml ======================================== ...

solr4.0 id 自动生成

一、配置schema.xml文件 1、添加fieldType &lt;types&gt; & ...

MongoDB _id和ObjectId详解

在创建一个文档的时候,会生成一个_id,id的默认类型是ObjectId,如: &gt; db. ...

solr required field: id

为了和以前的程序兼容,在solr建立索引的时候,将id设为gid,结果在建立索引时候出现如下错误: o ...

js 通过td的id值 如何拿到tr的id值?

有以下代码:&lt;tr id=&quot;bb&quot;&gt;&lt;td id=&quot;a ...

html中一个div的id是“1:222”的话,怎么利用id给它定义css啊?

如 &lt;style&gt; #1:2{ height:100px; width:100px ...

Solr4.0 如何配置使用UUID自动生成id值

最近学习了Lucene,随便也学习了Solr,Solr规定每一条记录必须有一个主键值,用来唯一标识一条 ...

最新问答

更多

获取MVC 4使用的DisplayMode后缀(Get the DisplayMode Suffix being used by MVC 4)

我用Google搜索了一个解决方案。 “EnumDisplayModeProvider”是我自己设置网站的各种模式的枚举。 public EnumDisplayModeProvider GetDisplayModeId() { foreach (var mode in DisplayModeProvider.Instance.Modes) if (mode.CanHandleContext(HttpContext)) {

如何通过引用返回对象?(How is returning an object by reference possible?)

这相对简单:在类的构造函数中,您可以分配内存,例如使用new 。 如果你制作一个对象的副本,你不是每次都分配新的内存,而是只复制指向原始内存块的指针,同时递增一个也存储在内存中的引用计数器,使得每个副本都是对象可以访问它。 如果引用计数降至零,则销毁对象将减少引用计数并仅释放分配的内存。 您只需要一个自定义复制构造函数和赋值运算符。 这基本上是共享指针的工作方式。 This is relatively easy: In the class' constructor, you allocate m

矩阵如何存储在内存中?(How are matrices stored in memory?)

正如它在“熵编码”中所说的那样,使用Z字形图案,与RLE一起使用,在许多情况下,RLE已经减小了尺寸。 但是,据我所知,DCT本身并没有给出稀疏矩阵。 但它通常会增强矩阵的熵。 这是compressen变得有损的点:输入矩阵用DCT传输,然后量化量化然后使用霍夫曼编码。 As it says in "Entropy coding" a zig-zag pattern is used, together with RLE which will already reduce size for man

每个请求的Java新会话?(Java New Session For Each Request?)

你是如何进行重定向的? 您是否事先调用了HttpServletResponse.encodeRedirectURL()? 在这里阅读javadoc 您可以使用它像response.sendRedirect(response.encodeRedirectURL(path)); The issue was with the path in the JSESSIONID cookie. I still can't figure out why it was being set to the tomca

css:浮动div中重叠的标题h1(css: overlapping headlines h1 in floated divs)

我认为word-break ,如果你想在一个单词中打破行,你可以指定它,这样做可以解决问题: .column { word-break:break-all; } jsFiddle演示。 您可以在此处阅读有关word-break属性的更多信息。 I think word-break, with which you can specify if you want to break line within a word, will do the trick: .column { word-break

无论图像如何,Caffe预测同一类(Caffe predicts same class regardless of image)

我认为您忘记在分类时间内缩放输入图像,如train_test.prototxt文件的第11行所示。 您可能应该在C ++代码中的某个位置乘以该因子,或者使用Caffe图层来缩放输入(请查看ELTWISE或POWER图层)。 编辑: 在评论中进行了一次对话之后,结果发现在classification.cpp文件中错误地删除了图像均值,而在原始训练/测试管道中没有减去图像均值。 I think you have forgotten to scale the input image during cl

xcode语法颜色编码解释?(xcode syntax color coding explained?)

转到: Xcode => Preferences => Fonts & Colors 您将看到每个语法高亮颜色旁边都有一个简短的解释。 Go to: Xcode => Preferences => Fonts & Colors You'll see that each syntax highlighting colour has a brief explanation next to it.

在Access 2010 Runtime中使用Office 2000校对工具(Use Office 2000 proofing tools in Access 2010 Runtime)

你考虑过第三方拼写检查吗? 您可以将在C#中开发的自定义WinForms控件插入访问数据库吗? VB6控件怎么样? 如果你能找到一个使用第三方库进行拼写检查的控件,那可能会有效。 Have you considered a third party spell checker? Can you insert a custom WinForms controls developed in C# into an access database? What about a VB6 control? If

从单独的Web主机将图像传输到服务器上(Getting images onto server from separate web host)

我有同样的问题,因为我在远程服务器上有两个图像,我需要在每天的预定义时间复制到我的本地服务器,这是我能够提出的代码... try { if(@copy('url/to/source/image.ext', 'local/absolute/path/on/server/' . date("d-m-Y") . ".gif")) { } else { $errors = error_get_last(); throw new Exception($err

从旧版本复制文件并保留它们(旧/新版本)(Copy a file from old revision and keep both of them (old / new revision))

我不确定我完全明白你在说什么。 你能编辑你的帖子并包含你正在做的Subversion命令/操作的特定顺序吗? 最好使用命令行svn客户端,以便容易为其他人重现问题。 如果您只是想获取文件的旧副本(即使该文件不再存在),您可以使用如下命令: svn copy ${repo}/trunk/moduleA/file1@${rev} ${repo}/trunk/moduleB/file1 其中${repo}是您的存储库的URL, ${rev}是您想要的文件的版本。 这将恢复该文件的旧版本,包括最高版本