使用easyui时遇到的问题
2016-05-10 13:42
295 查看
1.datagrid排序
如何设置datagrid参数支持列排序,请查看相关文章,这里不做过多介绍。我使用的方式是在需要排序的字段上加上sortable=“true”
<th field="ftotal" width="50" sortable="true">总计</th>这样当点击列头进行排序时,后台就会传递参数:
然后后台接收参数,拼接到sql语句中执行就可以了。
我遇到的问题时,数据库持久层使用的是mybatis,数据库字段使用了下划线命名方式,例如user_name,create_date等,为了在代码里面便于阅读,使用了骆驼峰的命名方式,当然这个操作是mybatis_genetator完成的。那么datagrid显示的时候,就是这样的
<th field="userName" width="50" sortable="true">用户名</th> <th field="createDate" width="50" sortable="true">创建时间</th>
点击列名排序时,传递的参数就变成了,userName、createDate,显然与数据库里面的字段不一致。
思路一:
使用Java代码将骆驼峰的字段变为下划线命名方式,如果字段映射规则很标准,很准确。例如:userName=>user_name,但是mybatis生成实体是允许使用columnOverride将数据库字段映射成各种名字,所以这种方法不可行。思路二:
mybatis逆向工程生成的Mapper.xml文件里面有resultMap来处理字段映射的问题,那么我们只需要读取这个xml文件,根据property找到column。读取xml是一件很辛苦的事情,所以我也不想这么做。思路三:
既然映射完以后,操作变得这么麻烦,干脆不映射。最终我采用的也是这种方式。只需要在mybatis_generator配置文件里面配置就行了。这样配置完以后,生成的实体就会使用真实的字段名。当然现在仍然可以使用columnOverride进行字段映射。
<table tableName="" domainObjectName=""> <property name="useActualColumnNames" value="true"/> </table>
2.填充表单时datebox不显示数据的问题
相关文章推荐
- 关于uinavigationcontroller跳转时,若跳转到的页面不需要navigationbar,则总显示黑框的处理办法
- Mesh绘制雷达图(UGUI)
- Mesh绘制雷达图(UGUI)
- iOS开发UITableViewCell的选中时的颜色设置(转)
- 【Moqui框架】Moqui连接各种类型的数据库
- 【Arduino官方教程第一辑】示例程序 3-5 模拟信号的校准
- PAT1007 Maximum Subsequence Sum (25)
- UIAlertViewController
- Android更新主线程UI的两种方式handler与runOnUiThread()
- UE4 Pak包加载
- kbuild的makefile模板
- UITabBarController使用
- String,StringBuffer与StringBuilder的区别??
- build 并deploy saiku-query0.1到nexus
- UINavigation和UIScorllView自适应的高度问题
- Xmppframework could not build module dnssd或者libxml
- UIButton常见属性和方法
- iOS去掉UITableView分组时上方空白区域的方法
- J-UI框架踩过的坑
- 延展--用UIView+ViewController