- 浏览: 267339 次
文章分类
- 全部博客 (96)
- 经验 (53)
- 小制作 (6)
- 人生 (1)
- 技术选型 (2)
- 技术学习 (2)
- memo (1)
- 系统架构 (2)
- 经验 Windows (3)
- HP-UX (1)
- Ubuntu (1)
- java7 (1)
- tomcat7 (1)
- linux (2)
- AIX (1)
- mysql (1)
- intellij (2)
- eclipse (1)
- HTML (1)
- spring (4)
- shiro (1)
- java (6)
- jetty (1)
- jackson (1)
- javascript (1)
- spring-boot (2)
- rust (1)
- tomcat (1)
- spring-cloud (1)
- ffmpeg (1)
最新评论
-
安静听歌:
你好,请问你是如何控制他们的启动顺序的呢,手动控制吗?
spring cloud 配置中心和服务注册中心启动顺序 -
dwangel:
zjturn 写道想请教个问题:第二种方法,首先配置logou ...
spring mvc中 shiro logout 配置方式 -
zjturn:
想请教个问题:第二种方法,首先配置logout的bean,然后 ...
spring mvc中 shiro logout 配置方式 -
dwangel:
czltx224 写道加个参数就OK 了
<proper ...
Hessian调用出错 -
czltx224:
加个参数就OK 了<property name=&quo ...
Hessian调用出错
使用AOP把spring mvc controller方法的参数输出到日志
Advisor
spring 的xml配置中增加:
注意如果有拦截器 interceptor需要访问方法上的自定义 annotation,需要获取target类的方法或者在annotation的定义上 加上 @Inherited
Advisor
pakcage com.iteye.dwangel.util.spring; import org.apache.commons.lang3.StringUtils; import org.aspectj.lang.ProceedingJoinPoint; import org.aspectj.lang.annotation.Around; import org.aspectj.lang.annotation.Aspect; import org.aspectj.lang.reflect.MethodSignature; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.lang.reflect.Method; /** * AOP advicer to get log * Created by Simon Xianyu on 2015/11/18 0018. */ @Aspect public class MvcMethodLogAdvice { private static Logger log = LoggerFactory.getLogger("com.iteye.dwangel.MVC"); @Around("@annotation(org.springframework.web.bind.annotation.RequestMapping)") public Object aroundAdvice(ProceedingJoinPoint joinPoint) throws Throwable { Object args[] = joinPoint.getArgs(); MethodSignature signature = (MethodSignature) joinPoint.getSignature(); Method method = signature.getMethod(); // join arguments. log.debug("{}.{} : {} ",method.getDeclaringClass().getName(), method.getName(), StringUtils.join(args," ; ")); return joinPoint.proceed(); } }
spring 的xml配置中增加:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:util="http://www.springframework.org/schema/util" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd "> <aop:aspectj-autoproxy /> <bean id="webMvcAdvisor" class="com.iteye.dwangel.util.spring.MvcMethodLogAdvice" /> </beans>
注意如果有拦截器 interceptor需要访问方法上的自定义 annotation,需要获取target类的方法或者在annotation的定义上 加上 @Inherited
发表评论
-
ai文件到swf文件
2019-05-28 23:03 740朋友有个需求,把 ai 文件里的图片 替换 一个 swf 里图 ... -
maven mirror 设置错导致无法访问私有库
2018-04-04 12:35 842最近为了提高开发效率,整理了一些spring boot的自注册 ... -
jquery 1.11.0 post 在ie8 上不工作
2017-10-21 13:52 660帮朋友看一个问题 $.post在ie8 下不工作, 查了半天 ... -
Java 获取一个机器的本地地址
2017-03-27 10:18 857public class IpDetector { ... -
mongodb 的 inplace update
2016-12-20 15:05 854嵌套对象为 hash对象时: db.getCollectio ... -
配置Mac OS 下UI程序环境变量的方法
2016-10-20 19:51 794找了半天,还是stackoverflow 靠谱 http:/ ... -
2 spring webapplicationinitializers detected on classpath
2016-10-18 14:31 6663最近在学用 spring boot 做项目,碰到一个问题,to ... -
网文阅读 杂谈
2016-09-03 02:44 469最近才看到王银的《编程的宗派》 文章后面有不少评论表示膜拜的 ... -
实现Spring的HandlerMethodArgumentResolver接口处理Datatables参数
2016-08-17 16:20 909一开始用@ModelAttribute标签来自动映射类,不符合 ... -
去掉shiro登录时url里的JSESSIONID
2016-02-05 00:02 6806经过查找论坛和分析源码,确认了是在ShiroHttpServl ... -
命令行装android idk
2015-05-22 17:16 922先列出sdk 和相应 编号(这里用的是国内代理,现在有时候可以 ... -
springmvc的messageConvert是按照method的参数去启动的
2015-04-28 16:39 921最近在研究怎么在springmvc中集成使用protobuf。 ... -
用type属性避免点击button标签元素导致form提交
2015-01-19 15:52 487如果在form里使用 <button> 标签 会导 ... -
Intellij UI designer 经验x1
2014-09-09 14:36 786使用Intellij的UI designer 创建了一个for ... -
Autowired找不到 spring-data-jpa的Repository实例
2014-04-03 16:41 4857在一些类中使用@Autowired jpa repositor ... -
AIX 程序引用库时出ld: 0706-006的一种情况的解决
2014-03-31 14:35 2271公司的产品涉及到AIX 在CI集成时,一个模块B怎么也连不上另 ... -
移动jar到指定目录,原地建符号链接的bash指令
2014-03-10 11:21 773find . -name "*.jar" ... -
java7,jsp的el表达式使用interface无法被解析问题
2014-03-05 10:01 818使用的jdk是oracle JDK 1.7.0_51 tomc ... -
解决locale: Cannot set LC_CTYPE
2013-11-28 18:10 2120执行 sudo /usr/share/locales/inst ... -
Linux下tar包中长文件名在HP unix下丢失问题
2013-11-28 14:07 2628公司产品有个组件需要在HP unix下编译。 用了CI做集成 ...
相关推荐
本教程将详细介绍如何利用注解来配置和使用AOP来拦截Controller层的方法,以便记录执行过程中的相关信息,实现日志管理。 一、Spring AOP基础 AOP是Spring框架的核心组件之一,它允许程序员定义“切面”,这些切面...
本文将详细介绍如何使用AspectJ注解在Spring MVC中实现AOP拦截Controller方法,并提供一个具体的例子。 首先,我们需要了解Spring AOP的基础概念。AOP允许我们定义“切面”,这些切面包含了业务逻辑中横切关注点的...
通过这种方式,我们可以在Spring MVC中利用AOP实现对Controller方法的透明日志管理,不仅记录正常流程,也能捕获和记录异常,提升系统的可维护性和问题排查效率。 在实际项目中,我们可以根据需求进一步定制日志...
5. **Spring MVC集成**:AOP可以与Spring MVC协同工作,比如在Controller层的方法调用中添加事务管理和日志记录。 6. **Spring MVC基础知识**:虽然主要讲解AOP,但实例可能也会涵盖Spring MVC的基础,如...
本项目"Spring MVC AOP通过注解方式拦截Controller等实现日志管理demo版本2"是基于注解的AOP实践,旨在帮助开发者了解如何利用AOP来记录应用程序中的关键操作日志。以下是关于这个主题的详细解释: 1. **Spring AOP...
另外,Spring MVC与Spring框架的其他组件无缝集成,如Spring AOP(面向切面编程)用于实现日志、事务管理等功能,Spring JDBC和MyBatis等持久层框架用于数据库操作,以及Spring Data JPA、Hibernate等ORM工具,使得...
Spring框架是Java开发中不可或缺的一部分,它以模块化的方式提供了许多功能,如依赖注入(IOC)、面向切面编程(AOP)以及Model-View-Controller(MVC)架构模式。在本实例中,我们将深入探讨这三个核心概念以及它们...
- **AOP集成**:Spring MVC与Spring的面向切面编程(AOP)无缝集成,可以方便地实现事务管理和其他切面功能。 2. **Hibernate 3.6.8**: - **ORM框架**:Hibernate是一个强大的ORM工具,它将Java对象映射到数据库...
Spring MVC支持自动的数据绑定,可以将请求参数直接绑定到Controller方法的参数上,也可以将表单数据绑定到Java对象。此外,@Valid用于验证模型数据,配合Validator接口实现自定义校验规则。 7. **异常处理** ...
对于PDF和Excel格式的输出,Spring MVC可以通过Apache POI库来处理Excel,使用Flying Saucer或iText库来生成PDF。这些库能够将HTML内容转换为所需的格式,方便导出和下载。 总的来说,Spring MVC是Spring框架的重要...
在Spring MVC框架中,AOP(面向切面编程)是一种强大的工具,用于实现日志拦截,特别是对于controller层的操作。AOP允许我们定义横切关注点,这些关注点可以是如日志记录、事务管理、权限检查等通用功能,它们在程序...
3. `org.springframework.web.servlet-3.0.2.RELEASE.jar`:这是 Spring MVC 的核心模块,提供了控制器(Controller)、模型视图(ModelAndView)以及调度器Servlet(DispatcherServlet)等关键组件。...
8. **数据绑定与验证**:Spring MVC 提供了数据绑定功能,可以自动将请求参数映射到 Controller 方法的参数。同时,通过 @Valid 和 Validation API 可以实现数据校验。 9. **拦截器(Interceptor)**:拦截器可以在...
此外,Spring还提供AOP(面向切面编程)功能,用于处理如日志、事务管理等横切关注点。 2. **Spring MVC**:Spring MVC是Spring框架的一个模块,用于处理Web请求。它负责接收HTTP请求,调用业务逻辑,处理结果,并...
在IT行业中,Spring MVC 和 MyBatis 是两个非常重要的框架,它们分别负责Web应用程序的控制器层和数据访问层。Spring MVC 提供了模型-视图-控制器架构模式的实现,而MyBatis则是一个轻量级的SQL映射框架,用于简化...
为了展示如何使用 Spring MVC 构建一个简单的 Web 应用,我们可以通过实现一个基本的 HelloWorld 示例来快速入门。 #### 步骤: 1. **添加必要的 JAR 包**:首先,需要在项目中添加 Spring MVC 及其依赖库。这些库...
Spring MVC是Spring框架的一部分,专门用于构建Web应用程序的Model-View-Controller(MVC)架构。它提供了处理HTTP请求、模型数据绑定、视图渲染等功能。Spring MVC通过DispatcherServlet作为前端控制器,接收请求并...
在 Spring MVC 中,可以通过 AOP(面向切面编程)技术来记录异常到日志。具体做法是在配置文件中定义一个环绕通知(around advice),当异常发生时,该通知会自动记录相关信息到日志文件中。 #### 十三、JUnit 单元...
在IT行业中,Spring框架是Java企业级应用开发的首选,而Spring MVC是Spring框架的一个重要模块,用于构建Web应用程序。本文将深入探讨Spring与Spring MVC的整合配置,并结合标签"源码"和"工具"来解析相关的技术细节...