由买买提看人间百态

topics

全部话题 - 话题: aops
首页 上页 1 2 3 4 5 6 7 8 9 10 下页 末页 (共10页)
a****i
发帖数: 1182
1
扣字眼?
springMVC + spring里后面的spring又是什么?
core? beans? aop? context? oxm? orm? tx?
如果你认为spring包括了其他的,为什么就不能包括 web和webmvc?
顺便跟lz提一下,看jsf吧,比struts有前途
T*********g
发帖数: 496
2
来自主题: Java版 - spring到底有什么好处?
一个简单的例子。
我现在用mysql做数据库,过两年业务扩大了,我想用oracle。如果是spring based
app,我只需要简单的配置一下就解决问题了。Oracle的相关代码我可以请以的注入到
需要的spring bean里。
还有就是spring整合了很多开源框架,提供了AOP的实现等功能,所以很有用。
g*****g
发帖数: 34805
3
来自主题: Java版 - spring到底有什么好处?
Exactly. IoC and AOP are the core of spring. It also uses a consistent
interface to integrate with all mainstream frameworks, which not only
minimizes vendor lockin, but also make your knowledge reusable with new
territory.
k********e
发帖数: 368
4
来自主题: Java版 - spring到底有什么好处?
简单的说:spring的精髓是IOC,AOP.
但实际中这种思想并不需要每行代码都要用,而是基于这两种思想而建立起来的spring
framework,让你的工作极其简单。不再需要写多余的代码,transaction,service
component,security, DAO, 等都直接可以用annotation标注,你就直接考虑自己的业
务逻辑而已。 那些数据库,安全,事物等都有spring来负责维持和注入。
相反,在此之前,60-80%的代码都是那些可以使用spring annotation可以解决的。
用习惯了,如果在回到老J2EE,感觉是有汽车不开,继续用老牛拉车。
F****n
发帖数: 3271
5
来自主题: Java版 - spring到底有什么好处?
AOP是后来才流行的,一开始属于buzz word, 真正用的不多
JDBCTemplate这些和IoC一样,一般做的早的公司都有自己的Tool
并不会因为这个积极的转到Spring
b**L
发帖数: 646
6
来自主题: Java版 - AOP 中的 self-invocation 问题
谢谢totempole。
找到一个workaround 的方法了。
就是在class 里设一个指向自己的instance field. 在this.func() 的地方改成
instance.func().

class
time
t***a
发帖数: 416
7
spring的transaction manager其实就是个可配置的aop加try catch, 它具体操作比如
commit和rollback都是调用jdbc(如果你用的是jdbc transaction), 而jdbc是薄薄的一
层,它只是去调用数据库的transaction的那几条语句而已
x****d
发帖数: 1766
8
Spring/CDI, JPA/Hibernate/ibatis, webframeworks/JSF/SpringMVC/Struts/Vaadin/
Play, JQuery(not java, but almost a must if you want to be web developer),
AOP(you need to know). restlet(if you want to do rest API development)
basically, web mvc, persistence, web service. Spring is a must, but you dont
start from spring. You can start from spring mvc, then connect to database
with JDBC, then you learn hibernate/JPA, then use spring to enhance what you
have. 2 or 3 months, you would have a solid java... 阅读全帖
z*******3
发帖数: 13709
9
来自主题: Java版 - 不明白Spring Framework很正常
是不难理解
难搞的是aop
di和ioc超简单
p*****2
发帖数: 21240
10
来自主题: Java版 - 不明白Spring Framework很正常

好。再翻翻spring吧。其实以前稍微翻了一下。看了看IOC,AOP的概念。
t***a
发帖数: 416
11
我觉得核心是spring的flexible, 你可以用pojo,也可以不用,你可以用aop,也可以
不用,用也可以多种用法, 不喜欢所有东西都有interface, 可以用cglib。bean的生存
周期,注入关系也很灵活.

POJO
z*****5
发帖数: 1871
12
spring的aop设计起来还蛮有学问的
g*****g
发帖数: 34805
13
你见过几个写C++的懂IoC, AOP的?这些是spring的核心。Spring是最常见的框架之一
了吧。
k****i
发帖数: 101
14
来自主题: Java版 - 问下Java开源平台趋势

can
Exactly. Spring's composable stack is a buy to me.
是指同一webapp中混用spring-ioc-aop,jee-cdi-ejb吗?
g*****g
发帖数: 34805
15
来自主题: Java版 - 请教framework
At the core of spring, it's IoC and AOP. You probably want to learn these
two before moving on to others.
Y********f
发帖数: 410
16
来自主题: Java版 - java的东西好多
8年的C/C++经验,最近改用java,感觉东西好多啊,语言本身问题不大,google一下就
差不多了。但是到framework这块彻底晕菜了,一堆的概念,什么Ioc,AOP,bean, EJB
, POJO还有一堆的设计模式。有啥好的文档看看?
z****e
发帖数: 54598
17
不过每次处理log,我都会感慨,aop要是被用上了
将会多么简单
p*****3
发帖数: 488
18

说说为什么AOP用上了就简单了??
z****e
发帖数: 54598
19
你居然不知道
去看aspectj或者spring aop随便研究一个example就懂了
z****e
发帖数: 54598
20
我看他们用了spring
直接在spring上加aop就好了
这样就不需要重写代码了
旧的log照用不误
这样还可以避免跟同组的人一起checkin代码
n******1
发帖数: 3756
21
来自主题: Java版 - 这样理解spring的AOP
就是类似数据库里的触发器的作用?
w**z
发帖数: 8232
22
来自主题: Java版 - 这样理解spring的AOP
老赵喜欢用
n******1
发帖数: 3756
23
来自主题: Java版 - 这样理解spring的AOP
S*******C
发帖数: 822
24
MVC
ORM
Factory
Front controller
DAO
AOP
Adapter
还有不少
S*******C
发帖数: 822
25
还有proxy, Template
AOP应该不是design pattern
s****l
发帖数: 600
26
来自主题: Java版 - a dump method in Java
aop?

I
most
there
N*n
发帖数: 456
27
来自主题: Java版 - a dump method in Java
AOP?
Aspect Oriented Programming?
First time knowing it..
z****e
发帖数: 54598
28
来自主题: Java版 - spring解决了什么问题?
你弄了太多components了
spring就一个spring core就好了
其他的不管
dependency用maven解决
核心就是ioc,ioc理解起来很容易的
aop我怀疑你用不用
z*******3
发帖数: 13709
29
可以不用了
学其他的去吧
spring真不需要投入多少时间
ioc和aop搞懂,可以了
g*****g
发帖数: 34805
30
来自主题: Programming版 - How to intercept a method call (转载)
You can use AOP for that, this is Proxy Pattern.
g*****g
发帖数: 34805
31

't
Since JIT operates at runtime, it can get dynamic information that's not
available in compile time. e.g. JIT can detect a section that's hot and
do some optimization like inlining, or move code out of loop. That's not
saying well tuned C++ code won't be on par or better, but it can easily
outperform untuned C++ code in many cases.
same
This is a big deal. It makes it very easy to communicate between
servers or client/server. It also makes it possible to discover
service/interface in runtime.... 阅读全帖
n*w
发帖数: 3393
32
来自主题: Programming版 - C# is light-years ahead of Java now
Curiously what you use aop for?
Which framework you use?
g*****g
发帖数: 34805
33
来自主题: Programming版 - 为什么大家都说c++水很深?
没跑过几百个节点的集群,还是不要谈什么高性能了吧。单个节点Java对比C++代码,
确实性能有差距。但商业逻辑一复杂,用户一多,很多东西C++根本实现不了,因为指
针的存在可靠性也远不如Java。这年头就没多少Server应用是用C++写的,web, mobile
,千万用户的Server应用比比皆是,用的最多的就是Java。客户端能需要多高的性能?
还拿来举例子。
C++没有的类库多了。Java常见的比如IoC, AOP,ORM,几乎每个J2EE应用都有的。由于
C++没有标准的
Serialization和reflection都没法实现。Apache的top level project,一多半你都找
不到C++的实现。
http://projects.apache.org/indexes/quick.html
g*****g
发帖数: 34805
34
来自主题: Programming版 - 为什么大家都说c++水很深?
您老不知所云,我提的IOC, AOP, ORM,你找出来了吗?Google Search是一个计算复杂
而非逻辑复杂的应用,而且起步的时候Java还什么都不是。论Scalablity,现有的应用
里,Twitter大约是峰值负荷最高的。用户数多而且有关联,支持实时搜索。不像
Google search的内容不需要实时,数据可以复制,用户之间相互不影响。Ebay和
Amazon是用户数多而且需要
支持transaction的大型系统,相似级别的应用,不仅C++没有,C#也没有。我提的这些
都是Java或者JVM语言为主的混合应用。
所有的大型系统,最关键的在于数据库的处理。如果你要跟我讨论Scalability,我建
议你
先学习一下什么叫做CAP theorem。你举的例子就说明你在这方面完全没有经验。

么?
h********3
发帖数: 2075
35
来自主题: Programming版 - 为什么大家都说c++水很深?
在scalability方面,你只需要知道hadoop是Java写的,足够了。至于Facebook。
facebook几乎可以是hadoop的最大用户。facebook的数据都是存在hdfs上的。在
facebook跑的大部分数据处理,都要经过他们的hadoop那层。
其实很多人并不知道Java相当于C++的真正优势在哪里。优势并不是在语言,而是JVM这
个虚拟层。简单来说,有了这个虚拟层,可以很容易实现反射和跨平台。不要小瞧这两
个特点。特别是反射,它是动态语言的根本,不只是一个小功能那么简单,现在已经是
演变成为一种新的软件设计思想。这就是为什么之前说的,大部分C/C++程序员都无法
真正理解IoC,AOP这些。
总归而言,Java相对于C/C++来说优势主要就是在于简化设计思想。而人力成本远高于
机器成本,所以Java用得最广。

么?
g*****g
发帖数: 34805
36
来自主题: Programming版 - 为什么大家都说c++水很深?
没跑过几百个节点的集群,还是不要谈什么高性能了吧。单个节点Java对比C++代码,
确实性能有差距。但商业逻辑一复杂,用户一多,很多东西C++根本实现不了,因为指
针的存在可靠性也远不如Java。这年头就没多少Server应用是用C++写的,web, mobile
,千万用户的Server应用比比皆是,用的最多的就是Java。客户端能需要多高的性能?
还拿来举例子。
C++没有的类库多了。Java常见的比如IoC, AOP,ORM,几乎每个J2EE应用都有的。由于
C++没有标准的
Serialization和reflection都没法实现。Apache的top level project,一多半你都找
不到C++的实现。
http://projects.apache.org/indexes/quick.html
g*****g
发帖数: 34805
37
来自主题: Programming版 - 为什么大家都说c++水很深?
您老不知所云,我提的IOC, AOP, ORM,你找出来了吗?Google Search是一个计算复杂
而非逻辑复杂的应用,而且起步的时候Java还什么都不是。论Scalablity,现有的应用
里,Twitter大约是峰值负荷最高的。用户数多而且有关联,支持实时搜索。不像
Google search的内容不需要实时,数据可以复制,用户之间相互不影响。Ebay和
Amazon是用户数多而且需要
支持transaction的大型系统,相似级别的应用,不仅C++没有,C#也没有。我提的这些
都是Java或者JVM语言为主的混合应用。
所有的大型系统,最关键的在于数据库的处理。如果你要跟我讨论Scalability,我建
议你
先学习一下什么叫做CAP theorem。你举的例子就说明你在这方面完全没有经验。

么?
h********3
发帖数: 2075
38
来自主题: Programming版 - 为什么大家都说c++水很深?
在scalability方面,你只需要知道hadoop是Java写的,足够了。至于Facebook。
facebook几乎可以是hadoop的最大用户。facebook的数据都是存在hdfs上的。在
facebook跑的大部分数据处理,都要经过他们的hadoop那层。
其实很多人并不知道Java相当于C++的真正优势在哪里。优势并不是在语言,而是JVM这
个虚拟层。简单来说,有了这个虚拟层,可以很容易实现反射和跨平台。不要小瞧这两
个特点。特别是反射,它是动态语言的根本,不只是一个小功能那么简单,现在已经是
演变成为一种新的软件设计思想。这就是为什么之前说的,大部分C/C++程序员都无法
真正理解IoC,AOP这些。
总归而言,Java相对于C/C++来说优势主要就是在于简化设计思想。而人力成本远高于
机器成本,所以Java用得最广。

么?
z*******3
发帖数: 13709
39
修改得不多
比如增减fields就不能实现
增减方法也不行,唯一能动态增加方法的是用aop来实现
用spring或者aspectj
可以改变private/public这些modifier
z*******3
发帖数: 13709
40
如果是public变量
任何一个方法一个线程都可以发起对该变量的修改
那么如果该调用有任何的改动
那你要搜索整个项目去寻找关于该变量的调用
然后挨个修改
但是如果你要求所有的调用全部通过方法调用
那么如果有什么改动,你只需要改动该类本身的方法就行了
举个例子
如果你要求对于某一个变量的值在get时候+1
那么如果你是public变量,那么这个+1就要你遍历项目所有的代码去修改
但是如果你用的是get,那么只需要在get方法return的时候+1就行了
如果是用方法,还有办法予以优化
因为所有调用该private变量的操作都必需经过该方法
所以可以在该方法上添加interceptor, aop之类的东东
spring也是在方法调用的时候才inject,而不是在fields被调用时候inject
直接invoke变量框架容器什么忙都帮不上
z*******3
发帖数: 13709
41
来自主题: Programming版 - 为什么java要用setter和getter
gof那些pattern大部分其实都被java的各种框架什么轻松搞定了
比如singleton,一个@singleton就搞定了
或者用enum,现在很少还有人去自己实现singleton了
还有prototype也是写下配置文件就好了,或者直接调用clone()方法
factory的功能则多数spring所取代,flyweight等模式则在ejb容器中被实现
还有一些行为模式,比如iterator之类的都有现成的实现类,aop对应visitor什么
也都是用就行了,对于一般java开发人员来说,不需要自己去写这些模式
只需要会用就行了,如果经常自己去实现gof的那些模式
反倒是要看看是为什么了,为什么这个人在重复造轮子
而后在gof的基础之上,sun又搞出了一个j2ee core pattern
这个才是真正常见的对于java开发人员来说的design pattern
而就是这个core pattern,现在看也都有些陈旧了
z*******3
发帖数: 13709
42
来自主题: Programming版 - 为什么java要用setter和getter
set/get一个很重要常见的应用就是aop等拦截器需要嘛
要拦截对于某一个bean的属性的调用
直接拦截其get方法就行了
如果分散在其它方法里
那怎么拦截?
最常见的就是log的生成
不拦截每次都去写一个log方法?
还有如果不拦截的话,对于一些现有的jar包里面的类的使用
就无法改了,要拆开来后重写代码
如果没有代码的话,还需要先反编译,再写,再编译
麻烦得多
z****e
发帖数: 54598
43
来自主题: Programming版 - 关于python
我一般是这样理解
动态的metaprogramming的部分主要是给framework用
而非动态的部分则主要是给普通的码农用
一旦把这两个分离,用和不用就变得清晰起来
所以java版群众讨论到最后
结论就是,如果你不是在写framework,那就不要用
如果你在写framework,那么一些动态的功能
就不得不用,比如reflection和aop这些主要是在
写framework的时候用,普通码农还是最原始那些东东
这样高级的码农有高级的需求,而低级的码农因为不会
就不会乱用,等等级上去了,再学着用,再赋予更重的责任
z****e
发帖数: 54598
44
来自主题: Programming版 - 关于python
有,core java的legacy code尤其多
if(debugLevel>=Level.CRITICAL){
log.add("critical error ... ");
}
要是我现在做,全部用aop来搞,但是这个对码农的要求就高了
g*****g
发帖数: 34805
45
来自主题: Programming版 - Linq不是syntactic sugar
Because syntactic sugar is to make expressions more concise, not to add more
capabilities to the language. To suggest Linq is more than a syntactic
sugar, you need to show examples like I did with Reflection when comparing
Java and C++, i.e. something Java can do and C++ cannot. Reflection leads to
the likes of IoC and AOP frameworks which is absent from C++ and that's why
it's not a syntax sugar. So far you are going loops and not showing any
libraries c# can implement and Java cannot.
g*****g
发帖数: 34805
46
来自主题: Programming版 - Linq不是syntactic sugar
学术论文也列了,C# developer现身说法也给了,wiki的定义也给了,就是打死不承认
。nkw估计是个女人。这都不能算狡辩的范畴,就叫鸭子煮熟了还嘴硬。
啥是功能,啥不是语法糖。比如比C跟Java比,C有指针,Java有反射。以此为基础C有
诸如opengl一类的类库,Java有IoC, AOP的类库。都是不扩展语言没法直接实现的。这
个叫功能。C#本来就是抄Java的,加了几个语法糖,以免让人说裸炒。让NeverLearn,
nkw一类的控件程序员能够写点简单程序,就不知道北了。
语法糖不语法糖,本来就以功能实现为准,wiki的定义也是如此。拿出一个Linq实现的
类库,Java做不了的,我不立刻完败了。这么简单的论证没有,成天绕来绕去。Paper
嫌是master写的,C# developer的说法号称是针对C#本身的。现在连wiki的定义都要曲
解。
z****e
发帖数: 54598
47
来自主题: Programming版 - 大家难道全是半路出家?
帮忙纠错用的,你要说是糖水的话,也的确不妨碍jvm本身的执行效率
类似的,aop也是一个糖水,所以aspectj这个框架应用并不十分广泛
z*******3
发帖数: 13709
48
你这个思路是错误的
不需要100%替换
只需要搞定80%就足够了
剩下的20%给传统上剩下的人去搞就好了
而那80%就是我们的bonus
乐得笑纳
实际上nosql和mapreduce至少可以搞定log部分
这两个加上java的aop,是绝配
g*****g
发帖数: 34805
49
来自主题: Programming版 - FMP vs ExecutorService/Future
While Java Future does have a lot of boiler plate codes, other frameworks
have simplified it quite a bit. Spring, for example, can use AOP to declare
a method asynchronous, all it takes is one annotation.
@Async
void myMethod()
Obviously you can have multiple Async tasks in one class. You can call other
Async tasks. You can pass parameters you want without constructing a task,
and you can get a Future
back if you
want. And one important nice thing compared to your approach is that it's
strongly... 阅读全帖
o**2
发帖数: 168
50
来自主题: Programming版 - FMP vs ExecutorService/Future
Spring @Async
这个可以从方便性,可靠性,和thread safe等角度来比较。(我没有实际用过Spring
Async,所依靠的都是临时search出来的reading。如有错误,欢迎指正。)
Async比Java标准的ExectorService强多了,这里就不再提ExectorService了,只比较
Async和FMP。事先说一下,FMP是完全没有静态type checking的,这样做的原因和好处
就不展开了,先认个输。
方便性
1,Async method只能返回void或Future,而FMP的impl object对return value没有任
何限制。这对caller来说,是一样的,但对那个method impl来说,是不同的。Spring
里同一个object的其它method如果要调用这个async method的话,就不能用sync的方式
了。而FMP的impl object完全是一个pure object,因为对外的是active object而不是
这个impl object,于是对外async,对内sync;当然对内也可以是async的,但要... 阅读全帖
首页 上页 1 2 3 4 5 6 7 8 9 10 下页 末页 (共10页)