java JSONArray 类型数据怎么输出到jsp java获取jsp页面的相对路径上?

随笔- 215&
评论- 865&
  JQuery将Ajax数据请求进行了封装,从而使得该操作实现起来容易许多。以往我们要写很多的代码来实现该功能,现在只需要调用$.ajax()方法,并指明请求的方式、地址、数据类型,以及回调方法等。下面的代码演示了如何将客户端表单数据封装成JSON格式,然后通过JQuery的Ajax请求将数据发送到服务端,并最终将数据存储到数据库中。服务端定义为一个.ashx文件,事实上你可以将服务端定义为任何能接收并处理客户端数据的类型,如Web Service,ASP.NET Page,Handler等。
  首先,在客户端,通过JavaScript脚本将页面表单数据封装成JSON格式。GetJsonData()函数完成了这一功能。然后我们通过$.ajax()方法将数据发送到服务端的RequestData.ashx。其中用到了JSON.stringify()方法,它可以将客户端发送的JSON数据对象进行序列化操作,详细的内容可以看这里
$("#btnSend").click(function() {
$("#request-process-patent").html("正在提交数据,请勿关闭当前窗口...");
type: "POST",
url: "RequestData.ashx",
contentType: "application/ charset=utf-8",
data: JSON.stringify(GetJsonData()),
dataType: "json",
success: function (message) {
if (message & 0) {
alert("请求已提交!我们会尽快与您取得联系");
error: function (message) {
$("#request-process-patent").html("提交数据失败!");
function GetJsonData() {
var json = {
"classid": 2,
"name": $("#tb_name").val(),
"zlclass": "测试类型1,测试类型2,测试类型3",
"pname": $("#tb_contact_people").val(),
"tel": $("#tb_contact_phone").val()
  再来看看服务端的代码,RequestData.ashx.
[Serializable]
public class RequestDataJSON
public int classid { get; set; }
public string name { get; set; }
public string zlclass { get; set; }
public string pname { get; set; }
public string tel { get; set; }
/// &summary&
/// Summary description for RequestData
/// &/summary&
public class RequestData : IHttpHandler
public void ProcessRequest(HttpContext context)
int num = 0;
context.Response.ContentType = "application/json";
var data = context.R
var sr = new StreamReader(data.InputStream);
var stream = sr.ReadToEnd();
var javaScriptSerializer = new JavaScriptSerializer();
var PostedData = javaScriptSerializer.Deserialize&RequestDataJSON&(stream);
tb_query obj = new tb_query();
obj.classid = PostedData.
obj.name = PostedData.
obj.zlclass = PostedData.
obj.pname = PostedData.
obj.tel = PostedData.
obj.ip = context.Request.UserHostAddress.ToString();
obj.posttime = DateTime.Now.ToString();
using (var ctx = new dbEntities())
ctx.tb_query.AddObject(obj);
num = ctx.SaveChanges();
catch (Exception msg)
context.Response.Write(msg.Message);
context.Response.ContentType = "text/plain";
context.Response.Write(num);
public bool IsReusable
return false;
  定义一个带有特征属性的类RequestDataJSON用来将客户端数据进行反序列化,从而获取到数据并存入数据库。上述代码中使用了,从而使得数据库的交互代码变得很简洁。返回结果有两种,对应ajax中的回调函数success()和error()。在success()回调函数中,如果返回结果的值大于0,则表示通过EntityFramework添加到数据库中的记录数;在error()回调函数中,返回结果则显示了失败的具体信息。
  RequestData类继承了IHttpHandler接口,表明它是以同步的方式处理客户端请求。当然,你也可以将其改为继承IHttpAsyncHandler接口来处理异步请求,代码接口大同小异。
阅读(...) 评论()java将JSON字符串格式化到控制台的工具类
final class FormatUtil {
* 打印输入到控制台
* @param jsonStr
* @author lizhgb
下午1:17:22
public static void printJson(String jsonStr) {
System.out.println(formatJson(jsonStr));
* @param jsonStr
* @author lizhgb
下午1:17:35
* @Modified
下午8:55:35
public static String formatJson(String jsonStr)
if (null == jsonStr || "".equals(jsonStr))
return "";
StringBuilder sb = new StringBuilder();
char last = '\0';
char current = '\0';
int indent = 0;
boolean isInQuotationMarks =
for (int i = 0; i & jsonStr.length(); i++)
current = jsonStr.charAt(i);
switch (current)
if (last != '\\')
isInQuotationMarks = !isInQuotationM
sb.append(current);
sb.append(current);
if (!isInQuotationMarks)
sb.append('\n');
addIndentBlank(sb, indent);
if (!isInQuotationMarks)
sb.append('\n');
addIndentBlank(sb, indent);
sb.append(current);
sb.append(current);
if (last != '\\' && !isInQuotationMarks)
sb.append('\n');
addIndentBlank(sb, indent);
sb.append(current);
return sb.toString();
* 添加space
* @param sb
* @param indent
* @author lizhgb
上午10:38:04
private static void addIndentBlank(StringBuilder sb, int indent)
for (int i = 0; i & i++)
sb.append('\t');
没有更多推荐了,搜索结果部分由提高自律,拒绝懒癌!
springmvc 返回json数据给前台jsp页面展示
在实际开发中,我们经常要把需要发数据封装成json中返回给前台,然后对获得的数据进行一些逻辑操作。请看以下例子。
1.controller中获得机构人员信息
@Controller
@RequestMapping(value="/events")
public class TEventsController {
@Autowired
private TEventsServiceImpl
*@descript: 指定机构下所有人员信息
*@param req
*@param jgbh
@RequestMapping(value="/polices",produces = { "application/charset=UTF-8" })
@ResponseBody
public String
findAllpolices(HttpServletRequest req,HttpServletResponse resp, @RequestParam(value="jgbh",required=false)String jgbh){
JSONArray array =new JSONArray();
List&PoliceI& policeList=this.eventsService.findAllPoliceByDeptCode(jgbh);
for(PoliceI police:policeList){
String rybh=police.getRybh();
String xm=police.getXm();
JSONObject obj=new JSONObject();
//前台通过key值获得对应的value值
obj.put("rybh", rybh);
obj.put("xm", xm);
array.add(obj);
return array.toString();
2.jsp页面:
在该div下拼接获得的机构下所有人员信息
id="policeInfos"
style="margin-top:5overflow-y:
height: 150px"&&/div&
type:"post",
url:basePath + "events/polices.do",
data:{"jgbh":jgbh},
dataType:"json",
success : function(data) {
//alert(data);
var vendorJson = eval(data);//把json数据转换为字符串
//拼接机构下人员信息
$("div#policeInfos").html("");
var _htmls="&div style='line-height:20'&";
$.each(vendorJson,function (index , item ) {
//注意这里通过后台传递的key值获得对应的value值,前后必须保持一致,否则获得不了值
//alert("rybh:"+item.rybh); alert("xm:"+item.xm);
_htmls+="&span style='margin-left:20'&&input
style='margin:5'
type='checkbox' name='rybh' value='"+item.rybh+"'/&"+item.xm+"&/span&";
_htmls+="&/div&";
$("div#policeInfos").html(_htmls);
}// end success
});// end ajax
1:在前台要解析获得的json数据,转换为string类型数据。则js方法eval();
2:springmvc返回json数据用@ResponseBody,前台就可以直接获得数据,前提是在springmvc中要进行配置json转换配置,在项目中引入jackson jar包。
没有更多推荐了,JAVA后台如何解析和获取JSP页面传过来的JSON格式的数据_百度知道
JAVA后台如何解析和获取JSP页面传过来的JSON格式的数据
我定义一个这样的格式
var testJson = [{&name&:&abc&,&phone&:1131313},{&name&:&abc&,&phone&:1232313}];
用JQUERY专到到后台
type:&post&,
url:&Controller&,
data:{'mydata':testJson2...
--------------------------------------------------我自已解决了,是传输格式的问题。要把变量 testJson当参数传过去。data:“testJson=”+JSON.stringify(testJson),JAVA后台:String json1 = request.getParameter(&testJson&);最后JSONObject类就能处理了。
我有更好的答案
通过 JSONObject类就可以了首先 你把这几个包 下下来 放到你项目。如果有就不要下了:
1.commons-lang.jar
2.commons-beanutils.jar
3.commons-collections.jar
4.commons-logging.jar
5.ezmorph.jar
6.json-lib-2.2.2-jdk15.jar像你这种是数据形式 就通过 JSONArray
如: JSONArray datasJson = JSONArray.fromObject(datas);最好把datas
toString 一下
采纳率:28%
可以注册JAVA类,直接解析、转换成相应的对象~~~
为您推荐:
其他类似问题
json的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。}

我要回帖

更多关于 java将jsp页面生成pdf 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信