现在开源的各种framework非常的多。干什么的都有。但是,是不是我们使用了这些开源framework就能够一劳永逸的解决我们的设计问题呢?我觉得答案是否定的。如果没有自己对设计和系统的理解。框架滥用就在所难免。比如说hibernate(以下简称HI),它是一个对象持久框架,他的目的非常的简单,就是提供对象持久化的手段。但是在日常的工作中,我经常看见很多人把HI用的非常的复杂,希望用HI实现一些复杂的数据库查询,似乎把HI看作了一个数据库抽象层了。使用HI,却永远不忘记SQL。我觉得这是不正确的。虽然HI的本质是ORM。但是它可不是用来替换数据库的。不要把HI当作数据库一样去操作。在设计的时 ...
我们知道,AOP实现,一般要尽可能的透明化。业务类是不管这些切面的。实现的方法,一般都是拦截器,或者类似AspectJ那样的代码生成工具。如果使用动态代理,直接写的话,会使代码很丑陋。我宁可采用别的方法实现。除非实现某个规则约束。但是这样的话就不透明了。所以,生成代码的模式更好一些。
但是我们在程序里面生成代码,似乎是一件比较奇怪的事情。就好像我们在干jvm干的活。感觉有些怯怯的。想和大家讨论一下。听听大家的意见。另外AOP还有什么实现原理呢?
另外,使用动态代理似乎效率不是很高。
- 浏览: 98 次
- 性别:

- 来自: 西安

- 详细资料
搜索本博客
最近加入圈子
最新评论
-
使用java动态代理机制实现 ...
利用SPRING2.5的ANNOTATION方式实现AOP,这个够不够优雅? ...
-- by kv0002 -
使用java动态代理机制实现 ...
clarkhill 写道 我把代码贴下来:这段代码是实现了Invocati ...
-- by spiritfrog -
不要让开源架构代替我们的 ...
引用我们应该在我们的设计中对引入的框架部分做我们自的接口,这样就可以摆脱框架侵入 ...
-- by lakemove -
不要让开源架构代替我们的 ...
看到有人说我对hi的理解有问题。汗一个。不是我对hibernate的理解有问题。 ...
-- by clarkhill -
不要让开源架构代替我们的 ...
晕倒,我们是产品的公司,我们的产品确实需要在不同数据库上跑,这个是需求。我们怎么 ...
-- by slaser






评论排行榜