1. 程式人生 > >spring MVC 時間轉date(四)--mybatis傳入起始時間時,但這傳入時間的引數不是bean裡的解法

spring MVC 時間轉date(四)--mybatis傳入起始時間時,但這傳入時間的引數不是bean裡的解法

jsp裡:

  <td style="width:150px;height:10%;color:#000;padding-left: 10px;padding-bottom: 10px;">
                            <label>開始時間:</label>
                            <input type="text" id="tmbegin" onfocus="WdatePicker({skin:'whyGreen',dateFmt:'yyyy-MM-dd HH:mm:ss'})" class="Wdate" name="tmbegin" value="${tmbegin}"/>
                        </td>
                       <td style="width:150px;height:10%;color:#000;padding-left: 10px;padding-bottom: 10px;">
                            <label>結束時間:</label>
                            <input type="text" id="tmend" onfocus="WdatePicker({skin:'whyGreen',dateFmt:'yyyy-MM-dd HH:mm:ss'})" class="Wdate" name="tmend" value="${tmend}"/>
                        </td>

controller裡:

String tmbegin1=request.getParameter("tmbegin");

String tmend1=request.getParameter("tmend");
SimpleDateFormat sdf1=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
java.util.Date tmbegin2=new  java.util.Date();
java.sql.Timestamp tmbegin=null;
if(!isNull(tmbegin1)){
try {
tmbegin2= (java.util.Date) sdf1.parse(tmbegin1);


 
tmbegin = new java.sql.Timestamp(tmbegin2.getTime());
 
} catch (ParseException e) {

e.printStackTrace();
}


SimpleDateFormat sdf2=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
java.util.Date tmend2=new  java.util.Date();
java.sql.Timestamp tmend=null;
if(!isNull(tmend1)){
try {
tmend2= (java.util.Date) sdf1.parse(tmend1);


 
tmend = new java.sql.Timestamp(tmend2.getTime());
 
} catch (ParseException e) {

e.printStackTrace();
}


HashMap queryParams = new HashMap();
PageInfo pageInfo = new PageInfo();
queryParams.put("stcd", stcd);
 
        Date now = new Date();
        SimpleDateFormat dateFormat1 = new SimpleDateFormat("yyyy");//設定時間為當年的一月一日,也就是今年的剛開始

        SimpleDateFormat dateFormat2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String nowtime1 = dateFormat1.format( now ); //結果為:2016-01-01 00:00:00
        String nowtime2 = dateFormat2.format( now ); 
      
      


        if(!isNull(tmbegin1)){
queryParams.put("tmbegin", tmbegin1);
  }else{
queryParams.put("tmbegin", nowtime1);
 
    }
      if (!isNull(tmend1)){
queryParams.put("tmend", tmend1);
       }else{
        queryParams.put("tmend", nowtime2);
       

       }

/*

mybatis裡:

<select id="queryRain" parameterType="java.util.HashMap"  resultType="java.util.HashMap">
        select * from (select row_number() over (order by id asc) rn, a.*  
        from
        dt_rain a
        <where>
          
            <if test="null != stcd and stcd != ''">
                and stcd=#{stcd}
            </if>
             <if test="null != tmbegin and tmbegin != ''">    //外部傳過來的是String
                and
            tm&gt;=#{tmbegin}
            </if>
           <if test="null != tmend and tmend != ''">
                and
            tm&lt;=#{tmend}
            </if>
        </where>
        
        ) t 
        <where>
            <if test="null != pageInfo">
        t.rn&gt;=#{pageInfo.startRow} and t.rn&lt;=#{pageInfo.endRow} 
        </if>
        </where>
        order by t.rn asc
    </select>

java bean裡部分:

public class Rain extends BaseObject{
     private int id;
     private String pstcd;
     private String stcd;
     private Timestamp tm;
     private Double rain;
     private int intv;
     private Timestamp moditime;

mybatis裡:

  <resultMap id="rainInfo" type="com.szllt.pingshan.entity.data.Rain" >    //如果resultType="java.util.HashMap"寫成這樣,其實這個對映根本沒用到,也就不用考慮javabean和這裡的映射了。
        <id column="id" property="id" />
         <result column="pstcd" property="pstcd" />
        <result column="stcd" property="stcd" />
        <result column="tm" property="tm" />
        <result column="rain" property="rain" />
        <result column="intv" property="intv" />
        <result column="moditime" property="moditime" />
        
       </resultMap>

*/

資料庫:


頁面


相關推薦

spring MVC 時間date()--mybatis傳入起始時間傳入時間引數bean解法

jsp裡:   <td style="width:150px;height:10%;color:#000;padding-left: 10px;padding-bottom: 10px;">                             <la

Spring Boot整合MyBatis打包成jarsetTypeAliasesPackage("xxx")找到類的問題

MyBatis掃描通過VFS來實現 在Spring Boot中,由於是巢狀Jar,導致Mybatis預設的VFS實現DefaultVFS無法掃描巢狀Jar中的類。 解決辦法,實現自定義的VFS,參考DefaultVFS增加對Spring Boot巢狀JAR的處理。 以下為SpringBo

spring boot加mybatis使用Map返回當值為空屬性也會沒有(

call pri per n-n spring fig setter 解決 strong 使用spring boot加mybatis時,設置Map返回,當值為空時屬性也會沒有,就會報錯 在application.properties中加入下面配置,將會解決這個問題。

Spring MVC使用篇()—— 檢視解析器

文章目錄 1、檢視解析器簡介 2、演示案例環境搭建 3、AbstractCa chingViewResolver 4、UrlBasedViewResolver 5、InternalResourceViewResolver 6、XmlVi

Spring MVC中對Date型別操作的一些問題解決

這次在做一個SpringMVC專案,碰到一個與Date型別有關的問題,感覺蠻煩人的: 在domain類中,有一個屬性是Date型別,對其有相關聯的增刪改查功能 。 1、查詢,發現查詢格式有問題,不是和儲存的'yyyy-mm-dd'格式顯示的,剛開始想在存入資料庫或者從資料庫

spring mvc controller轉換date型別

在controller加入下面程式碼 @InitBinder public void bindingPreparation(WebDataBinder binder) { DateFormat dateFormat = n

Spring mvc 關於後臺DATE型別接受傳值的問題

如果bean為的型別為 java.util.DATE這我們可以引入註解@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd hh:mm:ss") ti

JSONObject.fromObject() string實體裡面的時間錯亂的問題

    在把要入庫的資料實體轉成JSON字串發給kafka的時候,出現了問題,轉換完以後,就變成這樣子的了,真的是第一次見到這種,真的是長見識了   然後百度了一下:https://www.cnblogs.com/LiuChunfu/p/4917934.html,找到了大佬的解決方式,  

spring mvc 防止重複提交表單的兩種方法推薦第二種

第一種方法:判斷session中儲存的token 比較麻煩,每次在提交表單時都必須傳入上次的token。而且當一個頁面使用ajax時,多個表單提交就會有問題。 註解Token程式碼: package com.thinkgem.jeesite.common.re

說一些書籍吧其實都是貼於郎鹹平的部落格。時間其他書看少了人會多很多的煩擾所以要補上

關於心靈重建的推薦稻盛和夫《活法(修訂版)》,我認為這是一本人人都應該看的書,為官治企者更應該好好研讀。在物慾橫流、道德淡化、法制不完善的時候,通過心靈的修煉,用正義之心為官,用慈善之心謀財,將“善”與“行善”有機結合,這是我們未來社會發展的方向。因為善是一種信仰,行善是一門

創建httpClient設置timeout時間

httpclient//private static HttpClient httpClient = HttpClientBuilder.create().build(); private static CloseableHttpClient httpClient;// = HttpClientBuilde

beginthreadex()函式在建立多執行緒傳入回撥函式好像只能傳入全域性函式或類的靜態成員函式請問能傳入類的成員函式呢(非靜態)?

C++類成員函式直接作為執行緒回撥函式2009年06月01日 星期一 17:01我以前寫執行緒時要麼老老實實照著宣告寫,要麼使用C++類的靜態成員函式來作為回撥函式,經常會因為執行緒程式碼而破壞封裝.之前雖然知道類成員函式的展開形式,但從沒想過利用過它,昨天看深入ATL時無意中學

MyBatis 插入空值需要指定JdbcType.如#{name,jdbcType=VARCHAR}

在執行SQL時MyBatis會自動通過物件中的屬性給SQL中引數賦值,它會自動將Java型別轉換成資料庫的型別。而一旦傳入的是null它就無法準確判斷這個型別應該是什麼,就有可能將型別轉換錯誤,從而報錯。要解決這個問題,需要針對這些可能為空的欄位,手動指定其轉換時用到的型別。

MyBatis 插入空值需要指定JdbcType

看一看 org.apache.ibatis.type.BaseTypeHandler @Override public void setParameter(PreparedStatement ps, int i, T parameter, JdbcType

util.Date型別資料插入mysql資料庫日期總會少一天,16個小時

插入資料庫前的資料和取出來後的資料 這是簡單的程式碼 檢查了資料庫,生日的型別是date 檢查了資料庫時區的配置,原先是System,我改為了北京時區,都是不行, 再檢查了eclipse的時區配置,也是沒問題 show variables like "%time_

後臺date型別轉換為json字串返回前臺頁面的是long time值問題解決

https://blog.csdn.net/zhanglf02/article/details/77770118問題頁面回顧: 本例環境和框架:maven工程+ssm框架+jdk1.7+tomcat7.0 解決方案: 解決方案分為兩種: 第一種:如果bo(實體類)對應的欄位(

spring mvc時間Stringdate(三)

java.sql.Date和java.sql.Time以及java.sql.Timestamp三個都是java.util.Date的子類(包裝類)。 java.sql.Date是java.util

spring mvc 請求引數String date

以spring boot為背景 1 實現org.springframework.core.convert.converter.Converter介面生成一個自定義Converter。 public class DateConverter implements Converter&l

[]基於Vue+Spring MVC+MyBatis+Shiro+Dubbo開發的分散式後臺管理系統

最近專案中使用了shiro做許可權管理,在開發過程中也踩了一些坑,於是便有了開發個應用鞏固一下所學知識的想法,正好在開發的過程裡學習一下Vue開發。 技術棧方面,現在前後端分離大行其道,於是也採用了前後端分離的模式,前端基於Vue+Element,後端Web基於Spri

spring mvc 日期引數stringdate問題

在很多時候,從前端傳入一個日期字串,通過mvc接收對映為date型別,但是會報錯,這種情況需要在實體類中新增DateTimeFormat註解,設定格式,便可以接收返回public class User { @DateTimeFormat( pattern = "yyy