2018-08-13 11:54
@syjll 是标准的 maven 项目就好办了,删除项目中所有的文件,只留 pom.xml 文件以及 src 目录
重新导入一次 eclipse , 让 ecilpse 重新生成它的配置文件与目录即可
2018-08-12 17:14
@zerov findByCache 优先从缓存中取数据,取不到数据才去数据库查询
而从缓存取数据必须要有一个 key, key 就是从数据库取数据的一把钥匙
2018-08-11 23:22
@EATI001 拦截器就是普通的 Java 方法调用,并没有使用反射,并且拦截器是单例的,在系统启动过程中一次性创建并装配好。 性能极高
这点代码每秒运行应该是百万至千万级别的量,性能损耗可以完全忽略不计
2018-08-11 17:39
做个全局拦截器处处理一下:
public class MyInterceptor implements Interceptor {
public void intercept(Invocation inv) {
inv.invoke();
if (inv.getController().getRender() == null) {
Object ret = inv.getReturnValue();
if (ret == null) {
inv.getController().renderNull();
}
}
}
}
最后再配置一下即可:
me.add(new MyInterceptor());
当然,你的这种情况很可能不需要判断 inv.getReturnValue(),核心方法简化成下面试试:
public void intercept(Invocation inv) {
inv.invoke();
if (inv.getController().getRender() == null) {
inv.getController().renderNull();
}
}
2018-08-10 17:18
@醉梦灬浮生 注意配置好 ehcache 的过期时间,不要永久存放验证码,参考 club 项目中的 ehcache.xml 中的某个过期时间配置
2018-08-10 16:30
@醉梦灬浮生 试试用 jfinal 中的 CacheKit.put(phone, ...) 去存,取的时候这样:
CacheKit.get(phone)
你的代码既然是跨域了,而 cookie 是与域名挂钩的,并且 session 依赖于 cookie 的实现,当你域名变了,那么 cookie 变了,session 中自然取不到值