资源简介
项目共5个小模块,非常适合入门!
代码片段和文件信息
package com.artesyn.resource.base.aop;
import java.lang.reflect.Method;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
import org.aspectj.lang.annotation.Pointcut;
import org.springframework.stereotype.Component;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
@Aspect
@Component
public class LogControllers {
//Controller层切点
/*@Pointcut(“execution(* com.artesyn.resource.*.controller..*(..))“)
public void controllerAspect() {
} */
//Controller层切点
@Pointcut(“@annotation(com.artesyn.resource.base.aop.SystemControllerLog)“)
public void controllerAspect() {
}
/**
* 前置通知 用于拦截Controller层记录用户的操作
*
* @param joinPoint 切点
*/
@Before(“controllerAspect()“)
public void doBefore(JoinPoint joinPoint) {
HttpServletRequest request = ((ServletRequestAttributes)
RequestContextHolder.getRequestAttributes()).getRequest();
HttpSession session = request.getSession();
//请求的IP
String ip = request.getRemoteAddr();
object[] args = joinPoint.getArgs();
for (int i = 0; i < args.length; i++) {
System.out.println(args[i]);
}
try {
//*========控制台输出=========*//
System.out.println(“=====前置通知开始=====“);
System.out.println(“请求方法:“ + (joinPoint.getTarget().getClass().getName() + “.“ + joinPoint.getSignature().getName() + “()“));
System.out.println(“方法描述:“ + getControllerMethodDescription(joinPoint));
System.out.println(“请求IP:“ + ip);
//*========数据库日志=========*//
//保存数据库
System.out.println(“=====前置通知结束=====“);
} catch (Exception e) {
}
}
/**
* 获取注解中对方法的描述信息 用于Controller层注解
*
* @param joinPoint 切点
* @return 方法描述
* @throws Exception
*/
public static String getControllerMethodDescription(JoinPoint joinPoint) throws Exception {
String targetName = joinPoint.getTarget().getClass().getName();
String methodName = joinPoint.getSignature().getName();
object[] arguments = joinPoint.getArgs();
Class targetClass = Class.forName(targetName);
Method[] methods = targetClass.getMethods();
String description = ““;
for (Method method : methods) {
if (method.getName().equals(methodName)) {
Class[] clazzs = method.getParameterTypes();
if (clazzs.l
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1515 2018-01-24 19:54 resource\.classpath
文件 1292 2017-12-29 09:48 resource\.project
文件 639 2017-12-25 15:37 resource\.settings\.jsdtscope
文件 430 2017-12-25 15:37 resource\.settings\org.eclipse.jdt.core.prefs
文件 90 2017-12-25 15:36 resource\.settings\org.eclipse.m2e.core.prefs
文件 680 2017-12-29 09:48 resource\.settings\org.eclipse.wst.common.component
文件 252 2017-12-25 15:40 resource\.settings\org.eclipse.wst.common.project.facet.core.xm
文件 49 2017-12-25 15:37 resource\.settings\org.eclipse.wst.jsdt.ui.superType.container
文件 6 2017-12-25 15:37 resource\.settings\org.eclipse.wst.jsdt.ui.superType.name
文件 50 2017-12-25 15:37 resource\.settings\org.eclipse.wst.validation.prefs
文件 535 2017-12-26 08:31 resource\.springBeans
文件 5099 2018-03-18 20:31 resource\pom.xm
文件 3451 2018-03-18 22:35 resource\src\main\java\com\artesyn\resource\ba
文件 448 2018-03-18 22:13 resource\src\main\java\com\artesyn\resource\ba
文件 217 2017-12-30 14:45 resource\src\main\java\com\artesyn\resource\ba
文件 221 2017-12-30 14:51 resource\src\main\java\com\artesyn\resource\ba
文件 528 2017-12-27 16:41 resource\src\main\java\com\artesyn\resource\constant\ResourceConstants.java
文件 2623 2017-12-31 11:21 resource\src\main\java\com\artesyn\resource\dept\controller\DeptController.java
文件 726 2018-01-26 19:27 resource\src\main\java\com\artesyn\resource\dept\entity\Dept.java
文件 209 2017-12-30 14:39 resource\src\main\java\com\artesyn\resource\dept\mapper\DeptMapper.java
文件 771 2018-01-10 20:02 resource\src\main\java\com\artesyn\resource\dept\mapper\DeptMapper.xm
文件 212 2017-12-30 14:52 resource\src\main\java\com\artesyn\resource\dept\service\DeptService.java
文件 1062 2018-01-01 15:55 resource\src\main\java\com\artesyn\resource\dept\service\impl\DeptServiceImpl.java
文件 4875 2018-01-01 12:04 resource\src\main\java\com\artesyn\resource\employee\controller\EmployeeController.java
文件 4933 2017-12-31 22:24 resource\src\main\java\com\artesyn\resource\employee\entity\Employee.java
文件 400 2017-12-31 23:40 resource\src\main\java\com\artesyn\resource\employee\mapper\EmployeeMapper.java
文件 3635 2018-01-01 11:32 resource\src\main\java\com\artesyn\resource\employee\mapper\EmployeeMapper.xm
文件 427 2017-12-31 23:38 resource\src\main\java\com\artesyn\resource\employee\service\EmployeeService.java
文件 1941 2018-01-01 15:57 resource\src\main\java\com\artesyn\resource\employee\service\impl\EmployeeServiceImpl.java
文件 6156 2018-01-02 18:45 resource\src\main\java\com\artesyn\resource\file\controller\DocumentController.java
............此处省略444个文件信息
相关资源
- SSM框架,仿《简书》整站无后台管理
- 网上资源管理系统ssm-源码
- 基于SSM的校园门户网站设计与实现
- inspinia 2.9.3官方原版.zip
- IDEA搭建SSM项目
- 北大青鸟代理商管理系统(Spring+Str
- Beagle – Responsive Admin Template
- 毕设各种源码
- 期末大作业——SSM框架汇通国际物流
- SSM.zip167698
- gradle-4.4-all.zip
- 投票活动系统web端和微信端
- 电商书城.zip
- 10套bootstrap网页模板
- ssm+redis实现sso单点登陆,maven模块化实
- 毕业设计_淘宝天猫优惠券.zip
- 10套管理系统前台模板
- 网上图书商城
- 互联网轻量级SSM框架解密:Spring、S
- 黑马代码生成器
- red5 1.0.7整合tomcat6+maven+oflaDemos
- Bootstrap实战从入门到精通电子版.pdf
- nexus-3.6.1-02-unix.tar.gz
- 4个bootstrap免费的框架源代码
- 国家税务协同办公 web项目
- 一个带有数据库的完整版本的旅游网
- 北大青鸟Y2SSMAPP信息管理系统
- 酒店住房管理系统项目源码.zip
- 基于SSM的酒店管理系统
- ssm选课系统
评论
共有 条评论