2017-12-22 19:01

@a772856947 你是用的log4j2框架吗?会提示什么错误吗?

2017-12-14 18:47

@lishixing 你好,我好久没有看官网了,其实网上很多log4j2的配置,以下是我的配置




${sys:catalina.base}/webapps/logs/root









fileName="${LOG_ROOT}/debug.log"
filePattern="${LOG_ROOT}/$${date:yyyy-MM}-debug/debug-%d{yyyy-MM-dd}-%i.log.gz">

pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>







fileName="${LOG_ROOT}/info.log"
filePattern="${LOG_ROOT}/$${date:yyyy-MM}-info/info-%d{yyyy-MM-dd}-%i.log">

pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>







fileName="${LOG_ROOT}/warn.log"
filePattern="${LOG_ROOT}/$${date:yyyy-MM}-warn/warn-%d{yyyy-MM-dd}-%i.log">

pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>







fileName="${LOG_ROOT}/error.log"
filePattern="${LOG_ROOT}/$${date:yyyy-MM}-error/error-%d{yyyy-MM-dd}-%i.log">

pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>







fileName="${LOG_ROOT}/sql.log"
filePattern="${LOG_ROOT}/$${date:yyyy-MM}-sql/sql-%d{yyyy-MM-dd}-%i.log">

pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>




























2017-11-26 14:08

@dadu 嗯嗯,他使用的是log4j打印,我使用的是slf4j,而且我把很多有默认值的打印选项也设置了下,没有他的那么简洁

2017-11-22 18:56

@a772856947 可以看下http://www.jfinal.com/share/491,http://www.jfinal.com/share/492

2017-11-22 18:30

反馈:分享不能发表情

2017-11-15 15:42

@a772856947 有,最后还是找到解决方案了,但是和文中提到的不太一样
1.日志解决方案
我最后换了日志框架,因为log4j最新版本是2012年,听说log4j2性能会好一点,所以便将日志框架改成slf4j+log4j2,使用log4j2.xml文件配置,除了配置Append之外还可以配置Logger,通过配置Logger限定某个包下的打印日志级别,解决了该问题
另:遇到了不少坑,大概搞了3天,最终配置完成
2.打印sql语句
在更换日志框架的过程中我发现DruidDatasource自带sql语句打印功能,无需修改jdbcUrl,只要配置文中提到的Slf4jLogFilter即可,具体内容可以看https://github.com/alibaba/druid/wiki/%E9%85%8D%E7%BD%AE_LogFilter,此外,Druid的统计监控功能也非常强大
如果有时间你也可以搞下,遇到问题可以在这边交流

2017-10-26 16:38

@JFinal 哦,如果是在service对方法做增强,生成的Invocation中target是一个代理对象,并不是Controller,调用inv.getController()时即使不做判断也会出现类型转换异常

如果要在service做缓存可以仿照CacheInterceptor写一个ServiceCacheInterceptor,其中不使用Controller和Action即可
多谢波总!!!

2017-10-10 16:21

你好,请问这个插件的动态添加任务功能应该是必须在QuartzPlugin.start()之前吧,因为scheduler.start();是在startJob()方法中才被调用,如果 调用addJob()后没有执行quartzPlugin.start(),动态添加的任务应该还是没有被执行吧 @埋头苦干

2017-09-26 17:36

我在maven中设置了-parameters,使用idea做为开发工具,idea中没有设置保留参数名,一直以为每次编译时都保留了参数名,但是我每次使用的是idea中的debug进行调试,如果代码有更新,debug是使用idea的编译设置进行编译,结果maven设置了也没用

2017-09-15 15:28

@弯道加速跑

你好,我使用的是log4j.properties作为日志配置文件,但是不知如何设置不同级别过滤,导致控制台输出的日志非常多,尝试使用logback,将logback.xml和logback-application.xml放在resources目录下,导入logback-core,logback-classic,删除log4j相关依赖,但是日志如下:
SLF4J: No SLF4J providers were found.
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#noProviders for further details.
SLF4J: Class path contains SLF4J bindings targeting slf4j-api versions prior to 1.8.
SLF4J: Ignoring binding found at [jar:file:/F:/pocketpiano/web-api/target/web-api/WEB-INF/lib/slf4j-log4j12-1.7.2.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#ignoredBindings for an explanation.
log4j:WARN No appenders could be found for logger (org.apache.commons.beanutils.converters.BooleanConverter).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
也没有任何日志输出.
是因为JFinal不直接支持logback吗?如果要使JFinal支持logback应该怎么做?

2017-08-26 12:59

@JFinal 嗯嗯,明白了,多谢站长~~

2017-08-25 17:53

@JFinal 做的是一个社交系统,如关注数这些信息存放在一个hash里,平时使用hincrBy()进行增加,不能用getCounter(key)直接获取
目前尝试写一个Rediskit.hincrBy(),使用hget()和hset()两次操作更新hash中某个域的值,效率会低一点,但是保留cache封装"类型转换"的特点