2018-01-23 22:27

Db.tx() 感觉也挺棒的, 个人感觉比 Tx.clsss 好用。。。


boolean tx = Db.tx(new IAtom() {

@Override
public boolean run() throws SQLException {
try {
// 处理业务
return true;
} catch (Exception e) {
log.error("xxx失败", e);
return false;
}
}
});

2018-01-23 22:09

如果想在其他地方让 Tx.clsss 起作用的话, 需要使用 Duang.duang()、Enhancer.enhance() 了, 详见手册:

2018-01-23 17:34

23333, 挤着了。。 处女座的说看了难受。。
借楼:
缓存是怎么回事?

2018-01-23 16:16

.txt 类型的


#for(record : recordList)
----------#(for.count)START----------
学生=#(record.userName)
班级=#(record.className)
课程=#(record.courseName)
教师=#(record.teacherName)
教室=#(record.classRoomName)
预约时间=#date(record.createTime, "yyyy-MM-dd HH:mm")
状态=#(record.type)
请假备注=#(record.remark)
签到情况=#(record.sign)
签到时间=#date(record.signTime")
----------#(for.count)END----------
#end

2018-01-23 09:47

@三圣乡吴彦祖 可以的,文件后缀名叫xx.csv就可以了, 这个分享只是做一个示例,可以导出任何以模版渲染的文本。

就xls与csv相比,做复杂的表头,是一件很麻烦的事情,而且Office是可以把表格文件另存为“.html”的, 这个时候,直接使用这个html当作模版文件,进行数据动态化就可以了。

当然实现这个功能的软件有很多,只是觉得这个学习成本低比较易用。

就我自己使用来说,在数据准备好的情况下,使用这个做导出不要10分钟就完事了,而POI怎么搞也得几个点了,而且做调试预览,这个模版本身就是html, 所以render("xxx.html");浏览器直接请求就能立马看见结果了

2018-01-18 21:43

不用猜了, 肯定是 这个问题:
JFinal 部署在 Tomcat 下推荐方法

2018-01-18 13:55

@macaque 是的, 只要下载下来的时候用Excel打开(会有安全提示非常的不爽),再按保存的时候会提示这个文件是只读文件的,需要另存为,这个时候Excel就保存为真的xls文件了

2018-01-18 11:53

@macaque 是的, 只是下了个html后缀为 .xls 的文件,
这个html的格式是从Excel中导出来,套用的, 所以兼容性,还可以,都能打开。
因为很多时候只是想导出数据,而不是非得弄个真的XLS文件,所以这个比POI导出XLS方便些

2018-01-12 20:11

@tosur 建议读下里面的源码, 很简洁,没有多少代码量,绝对让你收益颇多

2018-01-07 11:49

@懒猫 js模板 还可以独立成文件.js,给它连接进来也不受影响的

2018-01-06 16:49

1 首先查看后台的 resultList 是否有数据。
2 页面直接输出 ${itemList} 看看效果
3 还在用 JSP ? 赶快换enjoy 吧!

JFinal使用技巧-在JSP中使用Enjoy

2018-01-05 23:47

把NGINX的配置贴出来看看,有
proxy_set_header Host $host;
proxy_set_header x-forwarded-for $remote_addr;
吗?
看看kit工具里面写的:
/**
* IpKit 获取 ip 地址的工具类
*/
public class IpKit {

public static String getRealIp(HttpServletRequest request) {
String ip = request.getHeader("X-Real-IP");
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("x-forwarded-for");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("Proxy-Client-IP");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("WL-Proxy-Client-IP");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getRemoteAddr();
}
return ip;
}
所以NGINX得带着传过来的才有的