JQGrid从java Servlet读取数据
2008-10-24 10:32
新建Servlet如下
package org.crystal.jqgrid;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.crystal.mapping.*;
import java.io.PrintWriter;
import java.util.*;
public class Jqgrid extends HttpServlet {
private String defaultEncoding = "ISO-8859-1";
@Override
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
response.setContentType("application/json;charset=" + getEncoding());
PrintWriter out = response.getWriter();
String json="";
/*System.out.println(request.getQueryString());
System.out.println(request.getMethod());
System.out.println(request.getParameter("name"));
System.out.println(request.getParameter("mem"));
*/
System.out.println("*******************************************");
System.out.println("Out Print all Post & Get getParameter...");
Map map=request.getParameterMap();
Iterator it = map.entrySet().iterator();
while (it.hasNext()) {
Map.Entry entry = (Map.Entry) it.next();
Object key = entry.getKey();
Object value = entry.getValue();
System.out.println("key:"+key.toString()+" value:"+request.getParameter(key.toString()));
}
System.out.println("End Out Print all Post & Get getParameter");
System.out.println("*******************************************");
//System.out.println("org.crystal.jqgrid.doGet"); String json="";
json +="{ total: '200', page: '2', records: '30',rows : [ ";
json +="{id:'1', cell:['cell11', 'cell12', 'cell13']}";
json +=", {id:'2', cell:['cell21', 'cell22', 'cell23']}";
json +=" ] }";
out.print(""+json+"");
//
}
@Override
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
/**
* Retrieve the encoding <p/>
*
* @return The encoding associated with this template (defaults to the value
* of 'struts.i18n.encoding' property)
*/
protected String getEncoding() {
String encoding = this.defaultEncoding;
if (encoding == null) {
encoding = System.getProperty("file.encoding");
}
if (encoding == null) {
encoding = "UTF-8";
}
return encoding;
}
}
在web.xml中配置访问上下文
<servlet>
<servlet-name>Jqgrid</servlet-name>
<servlet-class>org.crystal.jqgrid.Jqgrid</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Jqgrid</servlet-name>
<url-pattern>/servlet/Jqgrid</url-pattern>
</servlet-mapping>
编辑客户端的jsp
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>jqGrid</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<link rel="stylesheet" type="text/css" media="screen" href="jquery/jqGrid/themes/basic/grid.css" />
<link rel="stylesheet" type="text/css" media="screen" href="jquery/jqGrid/themes/jqModal.css" />
<script src="jquery/jquery.js" type="text/javascript"></script>
<script src="jquery/jqGrid/jquery.jqGrid.js" type="text/javascript"></script>
<script src="jquery/jqGrid/js/jqModal.js" type="text/javascript"></script>
<script src="jquery/jqGrid/js/jqDnR.js" type="text/javascript"></script>
</head>
<body>
<script type="text/javascript">
jQuery(document).ready(function(){
jQuery("#list").jqGrid({
url:'servlet/Jqgrid',
editurl:'servlet/Jqgrid',
datatype: "json",
loadtext:'正在加载...',
height: 250,
colNames:['id,'invdate', 'name'],
colModel:[
{name:'id',index:'id', width:70, sorttype:"int", editable: true},
{name:'invdate',index:'invdate', width:90, sorttype:"date", editable: true},
{name:'name',index:'name', width:100, editable: true}
],
pager: jQuery('#pager'),
rowNum:4,
rowList:[3,6,9,12],
sortname: 'id',
sortorder: "desc",
viewrecords: true,
imgpath: 'jquery/jqGrid/themes/basic/images',
caption: '测试实例'
}).navGrid('#pager',
{edit:true,add:true,del:true,search:false }
);
});
//
</script>
<table id="list" class="scroll"></table>
<div id="pager" class="scroll" style="text-align: center;"></div>
</body>
</html>
发布程序并访问客户端的jsp页面
分享到:
相关推荐
在jqGrid示例中,Servlet将接收来自前端的请求,比如获取数据、保存或更新数据,然后执行相应的数据库操作,并将结果以JSON格式返回给前端。 3. **JSON数据交换**:jqGrid与服务器通信通常采用JSON(JavaScript ...
在这个"jqgrid加载本地数据并且分页例子"中,我们将深入探讨如何利用jqGrid实现从本地数据源加载数据并进行分页显示。 首先,要理解jqGrid的工作原理。它基于jQuery库,通过HTML表格元素来渲染数据,并通过AJAX从...
下面可以获取选择一行的id,如果你选择多行,那下面的id是最后选择的行的id: ...如果想获取选择的行的数据,只要传入rowId即可,如下: var rowData = $(“#gridTable”).jqGrid(‘getRowData',rowId);
在jqGrid中,本地数据分页可以通过设置`datatype`为`local`来实现。这样做可以减少服务器负载,因为只需要传输当前页面所需的数据。 **jqGrid本地数据分页实现步骤** 1. **引入jqGrid库和样式** 首先,在HTML文件...
在压缩包中的代码示例中,我们可以看到如何整合上述概念,构建一个完整的jqGrid表格,包括查询、分页和数据读取等功能。通过学习和理解这段代码,开发者能够熟练掌握jqGrid的使用,从而在项目中创建高效的数据展示和...
jqGrid是一款功能强大的JavaScript表格插件,用于在Web页面中展示和操作数据。它支持多种数据源,包括本地数据和远程数据(如JSON、XML、CSV等)。在这个"jqgrid加载本地数据分页Demo"中,我们将深入探讨如何利用...
jqGrid是一款功能强大的JavaScript表格插件,用于在Web页面中展示和操作数据。它基于jQuery库,提供了丰富的功能,如数据分页、排序、搜索、编辑等,支持JSON、XML、CSV等多种数据格式,适用于创建交互式的动态数据...
jqGrid支持从服务器动态加载数据,可以使用`url`参数指定数据源,通过`datatype`参数设置数据类型(如`json`或`xml`)。数据加载过程中,还可以配置分页、排序和搜索等功能,如`loadonce`(一次性加载所有数据)、`...
根据提供的文件信息,我们可以提取出关于jqGrid的知识点,具体如下: 1. jqGrid基础概念 jqGrid是一个用于Web应用程序的JavaScript表格插件,它遵循典型的B/S(浏览器/服务器)架构。在这种架构中,服务器端负责...
在本系统中,jqgrid被用来展示交通数据,如交通流量、车辆违章信息等,用户可以通过自定义筛选条件,快速查询和分析所需数据。jqgrid的分页、排序和搜索功能使得数据管理变得简单易用,提高了数据处理的效率。 ...
在IT领域,尤其是在Web开发中,数据展示是一个关键部分,特别是在处理大量结构化数据时。JqGrid是一款基于jQuery的数据表格插件,它提供了一种高效、可定制的方式来展示和操作表格数据。本文将深入探讨“数据表格...
JQGrid提供了一种灵活的方式来处理数据,无论是从服务器获取还是直接使用本地数据。本地数据分页意味着数据已经在客户端,JQGrid会负责处理这些数据的分页显示,无需与服务器进行额外的通信。这对于数据量不大或者不...
在传统的JQGrid使用中,数据通常通过异步请求(Ajax)从服务器获取,并且每一页的数据会在用户滚动或点击分页按钮时单独请求。这种方式对于大数据集来说是非常高效的,因为它避免了不必要的数据传输,降低了服务器...
在这个“jqGrid表格内容查询读取代码”中,我们将深入探讨如何使用jqGrid来构建一个具有查询和读取功能的表格。 首先,我们需要引入jqGrid的JavaScript和CSS文件。这些文件通常在`jqgrid`目录下,包括`jquery....
在本文中,我们将深入探讨如何在JQuery Mobile中实现jqGrid数据分组,这是一个非常实用的功能,可以帮助用户更有效地组织和展示大量数据。首先,我们需要理解JQuery Mobile和jqGrid的基本概念。 JQuery Mobile是一...
jqGrid是一款功能强大的JavaScript表格插件,主要用于在Web应用中展示和操作数据。它基于jQuery库,提供了丰富的功能,如数据排序、分页、搜索、编辑等,支持JSON、XML、CSV等多种数据格式,适用于创建复杂的网格...
本例子将展示如何使用jqGrid从本地XML文件中读取数据并显示在一个表格中。 首先,我们来看`index.html`或`testjq.html`这两个HTML文件,它们是网页的主体部分。通常,这两个文件会包含jqGrid所需的CSS和JS文件引用...
`jqGrid`是一款基于JavaScript的开源数据网格组件,主要用于在Web应用中展示和管理大量结构化数据。它提供了丰富的特性和功能,包括数据的分页、排序、过滤、编辑以及对服务器端数据的异步操作。jqGrid与jQuery库...
在网页应用中,尤其是在处理大量数据时,jqGrid是一个非常实用的选择。 首先,jqGrid的安装与引入是使用该插件的第一步。通常,你可以通过下载jqGrid的源码或者使用CDN链接将其引入到项目中。在HTML文件中,需要...