`

spring3 mvc jquery easyui datagrid json

阅读更多

通过maven pom.xml引入包      

<dependency>
            <groupId>org.codehaus.jackson</groupId>
            <artifactId>jackson-core-asl</artifactId>
        </dependency>

        <dependency>
            <groupId>org.codehaus.jackson</groupId>
            <artifactId>jackson-mapper-asl</artifactId>
        </dependency>

 

版本为1.0.0

 

注意不能同时引用多个版本的jar包。

 

在spring mvc 配置文件中加入

<!-- json 转化 -->
    <bean id="messageAdapter"
        class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
        <property name="messageConverters">
            <util:list>
                <bean
                    class="org.springframework.http.converter.StringHttpMessageConverter" />
                <bean
                    class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter" />
            </util:list>
        </property>
    </bean>

 

控制层

@RequestMapping("/g/getItems")
    @ResponseBody
    public Map<String, Object> getItems(){
        log.info("firstIndex:"+firstindex);
        log.info("maxresult:"+maxresult);
        QueryResult<AskOne> r = resourcesService.getScrollData(AskOne.class,
                firstindex, maxresult);
        List<AskOne> items = r.getResultlist();
        if(items!=null&&items.size()>0){
            for(AskOne a : items){
                String title = a.getAskTitle();
                if(title!=null&&title.length()>30){
                    title = title.substring(0, 30);
                    a.setAskTitle(title);
                }
            }
        }
        long total = r.getTotalrecord();
        Map<String, Object> result = new HashMap<String, Object>();
        result.put("total", total);
        result.put("rows", items);
        return result;

    }

 

页面

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>资源列表_资源管理_问个够</title>
    <link rel="stylesheet" type="text/css" href="../resources/js/jquery/easyui/themes/default/easyui.css">
    <link rel="stylesheet" type="text/css" href="../resources/js/jquery/easyui/themes/icon.css">
    <script type="text/javascript" src="../resources/js/jquery/easyui/jquery-1.4.4.min.js"></script>
    <script type="text/javascript" src="../resources/js/jquery/easyui/jquery.easyui.min.js"></script>
    <script>
        $(function(){
            $('#resource').datagrid({
                title:'资源数据列表',
                width:1024,
                height:450,
                nowrap: false,
                striped: true,
                collapsible:true,
                url:'/g/getItems',
                sortName: 'code',
                sortOrder: 'desc',
                remoteSort: false,
                idField:'id',
                loadMsg:'正在加载....',
                frozenColumns:[[
                    {field:'ck',checkbox:true},
                    {title:'全选',field:'code',width:80,sortable:true}
                ]],
                columns:[[
                    {title:'基本数据信息',colspan:3},
                    {field:'opt',title:'操作',width:120,align:'center', rowspan:2,
                        formatter:function(value,rec){
                            return '<span style="color:red"><a href=\"#\">查看</a> 编辑  删除</span>';
                        }
                    }
                ],[
                    {field:'askTitle',title:'问答主题',width:360},
                    {field:'keyword',title:'关键词',width:120,rowspan:2,sortable:true,
                        sorter:function(a,b){
                            return (a>b?1:-1);
                        }
                    },
                    {field:'askPerson',title:'提问人',width:120
                    }
                ]],
                pagination:true,//是否显示分页工具栏
                rownumbers:true,
                toolbar:[{
                    id:'btnadd',
                    text:'添加',
                    iconCls:'icon-add',
                    handler:function(){
                        $('#btnsave').linkbutton('enable');
                        alert('add')
                    }
                },{
                    id:'btncut',
                    text:'Cut',
                    iconCls:'icon-cut',
                    handler:function(){
                        $('#btnsave').linkbutton('enable');
                        alert('cut')
                    }
                },'-',{
                    id:'btnsave',
                    text:'Save',
                    disabled:true,
                    iconCls:'icon-save',
                    handler:function(){
                        $('#btnsave').linkbutton('disable');
                        alert('save')
                    }
                }]
            });
            var p = $('#resource').datagrid('getPager');
            if (p){
                $(p).pagination({
                    onBeforeRefresh:function(){
                        alert('before refresh');
                    }
                });
            }
        });
        function resize(){
            $('#resource').datagrid('resize', {
                width:1024,
                height:400
            });
        }
        function getSelected(){
            var selected = $('#resource').datagrid('getSelected');
            if (selected){
                alert(selected.code+":"+selected.name+":"+selected.addr+":"+selected.col4);
            }
        }
        function getSelections(){
            var ids = [];
            var rows = $('#resource').datagrid('getSelections');
            for(var i=0;i<rows.length;i++){
                ids.push(rows[i].code);
            }
            alert(ids.join(':'));
        }
        function clearSelections(){
            $('#resource').datagrid('clearSelections');
        }
        function selectRow(){
            $('#resource').datagrid('selectRow',2);
        }
        function selectRecord(){
            $('#resource').datagrid('selectRecord','002');
        }
        function unselectRow(){
            $('#resource').datagrid('unselectRow',2);
        }
        function mergeCells(){
            $('#resource').datagrid('mergeCells',{
                index:2,
                field:'addr',
                rowspan:2,
                colspan:2
            });
        }
    </script>
</head>
<body>
    <table id="resource"></table>
   
</body>
</html>

 

页面:

  • 大小: 71 KB
分享到:
评论
2 楼 hzgz402 2014-01-09  
888888
1 楼 arong 2011-02-09  
学习,能否提供提交表单的controller的例子,谢谢!

相关推荐

    spring mvc+jquery easyui CRUD

    在本项目中,我们主要探讨的是如何利用Spring MVC框架与jQuery EasyUI库来实现一个基本的CRUD(创建、读取、更新、删除)功能。Spring MVC是Java平台上的一个强大的MVC(Model-View-Controller)框架,它提供了一个...

    Spring Boot 系列教程 EasyUI-datagrid

    **Spring Boot 系列教程 EasyUI-datagrid** 在IT领域,Spring Boot是一个极其流行的Java框架,它简化了基于Spring的应用程序开发,通过自动配置和起步依赖使得开发者可以快速上手。EasyUI则是一个轻量级的前端框架...

    Springmvc+MyBatis+JQueryEasyUI

    在提供的资源包中,可能包含了一个已经配置好并可以运行的示例项目,包括数据库脚本、Spring MVC的配置文件、MyBatis的Mapper和实体类、以及使用JQueryEasyUI编写的前端页面。这样的例子可以帮助初学者快速理解这三...

    spring mvc 注解 easyui 分页

    当我们结合Spring MVC和EasyUI时,可以实现数据的分页显示,这在处理大量数据时尤为重要,可以提高用户体验并减少服务器负载。 在Spring MVC中,我们通常会使用注解来简化配置和代码。对于分页功能,我们可以利用`@...

    jquery-easyui-1.2 版本

    jQuery EasyUI 能很好地与后端框架如 Spring MVC、ASP.NET 等配合,通过 AJAX 实现前后端数据交互。同时,它也可以与 jQuery UI、Bootstrap 等其他前端库协同工作,提供更加丰富的用户体验。 7. **学习与实践** ...

    JQuery EasyUI 学习笔记珍藏版

    2. **与后台框架的配合**:如与Spring MVC、Django、Express等后端框架的整合,实现前后端分离开发。 3. **与jQuery插件的协同**:了解如何在jQuery EasyUI基础上扩展或集成其他jQuery插件,丰富功能。 通过深入...

    jQueryEasyUI

    使用jQuery EasyUI的项目通常需要配合后端框架如Spring MVC或Node.js等,通过JSON数据交换实现前后端分离。结合文件名"jQuery_easyUI参考",我们可以推测这是一个包含jQuery EasyUI相关教程或参考文档的压缩包,可以...

    Jquery-easyUI动态菜单

    为了实现动态加载,你需要在服务器端(可能是Spring MVC或Servlet)设置一个返回JSON数据的接口,这些数据描述了菜单的层级关系。例如,每个菜单项可能包含ID、文本、URL和子菜单数组。 **4. 分页功能** 在EasyUI中...

    easyui datagird增删改分页例子

    描述中提到 "struts1.3+spring2+Hibernate json,easyui datagird 学习easyui 做的一个小例子" 指出这个项目是使用Struts1.3作为MVC框架,Spring2处理依赖注入和事务管理,Hibernate作为ORM框架来操作数据库,而JSON...

    jqueryEasyui demo

    这个"jqueryEasyui demo"压缩包文件包含了一系列基本的示例,帮助我们了解并掌握jQuery EasyUI的使用方法。 1. **jQuery EasyUI 组件介绍** - **对话框(Dialog)**:用于创建可弹出的窗口,常用于信息提示、表单...

    MySql + JDBC +EasyUI DataGrid实现数据表格的展示和分页

    后端通常使用Spring MVC或类似的框架来构建RESTful服务。在控制器中,根据前端发送的请求参数,使用JDBC工具类执行分页查询,获取数据后转化为JSON格式返回给前端。 **7. 数据传输对象(DTO)** 为了将数据库中的...

    jquery-easyui-1.5.3

    2. **MVC 模式**:可以很好地与后端 MVC 框架(如 ASP.NET MVC、Spring MVC 等)结合,实现前后端分离的开发模式。 3. **JSON 数据格式**:组件与服务器端的数据交换通常采用 JSON 格式,易于解析和传输。 五、...

    jquery-Easyui引用与例子

    jQuery EasyUI 可以与后端框架(如Spring MVC、ASP.NET MVC)配合使用,实现数据的动态加载和提交。同时,也能与 AJAX、JSON、XML 等数据格式无缝对接,方便前后端交互。 ### 6. 学习资源与社区支持 - 官方网站:...

    jQuery EasyUI 1.5.1 中文API文档(chm、exe、pdf)

    1. 结合后台框架(如Spring MVC、ASP.NET)实现前后端分离。 2. 使用JSON格式传递数据,提高性能。 3. 对组件进行适当的自定义,以满足特定项目需求。 4. 合理使用组件的异步加载和分页功能,优化用户体验。 5. 注意...

    jquery-easyui-1.2.3

    - 通过 JSON 数据格式,可以轻松地与服务器端的 MVC 框架(如 ASP.NET MVC、Spring MVC)进行集成。 总的来说,jQuery EasyUI 1.2.3 是一个强大且易用的前端开发工具,它简化了 Web 应用的界面构建,为开发者提供了...

    spring整合easyui

    例如,使用`datagrid`组件时,可以设置其`url`属性指向Spring MVC的控制器方法,这样当用户在界面上操作时,datagrid会自动向服务器发送请求,获取或更新数据。 为了进一步提高用户体验,EasyUI还提供了丰富的API和...

    s2s3h3、easyui界面、权限过滤、可使用json的简单登陆系统1

    s2s3h3可能是一个自定义或者特定项目使用的框架,它可能结合了S2(可能是Struts2,一个基于MVC设计模式的Java Web开发框架)和S3(可能是Spring3,一个全面的企业应用框架),以及H3(可能是Hibernate3,一个对象...

    jquery easyui api

    jQuery EasyUI 是一个基于 jQuery 的前端框架,它提供了一系列丰富的组件和插件,用于快速构建交互式的Web应用...在实际项目中,结合后端框架(如 Spring MVC、ASP.NET 等)和数据库,可以构建出功能完善的Web应用。

    spring+springMVC+mybatis+easyui 增删查改以及分页源码

    标题 "spring+springMVC+mybatis+easyui 增删查改以及分页源码" 描述了一个使用SSM(Spring、SpringMVC、MyBatis)框架与EasyUI前端库联合实现的Web应用项目,特别是关注于CRUD(创建、读取、更新、删除)操作和无...

Global site tag (gtag.js) - Google Analytics