`

Aop 参数解析辅助文件

 
阅读更多
package com.sf.scms.core.aop;


import javax.servlet.http.HttpServletRequest;

import org.apache.commons.lang3.StringUtils;

public class IPUtil {

public static String getIpAddress(HttpServletRequest request) {
        try {
            if (request == null) {
                return "";
            }
            String ip = request.getHeader("x-forwarded-for");
            if (StringUtils.isBlank(ip) || "unknown".equalsIgnoreCase(ip)) {
                ip = request.getHeader("Proxy-Client-IP");
            }
            if (StringUtils.isBlank(ip) || "unknown".equalsIgnoreCase(ip)) {
                ip = request.getHeader("WL-Proxy-Client-IP");
            }
            if (StringUtils.isBlank(ip) || "unknown".equalsIgnoreCase(ip)) {
                ip = request.getRemoteAddr();
            }
            final String[] arr = ip.split(",");
            for (final String str : arr) {
                if (!"unknown".equalsIgnoreCase(str)) {
                    ip = str;
                    break;
                }
            }
            if (ip.equals("0:0:0:0:0:0:0:1")) {
                ip = "127.0.0.1";
            }
         
            return ip;
        } catch (Exception e) {
            return "";
        }
    }
}

package com.sf.scms.core.aop;
import java.util.UUID ;
import java.io.PrintWriter;
import java.io.StringWriter;
import java.util.Date;

import com.sf.novatar.scms.common.util.DateUtil;

public final class StringUtil {
    public static String subString(String str, int end) {
        String result = str;

        if(null != str && str.length() > end){
            result = str.substring(0, end);
        }

        return result;
    }
   
    public static String outString(Object[] args){
 
    String out = "";
    if(args.length <=0){
    out = "null";
    }else{
            for(int i=0; i<args.length; i++){       
           out = out+"<>"+args[i];
          
          }  
   
        }
    return out;
    }


    public static String getErrorInfoFromException(Exception e) {
        try {
            StringWriter sw = new StringWriter();
            PrintWriter pw = new PrintWriter(sw);
            e.printStackTrace(pw);
            return "\r\n" + DateUtil.toDateTimeString(new Date()) + " : " + sw.toString() + "\r\n";
        } catch (Exception e2) {
            return "bad getErrorInfoFromException";
        }
    }
    /**
     * 删除后面指定的字符
     *
     * @param toTrim
     * @param trimStr
     * @return
     */
    public static String trimSufffix(String toTrim, String trimStr) {
        while (toTrim.endsWith(trimStr)) {
            toTrim = toTrim.substring(0, toTrim.length() - trimStr.length());
        }
        return toTrim;
    }
   
 
    public static void main(String[] args) {

    String a = null;
    Object obj = null;
        obj.equals("123");
}
   
   
}





分享到:
评论

相关推荐

    ssm常用配置文件

    - `applicationContext.xml`:这是Spring框架的核心配置文件,用于定义bean的创建、依赖注入、AOP(面向切面编程)、事务管理等。在这里,你可以看到bean的定义,如数据源、SessionFactory、DAO、Service等组件的...

    基于SSM的学习辅助系统源码.zip

    1. **Spring框架**:Spring是一个全面的企业级应用开发框架,它提供依赖注入(DI)和面向切面编程(AOP)等功能,有助于简化Java应用程序的开发。在本学习辅助系统中,Spring主要负责管理各个组件的生命周期和依赖...

    schema.约束文件大全

    让我们逐一解析每个标签和子文件名所代表的Java技术领域: 1. **AOP(面向切面编程)**:这是一个编程范式,允许程序员定义“切面”,这些切面是代码中的关注点,如日志、事务管理等。在Spring框架中,AOP常用来...

    支付宝demo,放在vender目录下

    `aop`目录可能包含了更多的支付宝SDK相关文件,例如配置文件、样例代码或者其他辅助工具。这些文件可能会包含具体的API调用示例,帮助开发者快速上手。在实际开发中,开发者需要根据自己的应用需求,配置这个目录下...

    基于ssm+vue+bootstrap的课程辅助教学网站.zip

    这是一个基于Java后端SSM(Spring、SpringMVC、MyBatis)框架,结合前端Vue.js和Bootstrap构建的课程辅助教学网站项目。SSM是Java领域常用的开发框架组合,Spring提供依赖注入和全面的企业级应用支持,SpringMVC处理...

    annotation 应用

    8. `@Args`、`@Within`、`@Target`、`@annotation`等:这些是用于构建切点表达式的辅助注解,可以根据参数类型、所在包、注解等条件进行匹配。 结合标签“源码”,我们可以通过查看Spring AOP的源代码来理解这些...

    spring2.5 配置VM

    标题“spring2.5配置VM”指的是在Spring框架2.5版本中,如何配置...同时,`FormBeanUtil.java`文件可能是一个辅助工具,用于处理Spring MVC中的表单数据。对于深入学习和理解Spring框架,掌握这些知识点是至关重要的。

    mybatis所需jar包

    7. `dom4j.jar` 或 `jaxen.jar`:XML处理库,MyBatis使用它们解析配置文件,如Mapper XML文件。 在实际开发中,开发者通常会创建一个Spring配置文件,配置数据源、事务管理器、MyBatis的SqlSessionFactory以及...

    alipay-sdk-PHP-20150527120051

    3. lotusphp_runtime:这部分可能是运行时环境或特定框架的辅助文件,例如在LotusPHP框架下运行SDK时所需的一些配置或工具类。 4. .idea:这是一个IDE的项目配置文件,通常包含有开发环境的设置信息,对于实际的...

    webhelper heilper

    在IT行业中,WebHelper是一个常见的概念,它通常指的是一个辅助类或者库,用于简化Web开发中的常见任务。这个“webhelper heilper”压缩包很可能包含了一组实用的代码片段或函数,帮助开发者快速实现一些功能,从而...

    有用的东西 mybatis

    【标签】中的“源码”提示我们,这篇博客可能深入到MyBatis的内部实现,如Executor的执行流程,ParameterHandler、ResultSetHandler和StatementHandler三大处理类的作用,以及MyBatis如何解析XML配置文件等。...

    springMVC-ibatis2

    映射文件定义了SQL语句及其参数绑定。接着,我们将这些配置整合到Spring的配置文件中,使用SqlSessionFactoryBean来加载MyBatis配置,并通过Spring的MapperScannerConfigurer扫描包内所有的Mapper接口,自动注册为...

    Mybatis部分【第1天相关资料及源代码】

    10. **资源文件解析**:`res`目录可能包含相关的数据库脚本、日志文件、配置文件等,这些都是学习Mybatis时不可或缺的辅助材料。 总之,这个压缩包为初学者提供了一个全面了解和学习Mybatis的起点,从基础概念到...

    ssm框架整合所有jar包

    7. 其他辅助库:如`commons-lang3.jar`, `commons-logging.jar`, `aopalliance.jar`等,它们提供了一些通用的功能和工具类。 整合SSM框架的过程主要包括以下几个步骤: 1. 引入依赖:在`pom.xml`或`build.gradle`...

    Spring源码学习四:BeanDefinition装载前奏曲1

    在创建`ApplicationContext`实例时,通常会调用带有`configLocations`参数的构造函数,这个参数指定了Spring XML配置文件的位置。例如,`"applicationContext.xml"`就是一个常见的配置文件名。 进入`refresh()`方法...

    SSM框架所需架包

    2. 配置Spring MVC:创建Spring MVC的配置文件,如`servlet-context.xml`,配置DispatcherServlet、视图解析器、模型-视图映射等。 3. 配置MyBatis:创建MyBatis的全局配置文件`mybatis-config.xml`,以及XML映射...

    SpringMVC+Spring+Mybatis框架配置详细步骤(eclipse普通版).docx

    - 其他依赖包:可能还需要Spring的核心库(如spring-context.jar)和其他辅助库,如AspectJ用于AOP支持,log4j或SLF4J用于日志记录。 - 搭建步骤: - 创建项目:在Eclipse中新建Dynamic Web Project,并设置相应...

    Spring+SpringMVC+MyBatis的整合.pdf

    - 在pom.xml文件中添加SSM及相关的依赖,包括Spring、SpringMVC、MyBatis的版本,以及其他辅助库如Log4j和SLF4J等。 6. **项目结构** - 一个典型的SSM项目目录结构包括src/main/java(存放源代码)、src/main/...

    hibernate JAR包

    6. **dom4j** 和 **xml-apis**: 用于XML解析和处理,是Hibernate配置文件和映射文件解析所必需的。 7. **javassist**: Hibernate使用这个库动态地修改字节码,以实现延迟加载(Lazy Loading)和其他高级特性。 8. ...

    ssm所有jar包

    例如,Spring的beans配置文件(如`applicationContext.xml`)会定义bean及其依赖关系,SpringMVC的配置文件(如`dispatcher-servlet.xml`)会配置控制器和视图解析,而MyBatis的配置文件(`mybatis-config.xml`)则...

Global site tag (gtag.js) - Google Analytics