zoukankan      html  css  js  c++  java
  • 业务中Spring使用

    不管是MVC框架还是DAO框架,在业务场景中能够通用的个人觉得AOP是一个重点,看是不是可以合理使用,其他的框架都是基础框架

    ==================================

    第一个AOP学习,对其类进行增强。


    import java.util.Map;

    import org.aspectj.lang.ProceedingJoinPoint;
    import org.aspectj.lang.annotation.After;
    import org.aspectj.lang.annotation.Around;
    import org.aspectj.lang.annotation.Aspect;
    import org.aspectj.lang.annotation.Before;
    import org.aspectj.lang.annotation.Pointcut;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.stereotype.Component;

    import com.yyb.service.IAuthService;
    import com.yyb.ws.SecurityMannager;

    @Component
    @Aspect
    public class AuthServiceImpl implements IAuthService {

    @Autowired
    private SecurityMannager securityMannager;


    //@After(value="pointRegister(map)",argNames="map")
    @After(value="execution(* com.yyb.service.impl.UserServiceImpl.register(..)) && args(map)",argNames="map")
    public void authOther(Map<String,String> map) {
    System.out.println("AuthServiceImpl.authOther(map=" + map + ") in authOther ");
    }


    @Pointcut(value="execution(* com.yyb.service.impl.UserServiceImpl.login(..)) && args(cfg,other)",argNames="cfg,other")
    public void pointAuth(String cfg,String other){}

    //@Before(value="pointAuth(cfg,other)",argNames="cfg,other")
    @Before(value="execution(* com.yyb.service.impl.UserServiceImpl.login(..)) && args(cfg,other)",argNames="cfg,other")
    @Override
    public void auth(String cfg,String other) {
    securityMannager.doCheck(cfg + "-" + other );
    System.out.println("AuthServiceImpl.auth(cfg=" + cfg + ",other=" + other + ") in auth ");
    }

    }


    import java.util.Map;

    import org.aspectj.lang.annotation.Aspect;
    import org.springframework.stereotype.Component;

    import com.yyb.service.IUserService;


    @Component
    public class UserServiceImpl implements IUserService {

    @Override
    public void login(String name,String pass) {
    System.out.println("UserServiceImpl.login() in login......");
    }

    @Override
    public void register(Map<String,String> map) {
    System.out.println("UserServiceImpl.register() in register......");
    }

    @Override
    public void findUserByParams(String params) {

    }

    }

  • 相关阅读:
    windows下读取utf-8文件
    mongodb c api编译
    JS学习笔记
    【已解决】关于SQL2008 “不允许保存更改。您所做的更改要求删除并重新创建以下表。您对无法重新创建的标进行了更改或者启用了‘阻止保存要求重新创建表的更改’” 解决方案
    C#字符串截取
    C#通过WatiN操作页面中内嵌的Iframe
    C#查找以某个字母开头另一字母结尾的字符串
    HTML5+CSS3学习小记
    C#求任意范围内的质数
    C#中的委托
  • 原文地址:https://www.cnblogs.com/gstsyyb/p/3461885.html
Copyright © 2011-2022 走看看