2016-07-25 16:00

其实就是将 freemarker 的写法翻译成 jsp 就可以了,这里我提供了一个现成的可以下载: http://pan.baidu.com/s/1dE3xnNV

2016-07-25 14:55

@绿色的小苹果 爽的功能太多了,一时不知道从何说起,多多关注社区动态,了解最新的 jfinal 发展信息 ^_^

2016-07-25 14:54

@小飞象 既然没有 getter、setter,你用一下 getModel(TagInfo.class, "") 就好了,何必去用 getBean(...)?

2016-07-25 13:07

@绿色的小苹果 2.3 已经开发完了部分功能。jfinal 社区功能完善后,就继续开发 jfinal 2.3

2016-07-25 11:59

@小飞象 报啥异常,getBean 需要先使用 jfinal 2.3 的生成器,为 model 生成 getter、setter 方法

2016-07-25 11:19

jsp 中可以任意书写 java 代码,这种诱惑将导致部分用户写出业务与 view 层混杂型的代码,并且 jsp 由于时间久远,有些用法不是很简洁,而且在早期 jsp 对 jfinal 的 Model、Record 对象输出支持不好,后来是通过引入了 ModelRecordElResover 来支持的。此外,jsp 不支持 layout 功能,这个在模板引擎中已经是标配。

而 freemarker 不允许在模板中写 java 代码,避免了 jsp 在这方面的缺点,并且 freemarker 的学习成本很低,虽然功能十分地多,但常用的功能就那么几个,通常学一下常用功能即可上手开发。比较偏门的功能在需要的时候翻翻手册即可。

最后,建议你学学 freemarker 的使用,主要学一下输出指令与控制指令,基本就可以上手开发了,最好是看看 JPress 这个项目中的用法,比看手册要快,15 分钟学完主要功能用法

2016-07-25 11:10

@海哥 可以尝试跟那些做收费版的人合作来做收费版的,然后你们分成就好,wordpress 的模板已然就是一个市场了,网上很多卖模板的,用户看上自己喜欢的模板是愿意花钱买的

2016-07-25 08:54

@海哥 可否直接将比较知名的 wordpress 模板,先人工处理一下,变成 JPress 的模板库? 然后 JPress 官网提供一个 wordpress 模板频道,让用户可以下载使用这些人工转换过的模板

2016-07-24 18:18

如果是要控制某个用户在某个时间段内发送的消息数量,给个简单的方案:
1:使用 jfinal 提供的 EhcachePlugin 插件,记录用户发送消息的数量

2:关键在于配置缓存的空闲时间,假定需要控制用户在 10 分钟内的发送总量
a:配置 timeToIdleSeconds = 600,表示该缓存空闲 10 分钟后会自动清除,所谓空闲是指缓存没有被使用过的时间段。在你的业务中,也即表示用户没有在发送消息的时间长度的过期时间
b:配置 timeToLiveSeconds = 0,表示缓存最大存活时间为无穷大,也即表示过期时间全部交给前面的 timeToIdelSencond 来控制

3:当用户发消息过来时,先用Integer msgCount = CacheKit.get("msgCount", userName) 获取到的是用户发送的消息总量,如果超出允许的消息数量,则阻止发送,
否则允许发送。

4:使用 CacheKit.put("msgCount", msgCount + 1) 将发送量加 1 并缓存,当 msgCount 为 null 时,取值为 0 即可。

5:此方案的好处是既控制了发送量,也兼顾了时间段控制,如果用户超过 10 分钟没有再发送,缓存会自动失效,又再重头记数。此方案还有一个好处是时间段是动态的,时间段总是与最近的空闲时间关联,而不是与过去某个固定的时间点关联,也控制了一直在发消息的行为

2016-07-24 16:31

@飞羽 此外生产环境,可以设置 me.setDevMode(false),这样的话 JFinal action report 就不会输出了,性能会有所提升

2016-07-24 16:02

@海哥 这才没多长时间,JPress 就这么强大了,不敢想象再过几个月的样子

2016-07-24 15:31

@飞羽 有请求过来,url 为 "/",但你的 "/" 是对应不到某个 action 上的,所以会报这个警告,可通过配置 log4j.properties 中的日志级别为 error,来消除 warn 级的日志信息。

此外,还看到你上面的请求 Method 为 index,UrlPara 也为 index,建议去除 url 中的 "index" 字符串, "index" 是默认action method name,是不需要写在 url 中的

2016-07-24 15:24

@海哥 看到这个 3 个用 JPress 搭建的网站,我看到了 JPress 的前景,太牛逼了

2016-07-24 12:13

将 json string 反向解析成 Model,需要 model 具有 setter、getter 方法才可以,用一下 jfinal 官方首页提供的 Generator demo 改一下配置即可为 model 生成 getter、setter。生成完了以后,项目运行时是可以不需要连接数据库的。