sukayqwer 2010-12-18 22:03
浏览 221
已采纳

时间类型转换

通过时间去筛选查询出来的信息

错误信息

  public List GetStaPaperListAllByYearsUnite(Date year ,Date year1,String  sunite)
    {  
        StaPaperDAO up=new StaPaperDAO();
        List l=null;
        l=up.findByHQL("  from StaPaper as b where b.staauditing=1 and( b.staPtime between '+year+' and '+year1+') and b.units.ucoding like  '%"+sunite+"%' order by    b.staPid   desc");
        return l;
        
    }
    public List GetStaPaperListAllByYearsUnitePage(Date year ,Date year1, String  sunite,int pageSize, int iCurrentPage)
    {  
        StaPaperDAO up=new StaPaperDAO();
        List l=null;
        l=up.findByHQLPage("   from StaPaper as b where b.staauditing=1 and (b.staPtime between '+year+' and '+year1+') and b.units.ucoding like  '%"+sunite+"%'  order by    b.staPid   desc",pageSize,iCurrentPage);
        return l;
        
    }
      if(request.getParameter("ICK")!=null &&request.getParameter("txtUunits")!=null )
        {
            
            strUnite=request.getParameter("txtUunits").toString().trim();
            strYear=request.getParameter("txtyear").toString().trim();
            strYear1=request.getParameter("txtyear1").toString().trim();
            url="&ICK=1&txtUunits="+request.getParameter("txtUunits")+"&txtyear="+request.getParameter("txtyear")+"&txtyear1="+request.getParameter("txtyear");
             
        }
 
              int PageSize=10;
              int Page=1;
              int totalPage=1;
              int totalrecord=0;
              totalrecord=bll.GetStaPaperListAll().size();
              if(!strUnite.equals("0"))
              {
               totalrecord=bll.GetStaPaperListAllByYearsUnite(Date.valueOf(strYear),Date.valueOf(strYear1),strUnite).size();
              }
              
              
               if(totalrecord % PageSize==0)
              totalPage=totalrecord/PageSize;
              else
              totalPage=(int)Math.floor(totalrecord/PageSize)+1;
              if(totalPage==0)  totalPage=1;
              if(request.getParameter("Page")==null || request.getParameter("Page").equals(""))
              Page=1;
              else
              try
              {
                Page=Integer.parseInt(request.getParameter("Page"));
              }
              catch(java.lang.NumberFormatException e)
              {
              Page=1;
              }
              if(Page<1)  Page=1;
              if(Page>totalPage)  Page=totalPage;
              
 
 
 
        List<StaPaper>  myList=bll.GetStaPaperListAllByPage(PageSize,Page);
      if(!strUnite.equals("0"))
              {
               myList=bll.GetStaPaperListAllByYearsUnitePage(Date.valueOf(strYear),Date.valueOf(strYear1),strUnite,PageSize,Page) ;
              }

 这个问题怎么样解决?

现在变量类型是Date

用Timestamp 也不行

hibernate里面映射是Date ,

sql 2005 数据库表里面的staPtime类型是datetime

所以对于的时间是2010-12-11 00:00:00:0 页面文本框的取值是2010-12-11

 

  • 写回答

1条回答 默认 最新

  • wangpengfeiitta 2010-12-19 10:29
    关注

    这个日期控件生成的短日期类型
    用SimpleDateFormat来转换
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    Date date = sdf.parse("2008-08-08 12:10:12");
    具体请参考JDK API文档

    另外 转换成DATE类型后并不会因为转换前的字符串是什么样子而不同 DATE类型的内部表示永远是一样的 所以你的第2条要求是没有意义的 数据库如何显示这个DATE类型只是数据库自己的关系 和DATE本身无关

    如果你希望要自定义Date的显示 同样可是使用SimpleDateFormat类来实现
    只需要
    String date = sdf.format(new Date());
    就可以了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题