锁定老帖子 主题:讨论一下ORM中的自定义类型有用么?
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-04-07
个人感觉自定义类型没什么大用处,在处理数据的时候过分的OO反而会带来不必要的复杂性,因为你要操纵的数据库本来就是关系型的,没有必要追求完美的OO,不知道各位的意见呢? 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-04-07
也要给用oo数据库的一条路嘛!
|
|
返回顶楼 | |
发表时间:2008-04-07
User Type是根据具体的需求来的。
比如说,一个User有很多个Email,但是有多少个并不确定。这种情况下,我们有2种设计:第一种,设计一张User_Email表,与User表形成多对一的关系。还有一个种,在User表中增加一个字段,这个字段表示Email,多个Email数据之间用分号隔开进行存储。 这两种设计都是ok的,显然后面一种违反了所谓的范式,不过有时候可能为了性能等原因,我们也会采取后面一种方式,因为它简单易用,查询时无需对字表进行关联查询。在这种情况下,如果我们使用Hibernate的User Type,可以把这样的一个字段映射成Java中的List<String>,然后由ORM框架来帮你做底层的类型转化与处理。这样显然会方便很多。不过User Type的缺点就是该字段无法进行精确的Query查询,所以也需要在设计时加以考虑。 |
|
返回顶楼 | |
发表时间:2008-04-08
还是觉得没用
|
|
返回顶楼 | |
发表时间:2008-04-08
kenees 写道 还是觉得没用
可以讨论一下,针对我上面说的,email个数不定的场景。如果你用ORM,如何设计。直接说没用,我也不知道你的理由是什么。 |
|
返回顶楼 | |
发表时间:2008-04-08
自定义类型基本没用
|
|
返回顶楼 | |
发表时间:2008-04-08
downpour 写道 kenees 写道 还是觉得没用
可以讨论一下,针对我上面说的,email个数不定的场景。如果你用ORM,如何设计。直接说没用,我也不知道你的理由是什么。 就你所说的问题,正如你说的一个one-to-many就解决了,所有的ORM都完美的支持,何必那么复杂呢?你可以利用user specified type做到看起来pure OO,但是有时候,实践中,没有意义,除非你是疯狂的OO粉丝,呵呵,你觉得呢 |
|
返回顶楼 | |
发表时间:2008-04-08
theone 写道 自定义类型基本没用
呵呵,同感,所以对ORM有兴趣的人,了解一下就好 |
|
返回顶楼 | |
发表时间:2008-04-08
kenees 写道 首先声明,这是一个纯粹的讨论帖子,没有别的冒犯的意思。
个人感觉自定义类型没什么大用处,在处理数据的时候过分的OO反而会带来不必要的复杂性,因为你要操纵的数据库本来就是关系型的,没有必要追求完美的OO,不知道各位的意见呢? 关系型数据驱动与面向OO开发是思想的转变,思想的转变是最难的。做了几年的JDBC的老程序员,一面要努力接受新知识,另一面又要与强大的惯性做斗争,很痛苦。 现在的项目在用JPA(HB),感觉并没有简化我的开发,也并没有减 少我的学习成本。。。不知道是不是又被SUN忽悠了。 |
|
返回顶楼 | |
发表时间:2008-04-08
JPA的单元测试还好说,但EJB3带注入的测试就麻烦了,
SUN鼓吹EJB3 POJO式简单开发怎么我做起来还是很麻烦。 |
|
返回顶楼 | |