2017-01-19 09:57

先升,然后排查下看是不是有错误,如果有就手动修改下量不是很大的,就是稍api名称而已,JFinal新版本对旧版本的兼容做得还挺人性化的,当然每一次版本的发布,调整两三个api名称也是可以理解的,框架也是在不断的进化与前进,跟咱们做项目也是个路数的。

2017-01-19 09:53

@小三上酒 既然你是手动生成的,那你的属性有没有映射对了,他baseXX属性与表字段是这样对应的:
@SuppressWarnings("serial")
public abstract class BaseAbout> extends Model implements IBean {

public void setId(java.lang.Integer id) {
set("id", id);
}

public java.lang.Integer getId() {
return get("id");
}

public void setTitle(java.lang.String title) {
set("title", title);
}

public java.lang.String getTitle() {
return get("title");
}

public void setContent(java.lang.String content) {
set("content", content);
}

public java.lang.String getContent() {
return get("content");
}

public void setCreateAt(java.lang.String createAt) {
set("create_at", createAt);
}

public java.lang.String getCreateAt() {
return get("create_at");
}

}
回头看下你这手动生成的Basexx是不是与上面贴码的一样,其实再看下_MappingKit这个类的内容是不是中如:
public class _MappingKit {

public static void mapping(ActiveRecordPlugin arp) {
arp.addMapping("about", "id", About.class);
arp.addMapping("cases", "id", Cases.class);
arp.addMapping("client", "id", Client.class);
arp.addMapping("contact", "id", Contact.class);
arp.addMapping("news", "id", News.class);
arp.addMapping("resource", "id", Resource.class);
arp.addMapping("role", "id", Role.class);
arp.addMapping("role_resource", "id", RoleResource.class);
arp.addMapping("s_log", "id", SLog.class);
arp.addMapping("seo", "id", Seo.class);
arp.addMapping("seo_log", "id", SeoLog.class);
arp.addMapping("service", "id", Service.class);
arp.addMapping("user", "id", User.class);
arp.addMapping("user_role", "id", UserRole.class);
}
}
如果不是赶紧调整。

2017-01-18 22:22

第一先看你的model类继承对了没,如果是用插件自动生成的话,记得在你的配置上用如:
//添加表映射
_MappingKit.mapping(arp);
如果是手动自己生成的话也要注意在配置上做实体映射下。

2017-01-18 22:18

先看下开发手册,然后拿官方demo部署跑起来,然后在demo基本之上完成你第天计划功能,想生成bean,官主有个自动生成model的插件generator这个生成就可以了。

2017-01-18 10:03

@yinhongakg 对了,如果你想用中间件的话,这里有:http://www.oschina.net/news/69360/kisso-3-5,这个中间件,也有集成例子,即拿即用。

2017-01-17 16:01

@asdf123 找到就好,记得回来分享下,支持下社区发展。

2017-01-17 11:32

@asdf123 把你的前后台代码片段贴出来看看

2017-01-17 11:07

单步调试跟踪下,从你截图看你那个地方肯定调用两了

2017-01-17 11:06

给个传送门给你http://www.jfinal.com/feedback/676,自己参考下。

2017-01-17 11:02

最后来个传送门:官方回复:http://www.jfinal.com/feedback/622

2017-01-17 10:59

可以肯定用JFinal的Interceptor(拦截器)上实现比如在线用户统计等等功能,当然你还是想用HttpSessionListener的话,因为JFinal在对servlet的极简封装的,想怎么玩就怎么玩,你想实现HttpSessionListtener功能,也可自己开僻的,比如说在些统计的,完全用一个独立的如HttpSessionListener来做也行,最后自己在web.xml上配置下这个监听器就好了。

2017-01-16 21:08

更高深的东西,你只等波总给你回答了哦。

2017-01-16 21:05

太大的道理不是很了解,一些小的注意事项倒有留一手:比如说cookie串要加密,并设置为isHttpOnly,只要控制不了你的cookie串,攻击第一步就通过不了。
如setCookie(Const.Co.USER, openId, Const.COOKIE_TIME, true);防止cookie非法修改。

2017-01-16 13:51

配置好直接运行main入口就可以将项目运行起来了,JFinal很早很早版本就这样做了。

2017-01-16 13:48

JFinal内置Jetty服务,可以直接如public static void main(String[] args) {
JFinal.start("src/main/webapp", 80, 5);
}
建议你多看下手册了解下。