第五章 面向切面编程(AOP)之二

第五章 面向切面编程(AOP)之二

大家好,又见面了,我是全栈君。

        上一次在第五章中简单的介绍了一下
 AOP
中几个常用的功能,现在我想通过实际的例子来说明它强大的功能,这些例子是项目中实际用到的,而不是一些没有使用价值的例子。我会介绍它在一个完整的系统中用到的地方,有日志处理,异常处理,事物处理,身份验证(权限控制),缓存机制(二级缓存)。这应该是aop最拿手的了。我会通过写一个很小的
Demo
把这些功能全部容纳进去。

     在你的系统中能否充分发挥aop的作用,一定要保证你的系统要有良好的架构设计和良好的代码编程,我们知道在spring中提倡面向接口和使用代理的编程思想.如果没有好的设计架构和良好的代码编程。即使用上了aop 在性能上也会受影响的。我们知道系统中任何一个环节都很重要。一个环节出问题,可能就会影响到整体的性能。这是我们最难做到的,做到十全十美。在做之前一定要有一个比较完美的解决方案。
   接下来我将通过写一个简单的系统,系统的简单描述,不同身份登陆到系统可以执行不同的操作,普通用户可以浏览信息,一般用户可以添加信息,高级用户可以执行所有的操作。就是一个简单的新闻发布系统的简单后台管理。我主要是把aop的几种常用的功能集成到系统中。这个系统的功能比较简单,但业务的需求还是可以用到上面提到的几种功能的。
   我们简单的介绍一下流程。
   普通用户登录后,只能看到最新的新闻信息。不能执行其他任何操作。同时要通过日志记录最近的登陆的用户。
   一般用户,也就是编辑,他们进去后可以添加新闻,修改新闻。但不能删除新闻,系统也要对他们的操作进行记录。
  最后就是管理员(高级用户),可以删除一系列的操作了。同时也记录信息。在删除时一定要加上事务处理,以防数据意外丢失。
  他们登陆之前都要进行身份验证。对访问比较频繁的页面要实行缓存策略。这样才能保证系统的更好的运行。这几个简单的操作已经把我们提到的几个功能都用到了,下面就看你如何集成到你的业务中去,如何用代码来写了。同时也要考虑到性能的问题。
   现在我先把工程搭建一下。用struts+spring+hiberante技术来实现。数据库用MySql.日志记录用常用的log4j,安全框架用acegi,缓存用EHCache.事务就用spring自带的了。
 我们的需求分析完了,再看看技术框架如何搭建。如下图。
第五章 面向切面编程(AOP)之二
  下面是工程目录的搭建。如下图。我以后用到那部分我会在详解的讲解。
  
第五章 面向切面编程(AOP)之二
   今天先写到这.










本文转自 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账号...

(0)
blank

相关推荐

  • 软件测试基础知识 – 说一说黑盒与白盒的测试方法[通俗易懂]

    软件测试基础知识 – 说一说黑盒与白盒的测试方法[通俗易懂]分享一个大牛的人工智能教程。零基础!通俗易懂!风趣幽默!希望你也加入到人工智能的队伍中来!请点击http://www.captainbed.netDefinitionProvideasurrogateorplaceholderforanotherobjecttocontrolaccesstoit.ParticipantsTheclassesan…

  • vue文件上传和下载_vue上传文件组件

    vue文件上传和下载_vue上传文件组件Controller层上传@RequestMapping(“/uplaod”)@ResponseBodypublicRespBeanadd(@RequestParam(“file”)MultipartFilefile){//TODO处理上传的数据StringfileName=file.getOriginalFilename();StringcontentType=file.getContentType();lon

  • idea查看接口方法的实现方法_jsp接口实现类

    idea查看接口方法的实现方法_jsp接口实现类1.查找接口的实现类:Ctrl+H2.跳转到指定方法的接口:Ctrl+鼠标左键输入快捷键+点击之后跳转至下图3.跳转到指定方法的接口的实现类:Ctrl+Alt+鼠标左键输入快捷键+点击之后跳转至下图……

  • 老子李耳

    老子李耳老子李耳

  • VBoxManage安装

    VBoxManage安装扩展包的版本需要与VirtualBox的版本一致,通过帮助可以查看VirtualBox的版本信息,然后在http://download.virtualbox.org/virtualbox/寻找对应的版本。接下来执行安装命令[root@root下载]#VBoxManageextpackinstall./Oracle_VM_VirtualBox_Extension_Pack…

  • 学习Python必备的8本书[通俗易懂]

    在过去一年里,Python的热度一路飙升,国内越来越多的人选择学习Python,如今已然成为大量开发者推荐的入门编程语言和第二编程语言,而且Python还是人工智能的主要编程语言,因此,其重要性和流行度也就不言而喻了想要学好Python语言,需要了解Python是什么,都能够做什么,知道算法,变量,解释器,还有Python的基本数据类型等。所以,本文将推荐几本学习Python编程必看的几本书籍…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号