2017-10-26 11:51

1:先将图片上传到 oss,然后得到 oss 上的路径,将这个路径给到 content 中
2:不要用 session 来存这类数据,多图片可以用结构化的数据来传递,例如用 json

2017-10-26 10:35

用下 Model.put(Model) 方法即可:
b.put(a);

2017-10-25 18:02

ContextPathHandler 中的操作与 setAttr 没有本质区别,都是调用 request.setAttrubite(...) 而已

再用一个更好的解决方案:
public void configEngine(Engine me) {
me.addSharedObject("path", JFinal.me().getContextPath());
}

2017-10-25 17:58

@jsm 试一下在controller 中用一下 setAttr("myPath", "abc"),然后页面用 #(myPath),看有没有显示出来

2017-10-25 17:26

得先确定 view type 是不是 jfinal 的:
me.setViewType(ViewType.JFINAL_TEMPLATE)

控制器中使用 render(String) 或者 renderTemplate(String) 这两个方法才可以

2017-10-25 16:40

@圣威 模板中的 #(...) #for #if 这些是指令或者表达式,只有在经手了 jfinal template engine 渲染后才会被动态替换成相应的值

建议仔细看下 jfinal 手册,都是基础

2017-10-25 16:38

执行:
List<Record> list = Db.find(sql, ...);

取出:
list.get(i).get("a");
list.get(i).get("b");

2017-10-25 16:37

@songhuaming2000 如果设置为 false,那么 engine 不会检查你的模板是否被改过了,这样做的好处是生产环境性能更好

2017-10-25 16:36

jfinal 专注于 MVC + ORM,并未提供服务治理的功能

服务治理是另一个领域的事情了

2017-10-25 12:26

@netwild jfinal 中的 IRenderFactory 接口具有非常明确的目的,就是为了实现 Render 实现类的接管,对 RenderFactory 进行抽象便可实现

2017-10-25 11:22

#(BASE_PATH) 是用的 jfinal template engine,确定一下配置:
me.setViewType(ViewType.JFINAL_TEMPLATE);

再确定控制器中用的是: render(String);

2017-10-25 11:20

中断的连接后期恢复,注意配置好 DruidPlugin 即可, druid 有自己的重连机制,尽可能不要自己处理

2017-10-25 11:20

参考 jfinal 手册第 5.13 章,用这种方式启动 ActiveRecordPlugin,而不要使用 me.add(arp) 的方式去启动

将 ActiveRecordPlugin 的启动放在独立的线程中,就不会影响 jfinal 启动主线程

2017-10-25 10:50

@小周子 jquery form 是极其好用的,它的最大的好处是你的 form 表单完全按常规方式去组织,心中没有 ajax 什么事情,而后用 jquery form 的一个 ajaxForm 方法来发起 ajax 请求

相当于将普通请求自动接管,并自动转换成 ajax 请求,非常省心,本站所有数据提交全用的这种方式