Spring mvc+Easyui遇到的几个问题
简单的一个数据表的增删查改的总体界面的展示效果例如以下图: 
1.datagrid数据载入问题 
datagrid通过url请求后台数据,总记录数和数据行的属性是固定死的。数据行是rows,总记录数为total
List<Map<String,Object>> maplist = configMgrService.listAllAccessIps(pb);
JsonConfig config = new JsonConfig();
config.registerJsonValueProcessor(Timestamp.class, new DateJsonValueProcessor("yyyy-MM-dd HH:mm:ss"));
config.registerJsonValueProcessor(Date.class,new DateJsonValueProcessor("yyyy-MM-dd"));
JSONArray jsonArray=JSONArray.fromObject(maplist,config);//将list转换JSONArray对象
Map<String,Object> result = new HashMap<String,Object>();
result.put("total",pb.getCondition().get("total"));
result.put("rows", jsonArray);
response.setContentType("text/javascript;charset=UTF-8");  //防止中文乱码
ObjectMapper objMap = new ObjectMapper();
objMap.writeValue(response.getWriter(), result); 2.分页的问题 
我配置的是每页显示5条,结果一刷新就是10条,但点击下一页上一页不会有这个问题。
解决:将pageSize属性配置在datagrid属性里边,假设单独通过datagrid来getPager,然后再配置就会出现这个问题
var p = $('#infoAccessLimitDG').datagrid('getPager');
    $(p).pagination({
        pageSize:5,//这里配置的不会有什么作用
        beforePageText : '第',//页数文本框前显示的汉字
        afterPageText : '页    共 {pages} 页',
        displayMsg : '当前显示 {from} - {to} 条记录   共 {total} 条记录'
    });
$("#infoAccessLimitDG").datagrid({
    pageSize:5,//在这里配置才会起作用
    .....
});3.中文乱码 
后台写回数据给前台时。前台中文显示乱码,不知道怎么回事,在xml文件配置解决不了乱码的问题。暂时的解决方式,就是在写数据前,给HttpServletResponse response设置下编码
response.setContentType("text/javascript;charset=UTF-8");  //防止中文乱码
ObjectMapper objMap = new ObjectMapper();
objMap.writeValue(response.getWriter(), result); 4.日期格式化显示 
a.数据列显示的问题:后台数据格式为Date,前端显示的是yyyy-MM-dd 00:00:00格式。给数据列加入格式化器属性
<th field="startDate" formatter="dateFormatter">有效日期(起)</th>
//js代码
function dateFormatter(val,row)
{
    if(val != null)
    {
        var year = val.substring(0,4);
        var month = val.substring(5,7);
        var day = val.substring(8,10);
        return year + '-' + month + '-' + day;
    }
    else return "";
 }5.表单提交。表单中含有日期表单元素,总是提交不到后台~!
 
表单。用的是easyUI提供的日期控件,获取值和设置有点点的不同
$("#infoAccessLimitFm #endDate").datebox('getValue');//获取值
$("#infoAccessLimitFm #startDate").datebox('setValue',row.startDate);//设置值以Ajax方式提交,提交不到后台
$.ajax({
          type:"POST",
          url:url,
          dataType: 'json',
          data:{'limitCode':limitcode,'accessIp':accessIp,'accessType':accessType,
            'appName':appName,'startDate':startDate,'endDate':endDate,'id':ialId},
          success:function(data)
          {
            alert(data.msg);
            $('#dlg').dialog('close');
            $("#infoAccessLimitDG").datagrid("reload");
          },
          error:function(e)
          {
              alert("操作出错:"+e);
          }
      }); 提交时。參数设值时。识别不了这个日期參数。导致提交失败。 
通过注解来格式化
/**
* 有效日期起始日期
 */
@DateTimeFormat(pattern="yyyy-MM-dd")
public Date startDate;Spring mvc+Easyui遇到的几个问题的更多相关文章
- hibernate+spring+mvc+Easyui框架模式下使用grid++report的总结
		最近刚开始接触hibernate+spring+mvc+Easyui框架,也是刚开通了博客,希望能记录一下自己实践出来的东西,让其他人少走弯路. 转让正题,以个人浅薄的认识hibernate对于开发人 ... 
- Spring Data Jpa 实现分页(Spring MVC+easyui)
		spring data jpa很好的对dao层进行了封装,这篇文章主要来写的是实现easyui datagird数据分页,由于各个UI参数不大一样,所以如果使用的是其他UI,得稍作修改.需要说明的是我 ... 
- spring mvc easyui  tree 异步加载树
		使用spring mvc 注解 异步加载一棵树 jsp: <ul id="orgInfoTree"></ul> $(function(){ loadOrgT ... 
- Spring Mvc + Easyui中根据查询结果导出文件
		项目是典型的SpringMvc + Easyui,需求是前台页面根据查询条件导出生成CSV文件. 基本流程是:前台页面通过表单提交的方式,请求后台,后台接受到查询参数,根据查询参数查询到数据集合,最后 ... 
- EasyUI + Spring MVC + hibernate实现增删改查导入导出
		(这是一个故事--) 前言 作为一个JAVA开发工程师,我觉得最基本是需要懂前端.后台以及数据库. 练习的内容很基础,包括:基本增删改查.模糊查询.分页查询.树菜单.上传下载.tab页 主管发我一个已 ... 
- Spring MVC与easyui国际化
		1.建立资源文件 在webapp下建立文件夹language,在其中再添加file,命名分别为language.properties,language_en.properties,language_z ... 
- 对Spring.Net+NHibenate+Asp.Net Mvc+Easyui框架的个人认识
		对Spring.Net+NHibenate+Asp.Net Mvc+Easyui框架的个人认识 初次接触Spring.Net+NHibenate+Asp.Net Mvc+Easyui框架,查阅了相 ... 
- Spring.Net+NHibenate+Asp.Net Mvc+Easyui框架
		Spring.Net+NHibenate+Asp.Net Mvc+Easyui框架 初次接触Spring.Net+NHibenate+Asp.Net Mvc+Easyui框架,查阅了相关资料,了解了框 ... 
- spring MVC +freemarker + easyui 实现sql查询和执行小工具总结
		项目中,有时候线下不能方便的连接项目中的数据源时刻,大部分的问题定位和处理都会存在难度,有时候,一个小工具就能实时的查询和执行当前对应的数据源的库.下面,就本人在项目中实际开发使用的小工具,实时的介绍 ... 
随机推荐
- java list遍历三种方法
			JSONArray jsonArray = new JSONArray(); jsonArray.add("1"); jsonArray.add("2"); j ... 
- python--12、索引知识
			MySQL索引及优化 影响性能的因素 需求:一个论坛帖子总量的统计,附加要求:实时更新.从功能上来看非常容易实现,执行一条 SELECT COUNT(*) from 表名 的 Query 就可以得到结 ... 
- Android 简单的语音播报
			不解释快上车 Main.class package com.example.myapp; import android.app.AlertDialog;import android.os.Bundle ... 
- NodeJS —— 自定义流的实现
			概述 常见的自定义流有四种,Readable(可读流).Writable(可写流).Duplex(双工流)和 Transform(转换流),常见的自定义流应用有 HTTP 请求.响应,crypto 加 ... 
- 解决 HTTP Status 500 - Unable to show problem report: freemarker.core.InvalidReferenceException:
			HTTP Status 500 - Unable to show problem report: freemarker.core.InvalidReferenceException: The foll ... 
- PSP辅助软件开发计划
			PSP辅助软件开发计划 作者: 日期:2013年11月14号 1开发目的 鉴于软件开发过程中,程序员往往无法在规定时间内完成任务,而且无法给出拖延的时间从而造成项目进度计划不准确.开发此软件帮助程序员 ... 
- HTML form without CSRF protection,HTML表单没有CSRF保护
			HTML form without CSRF protection =HTML表单没有CSRF保护 CSRF是伪造客户端请求的一种攻击,CSRF的英文全称是Cross Site Request For ... 
- px-em-rem单位转换
			<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ... 
- C/C++ struct定义、声明、对齐方式
			一.定义/声明方式 第一种:仅有结构体名,不定义/声明变量 struct MyStruct { int i: char a[10]; double b; }:第二种:有结构体名,并声 ... 
- ThinkPHP---TP功能类之附件下载
			[案例]实现公文中附件下载 (1)修改模板文件showList.html,展示列表文件信息 将数据表中的filename(原始文件名)展示到附件下 <td>{$vol.filename}& ... 
