起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: shuaigej

[处理中] 每次查询的结果都不一样

[复制链接]

146

主题

732

帖子

1101

积分

金牌会员

Rank: 6Rank: 6

积分
1101
QQ
 楼主| 发表于 2016-12-9 15:49:41 | 显示全部楼层
xflszwdm=220        
xflszwdm=235        
xflszwdm=110        
xflszwdm=200        
xflszwdm=234        
xflszwdm=210        
xflszwdm=112        
xflszwdm=130        
xflszwdm=213        
xflszwdm=211        
全输出了,请求远程协助
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35878
发表于 2016-12-9 15:53:49 | 显示全部楼层
我说的是js不是java
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

146

主题

732

帖子

1101

积分

金牌会员

Rank: 6Rank: 6

积分
1101
QQ
 楼主| 发表于 2016-12-9 15:59:52 | 显示全部楼层
本帖最后由 shuaigej 于 2016-12-9 16:02 编辑

js里result没取到值,但是为什么没有值呢?
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35878
发表于 2016-12-9 16:12:28 | 显示全部楼层
返回的没有数据
1.java中的返回的类型看看是否正确
2.确认是否有报错F12打开浏览器的开发人员调试工具看看console和network中的监控信息
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

146

主题

732

帖子

1101

积分

金牌会员

Rank: 6Rank: 6

积分
1101
QQ
 楼主| 发表于 2016-12-9 16:15:02 | 显示全部楼层
1、java返回正确
2、没有任何报错
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35878
发表于 2016-12-9 16:35:30 | 显示全部楼层
java中的方法发一下看看
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

146

主题

732

帖子

1101

积分

金牌会员

Rank: 6Rank: 6

积分
1101
QQ
 楼主| 发表于 2016-12-9 16:38:16 | 显示全部楼层
找到原因了,非常奇怪
我输出了rs,数据就全了,这是为什么?
   int rowCount = 0;  
   while(rs.next())
     {
     rowCount++;   
   
                 System.out.print("xflszwdm="+rs.getString("xflszwdm") + "\t");
                 System.out.print("zwdmmc00="+rs.getString("zwdmmc00") + "\n");
    }
   
前台不显示是Table table = Transform.resultSetToTable(rs,"",null);加在while(rs.next())输出后面就不会加载数据,将它放在while(rs.next())输出前面就可以加载数据了,这是为什么?
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35878
发表于 2016-12-9 16:48:29 | 显示全部楼层
把完整的代码发一下
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

146

主题

732

帖子

1101

积分

金牌会员

Rank: 6Rank: 6

积分
1101
QQ
 楼主| 发表于 2016-12-9 16:52:05 | 显示全部楼层
package gems;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.ResultSet;

import java.sql.SQLException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.sql.Date;

import javax.naming.NamingException;

import com.alibaba.fastjson.JSONObject;
import com.justep.baas.action.ActionContext;
import com.justep.baas.data.DataUtils;
import com.justep.baas.data.Table;
import com.justep.baas.data.Transform;

public class Operation {
private static final String DATASOURCE_jiudian = "jiudian";
       
        public static JSONObject getcardinfo(JSONObject params, ActionContext context) throws SQLException, NamingException {
                SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");  
               
                Connection conn = context.getConnection(DATASOURCE_jiudian);
                java.sql.Date begintime = null;
                java.sql.Date endtime = null;;
               
                String xm = params.getString("xm");
                String sfz = params.getString("sfz");
                String dm = params.getString("dm");
                 Calendar c = Calendar.getInstance();   
//                 c.add(Calendar.MONTH, 0);
//                 c.set(Calendar.DAY_OF_MONTH,1);//设置为1号,当前日期既为本月第一天
//                 String first = sdf.format(c.getTime());
                 
                 String year=String.valueOf(c.get(Calendar.YEAR));
             String month=String.valueOf(c.get(Calendar.MONTH)+1);
             String day=String.valueOf(c.get(Calendar.DAY_OF_MONTH));
                 
                 String first=year+"-01-01";
                 String end=year+"-"+month+"-"+day;
                 String first1=params.getString("begintime");
                 String end1=params.getString("endtime");
                 try
                {
                        if (params.getString("begintime")==null)
                        {
                                begintime =java.sql.Date.valueOf(first.toString()); ;
                                endtime =java.sql.Date.valueOf(end.toString()); ;
                        }
                        else
                               
                        {
                                begintime =java.sql.Date.valueOf(first1.toString()); ;
                                endtime =java.sql.Date.valueOf(end1.toString()); ;
                        }
                        // System.out.println("begintime1="+begintime);
                }
                catch(Exception e){

                        //System.out.println("wrong="+e);
                       
                }
               
                CallableStatement stat = conn.prepareCall("{call p_nai_ykt_Repo_student(?, ?,?,?,?,?)}");
                try {
                       
                        // 设置IN参数,参数以顺序匹配
                        stat.setString(1, "0");
                        stat.setDate(2,  begintime);
                        stat.setDate(3, endtime);
                       
                       
                        stat.setString(4, xm);
                        stat.setString(5, dm);
                        stat.setString(6, sfz);
                       
                        // 设置OUT参数
                        //stat.registerOutParameter(2, Types.INTEGER);
                        // 执行存储过程
                        stat.execute();
                        // 获取OUT参数的值
                        //int outValue = stat.getInt(2);
                        // 获取返回的数据集
                        ResultSet rs = stat.getResultSet();
                        // ResultSet转换为Table
                        Table table = Transform.resultSetToTable(rs,"",null);
                        int rowCount = 0;  
                        while(rs.next())
                                        {
                                 rowCount++;   
                               
                       // System.out.print("xflszwdm="+rs.getString("xflszwdm") + "\t");
                        System.out.print("zwdmmc00="+rs.getString("zwdmmc00") + "\n");
                                }
                       

//                                else{
                                //System.out.println(" rowCount="+ rowCount);
//
//                                }
                       
                       
                       
                       
                        rs.close();
                        return Transform.tableToJson(table);
                        //return table;
                }
               
                finally {
                        stat.close();
                }

       
               
        }
       
        public static JSONObject getcardinfo_detail(JSONObject params, ActionContext context) throws SQLException, NamingException {
                SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd ");  
               
                Connection conn = context.getConnection(DATASOURCE_jiudian);
       
                Date begintime = null;
                Date endtime = null;;
                String xm = params.getString("xm");
                String sfz = params.getString("sfz");
                String dm = params.getString("dm");
                 Calendar c = Calendar.getInstance();   
//                 c.add(Calendar.MONTH, 0);
//                 c.set(Calendar.DAY_OF_MONTH,1);//设置为1号,当前日期既为本月第一天
//                 String first = sdf.format(c.getTime());
                 
                 String year=String.valueOf(c.get(Calendar.YEAR));
             String month=String.valueOf(c.get(Calendar.MONTH)+1);
             String day=String.valueOf(c.get(Calendar.DAY_OF_MONTH));
                 
                 String first=year+"-01-01";
                 String end=year+"-"+month+"-"+day;
                 String first1=params.getString("begintime");
                 String end1=params.getString("endtime");
                 
                 try
                        {
                                if (params.getString("begintime")==null)
                                {
                                        begintime =java.sql.Date.valueOf(first.toString()); ;
                                        endtime =java.sql.Date.valueOf(end.toString()); ;
                                }
                                else
                                       
                                {
                                        begintime =java.sql.Date.valueOf(first1.toString()); ;
                                        endtime =java.sql.Date.valueOf(end1.toString()); ;
                                }
                                // System.out.println("begintime1="+begintime);
                                // System.out.println("endime1="+endtime);
                        }
                        catch(Exception e){

                                //System.out.println("wrong="+e);
                               
                        }
                       
                CallableStatement stat = conn.prepareCall("{call p_nai_ykt_Repo_student(?, ?,?,?,?,?)}");
                try {
                        // 设置IN参数,参数以顺序匹配
                       
                        stat.setString(1, "1");
                        stat.setDate(2,  begintime);
                        stat.setDate(3, endtime);
                       
                        stat.setString(4, xm);
                        stat.setString(5, dm);
                        stat.setString(6, sfz);
                       
                       
                        // 设置OUT参数
                        //stat.registerOutParameter(2, Types.INTEGER);
                        // 执行存储过程
                        stat.execute();
                        // 获取OUT参数的值
                        //int outValue = stat.getInt(2);
                        // 获取返回的数据集
                        ResultSet rs = stat.getResultSet();
                        // ResultSet转换为Table
                        //System.out.println("结果集detail的dm="+dm);
                        //System.out.println("detail_begintime1="+begintime);
                        // System.out.println("detail_endime1="+endtime);
                         Table table = Transform.resultSetToTable(rs,"",null);
                         int rowCount = 0;  
                                while(rs.next())
                                                {
                                         rowCount++;   
                                       
                               // System.out.print("xflssj00="+rs.getString("xflssj00") + "\t");
                                System.out.print("xflsje00="+rs.getString("xflsje00") + "\n");
                                        }
                               
                        System.out.println("------------------------------");
                       
                        rs.close();
                        return Transform.tableToJson(table);
                } finally {
                        stat.close();
                }
       
               
        }
}
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35878
发表于 2016-12-9 16:59:49 | 显示全部楼层
ResultSet rs = stat.getResultSet();
                        // ResultSet转换为Table
                        Table table = Transform.resultSetToTable(rs,"",null);
                        rs.close();
                        return Transform.tableToJson(table);
这样写返回的数据就不正确?
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-3-29 06:55 , Processed in 0.063787 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表