上一次在第五章中简单的介绍了一下
AOP
中几个常用的功能,现在我想通过实际的例子来说明它强大的功能,这些例子是项目中实际用到的,而不是一些没有使用价值的例子。我会介绍它在一个完整的系统中用到的地方,有日志处理,异常处理,事物处理,身份验证(权限控制),缓存机制(二级缓存)。这应该是aop最拿手的了。我会通过写一个很小的
Demo
把这些功能全部容纳进去。
在你的系统中能否充分发挥aop的作用,一定要保证你的系统要有良好的架构设计和良好的代码编程,我们知道在spring中提倡面向接口和使用代理的编程思想.如果没有好的设计架构和良好的代码编程。即使用上了aop 在性能上也会受影响的。我们知道系统中任何一个环节都很重要。一个环节出问题,可能就会影响到整体的性能。这是我们最难做到的,做到十全十美。在做之前一定要有一个比较完美的解决方案。
接下来我将通过写一个简单的系统,系统的简单描述,不同身份登陆到系统可以执行不同的操作,普通用户可以浏览信息,一般用户可以添加信息,高级用户可以执行所有的操作。就是一个简单的新闻发布系统的简单后台管理。我主要是把aop的几种常用的功能集成到系统中。这个系统的功能比较简单,但业务的需求还是可以用到上面提到的几种功能的。
我们简单的介绍一下流程。
普通用户登录后,只能看到最新的新闻信息。不能执行其他任何操作。同时要通过日志记录最近的登陆的用户。
一般用户,也就是编辑,他们进去后可以添加新闻,修改新闻。但不能删除新闻,系统也要对他们的操作进行记录。
最后就是管理员(高级用户),可以删除一系列的操作了。同时也记录信息。在删除时一定要加上事务处理,以防数据意外丢失。
他们登陆之前都要进行身份验证。对访问比较频繁的页面要实行缓存策略。这样才能保证系统的更好的运行。这几个简单的操作已经把我们提到的几个功能都用到了,下面就看你如何集成到你的业务中去,如何用代码来写了。同时也要考虑到性能的问题。
现在我先把工程搭建一下。用struts+spring+hiberante技术来实现。数据库用MySql.日志记录用常用的log4j,安全框架用acegi,缓存用EHCache.事务就用spring自带的了。
我们的需求分析完了,再看看技术框架如何搭建。如下图。
下面是工程目录的搭建。如下图。我以后用到那部分我会在详解的讲解。
今天先写到这.
本文转自 weijie@java 51CTO博客,原文链接:http://blog.51cto.com/weijie/66472,如需转载请自行联系原作者
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/107947.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】:
Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】:
官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...