将数据以json字符串格式传到前台请求页面
1.前台ajax方法(这个是在FlowDocAction的add.jsp页面)
//序列号
var preFileNo = factoryCode+deptCode+"-"+modelSeriesCode+"-"+workProcessCode;
var yz=$.ajax({
type:'get',
url:'FlowDocVersion!getSort.shtml?preFileNo='+preFileNo,
cache:false,
dataType:'json',
success:function(data){
if(data){
//将json字符串转换为json对象,因为要通过点的方法来拿它的属性 eval('('+str+')');
var obj = eval('(' + data + ')');
alert(obj.preFileNo);
}
},
error:function(data){
alert("出错了");
}
});
2.后台页面:因为此处是ssh的action,方法返回String类型默认去找对应页面,而请求的页面是另一个action的result对应的页面,所以此处的
(这里是在FlowDocVersinoAction.java类里)
//文件编码
public String getSort() throws Exception {
try {
//查询所有类似的文件
String sql="select FileNo from FlowDocVersion where Status <>0 and FileNo like '"+preFileNo+"%'";
System.out.println("getSort.sql:"+sql);
List<FlowDocVersion> fileNoList = new FlowDocVersionFacade().find(sql,"FlowDocVersion.FileNo");
int max = 0 ;
if(fileNoList.size()==0){//没有与当前新增文件编码相同的文件编码
preFileNo = preFileNo+"01";
//将数据以json字符串形式响应到请求页面start
HttpServletResponse response=ServletActionContext.getResponse();
response.setContentType("text/html");
PrintWriter out;
out = response.getWriter();
//将要被返回到客户端的对象
JSONObject json=new JSONObject();
json.accumulate("preFileNo", preFileNo);
out.println(json.toString());
out.flush();
out.close();
//将数据以json字符串形式传到请求页面end
System.out.println(preFileNo);
return "";
}else {
for(FlowDocVersion e:fileNoList){
//拿到文件编码后边的序号
String sort = e.getFileNo().substring(preFileNo.length(), e.getFileNo().length());
if(sort.length()>0){
//解决 NumberFormatException
//把最大序号赋给max
try{
int i = Integer.valueOf(sort);
if(max<i){
max = i;
}
}catch (NumberFormatException ep) {
preFileNo = preFileNo+"01";
System.out.println(preFileNo);
}
}
}
max=max+1;//最大序号+1作为新增文件的序号
if(max<10){//小于10个位用0填补
preFileNo = preFileNo+"0"+max;
}else{
preFileNo = preFileNo+max;
}
}
return null;
}catch(Exception e) {
this.setMsg("生成文档编码出错");
Logger.getLogger(this.getClass()).error("FlowDocVersionAction getSort() Exception", e);
return ERROR;
}
}
将数据以json字符串格式传到前台请求页面的更多相关文章
- PHP连接mysql数据库,并将取出的数据以json的格式输出
<?php error_reporting(E_ALL || ~E_NOTICE); header("Access-Control-Allow-Origin:*");//此处 ...
- 后台拼接json字符串,传到前台时注意特殊符号处理
1.后台拼接常用的形式: sb.AppendFormat("\"字段名\":\"{0}\"", i + 1); 这个要注意字符串截断 ...
- urlencode($url):把url转义,当字符串数据以url的形式传递给web服务器时,字符串中是不允许出现空格和特殊字符串的
1.对url进行编码转义
- Java将其他数据格式转换成json字符串格式
package com.wangbo.util; import java.beans.IntrospectionException; import java.beans.Introspector; i ...
- EasyUI datagrid 分页Json字符串格式
//EasyUI datagrid 分页Json字符串格式 //{"total":xx,"rows":[{...},{...}]} total:总数 rows: ...
- Java将其他数据类型转换成JSON字符串格式
Student.java package com.demo.servlet; import java.util.List; import java.util.Map; public class Stu ...
- JS对象与json字符串格式
<head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8&quo ...
- JSON字符串格式化为JSON对象
根据项目需要,需要对json格式的字符串格式化为json对象,以下是解决方法: 参考文章:https://www.cnblogs.com/cailijuan/p/10150918.html
- JAVA中JSON字符串格式转换
alibabab版本 即com.alibaba.fastjson *以下Node为实体类 //JSON字符串->Map Map map1 = (Map)JSON.parse(strJson); ...
随机推荐
- python面向对象编程 -- 封装、继承
面向对象编程 -- 封装.继承 面向对象编程三要素:封装.继承和多态.本文主要看和封装.继承相关的概念:在python中多态的概念比较模糊,本文不做讨论. 1 封装 封装:将数据和操作组装到一起,对外 ...
- vue2.0获取自定义属性的值
最近在项目中使用了vue.js.在爬坑的路上遇到了很多问题.这里都会给记录下来,今天要说的是怎么获取自定义属性的值. HTML <!DOCTYPE html> <html> & ...
- MySQL 之 数据操作
一 介绍 在MySQL管理软件中,可以通过SQL语句中的DML语言来实现数据的操作,包括 使用INSERT实现数据的插入 UPDATE实现数据的更新 使用DELETE实现数据的删除 使用SELECT ...
- c#反射(2)
public void Test1() { string ClassName="Person"; string MethodName="Test1"; //得到 ...
- C#梳理【集合Collection】
C# 集合(Collection) 集合(Collection)类是专门用于数据存储和检索的类.这些类提供了对栈(stack).队列(queue).列表(list)和哈希表(hash table)的支 ...
- windows下配置host不生效问题
今天遇到了host配置之后不生效的问题,原因是文本编辑器用的是非windows格式,再notepad++右下角切换一下即可,将notepad++ 视图-显示符号-显示所有字符勾上之后可以看到windo ...
- java程序员常用的linux命令
作为一个java后端开发者,在日常工作中肯定会有和linux打交道的时候.下面我整理了一些开发中可能需要用到的一些命令(写这篇随笔前,我也没有什么操作经验,主要防止自己忘记这些操作命令,以后有用到新的 ...
- 3.建造者模式(Builder)
Builder模式的缘起: 假设创建游戏中的一个房屋House设施,该房屋的构建由几部分组成,且各个部分富于变化.如果使用最直观的设计方法,每一个房屋部分的变化,都将导致房屋构建的重新修正... ...
- Linux记录-sysctl.conf优化方案
Sysctl是一个允许您改变正在运行中的Linux系统的接口.它包含一些 TCP/IP 堆栈和虚拟内存系统的高级选项, 这可以让有经验的管理员提高引人注目的系统性能.用sysctl可以读取设置超过五百 ...
- .net导出Excel几种方式比较
数据原共400条数据,21列,我是双核cpu,4G内存1. Excel com组件要3秒左右,上千条30秒+这种方法比较慢,要引用Microsoft.Office.Interop.Excel #reg ...