• 大型运输行业实战_day09_1_日期转换与My97DatePicker插件使用


    1.日期转换

        1.1字符串类型转换成时间Date类型

     1  /**
     2      * 给定字符串 转变 为 Date 类型
     3      * @param date 时间
     4      * @param format 时间格式  如:yyyy-MM-dd HH:mm:ss
     5      * @return
     6      */
     7     public static   Date stringToDate(String date,String format)  {
     8         SimpleDateFormat simpleDateFormat = new SimpleDateFormat(format);
     9         Date parse = null;
    10         try {
    11             parse = simpleDateFormat.parse(date);
    12         } catch (ParseException e) {
    13             e.printStackTrace();
    14         }
    15         System.out.println(" parse=  "+parse);
    16         return parse;
    17     }

       重点掌握SimpleDateFormat类,多查看API

     

    1.2.时间Date类型转换成字符串类型

     1 /**
     2      * 将时间类型转变为指定的字符串类型
     3      * @param date 时间
     4      * @param format  需要的字符串格式 如:yyyy-MM-dd HH:mm:ss
     5      * @return
     6      */
     7     public static String formatDate(Date date,String format) {
     8         SimpleDateFormat dateFormat = new SimpleDateFormat(format);
     9         String nowTime = dateFormat.format(date);
    10         return nowTime;
    11     }

    1.3.日期加减运算

     1   /**
     2      * 日期加减运算
     3      * @param date  对指定日期运算
     4      * @param calendarField  对日期中的
     5      *那个类型进行运算,比如1表示对年运算, 5表示对天进行运算
     6      * @param amount 正数表示加,负数表示减
     7      * @return
     8      */
     9     public static Date add(Date date, int calendarField, int amount) {
    10         Calendar c = Calendar.getInstance();
    11         c.setTime(date);
    12         c.add(calendarField, amount);
    13         return c.getTime();
    14     }

     重点掌握SimpleDateFormat类,多查看API

    2.实际案例应用

          需求:在车票列表中显示发车时间,并且高级查询支持发车时间段查询,完成效果如下图:

         

          选择时间时效果如图:

         

         2.1在如果数据库没有发车时间字段这添加发车时间字段

         

        2.2在模型对象中添加该字段

         

      2.3mapper文件修改

         a.添加该字段的获取

          b.查询条件的条件,注意查询的最大时间和最小时间在查询对象中应该有

         

         查询对象的最大时间与最小时间的添加

       

    2.4前端处理

        a.添加My97DatePicker包

           My97DatePicke使用方式可以查看 :官网地址 http://www.my97.net/demo/index.htm

         

       b.在页面中引入该包并使用

        

       c.获取数据以及填充到页面的js函数

     1 function query(_pageSize,_currentPage){
     2        // alert("------query------");
     3         //1.获取参数
     4         var  startStation = $("#startStation").val();
     5         var  stopStation = $("#stopStation").val();
     6       //查询时间范围获取
     7       var  startTimeMin = $("#startTimeMin").val();
     8       var  startTimeMax = $("#startTimeMax").val();
     9         //2.发送请求
    10         var params = {
    11            // startStation:startStation,
    12             stopStation:stopStation,
    13             _pageSize:_pageSize,//分页需要的数据
    14             _currentPage:_currentPage//分页需要的数据
    15         };
    16       if (null!=startStation && ''!=startStation){//开始车站有值的时候才传递参数
    17           params['startStation']=startStation;  //动态向json中添加参数
    18       }
    19       if (null!=startTimeMin && ''!=startTimeMin){//最小时间
    20           params['startTimeMin']=startTimeMin;
    21       }
    22       if (null!=startTimeMax && ''!=startTimeMax){//最大时间
    23           params['startTimeMax']=startTimeMax;
    24       }
    25         var url = '/ticket2/data3';
    26         jQuery.ajax({
    27             type: 'POST',
    28             contentType: 'application/x-www-form-urlencoded',
    29             url: url,
    30             data: params,
    31             dataType: 'json',
    32             success: function (data) {
    33                 //取出列表
    34                var ticketList = data.list;
    35                 //取出分页数据
    36                 var currentPage= data.currentPage;
    37                 var count= data.count;
    38                 var pageSize= data.pageSize;
    39                 var totalPage= data.totalPage;
    40                 var html='<tr>'+
    41                         '<td>编号</td>'+
    42                         '<td>开始车站</td>'+
    43                         '<td>到达车站</td>'+
    44                         '<td>发车时间</td>'+
    45                         '<td>余票数</td>'+
    46                         '<td>线路类型</td>'+
    47                         '<td>操作</td>'+  //添加购票按钮
    48                         '</tr>';
    49                 //解析数据到table表中
    50                 for (var i=0;i<ticketList.length;i++){
    51                     //取出一个对象   java里面的内省机制
    52                     var  ticket = ticketList[i];
    53                     var id = ticket.id;
    54                     var startStation=  ticket.startStation;
    55                     var stopStation=  ticket.stopStation;
    56                     //发车时间
    57                     var startTime = ticket.startTime;
    58                    var standby = ticket.standby;
    59                     var typeName = ticket.typeName;
    60                     html+='<tr>'+
    61                             '<td>'+id+'</td>'+
    62                             '<td>'+startStation+'</td>'+
    63                             '<td>'+stopStation+'</td>'+
    64                             '<td>'+startTime+'</td>'+
    65                             '<td>'+standby+'</td>'+
    66                             '<td>'+typeName+'</td>'+
    67                             '<td><button onclick="buyTicket('+id+')">购买</button></td>'+ //添加购票按钮
    68                             '</tr>';
    69                 }
    70                 //3.填充数据
    71                 //填充列表
    72                 $("#ticketList").html(html);
    73                 //填充分页数据
    74                 $("#totalPage").html(totalPage);
    75                 $("#pageSize").html(pageSize);
    76                 $("#count").html(count);
    77                 $("#currentPage").html(currentPage);
    78             },
    79             error: function (data) {
    80                 alert("失败啦");
    81             }
    82         });
    83     }

       重启项目搞定!

  • 相关阅读:
    Mongodb常用操作(转载)
    java中对象转换工具类,很好用
    IDEA中配置tomcat出现乱码的解决
    小山博客--面试题答案
    Redis简单配置和使用
    线程的控制和线程池
    进程与线程详细解释
    Quartz .Net(定时框架):
    C#面向对象几组关键字的详解(this,base,dynamic,var,const,readonly,is,as)
    C#设计模式--抽象工厂模式(创建型模式)
  • 原文地址:https://www.cnblogs.com/newAndHui/p/8204754.html
Copyright © 2020-2023  润新知