原创 mysql數據庫中字符串格式的13位時間戳轉換爲日期格式

FROM_UNIXTIME(CONVERT(ssco.push_time/1000 , signed),"%Y-%m-%d %H:%i:%s") as pushTime

原创 java自定義對象實現排序

對象排序有兩種方法,自定義排序和實現Java中的比較器接口排序。 對自定義對象排序,我們可以根據自定義對象的數據結構,自定義排序規則來實現。也可以用Java中的兩個常用的接口Comparable和Comparator,實現將自定義對象

原创 springboot整合poi基於excel模板下載的功能實現

現在網上有很多基於poi的excel導入導出功能實現的代碼,大家都寫的很好,但好像關於靜態資源excel模板導出的卻很少。我整理了一下項目中遇到的excel導出的功能代碼,展示如下,希望有所幫助,如有不正確的地方,多多討論。 publ

原创 ISO8601時間格式轉換爲Date

String isoDate = "2018-05-14T03:51:50.153Z" -- ISO8601時間格式 DateTimeFormatter dateTimeFormatter = ISODateTimeForma

原创 mybatis根據條件批量update操作

這裏 update table set column = property 是根據條件將對應的數值更新掉: 代碼如下:

原创 Spring常用註解說明

1.概述 Spring Boot簡化了Spring應用的開發,不需要繁瑣的XML配置就能開發。 那Spring Boot是怎麼實現自動配置的呢? 這就要用到Spring Boot中提供的許多註解: Spring提供XML配置、註

原创 list集合判空,是用isEmpty 還是 null?

要說明這個問題,我們先來看一段簡單的測試代碼: (1) 從上面的代碼可以看出,null 值是來判斷該list對象(list1,list2)有沒有分配內存空間,沒有則爲null。 而 isEmpty()又表示什麼呢? (2) 我們通

原创 SpringBoot+Shiro實現登陸攔截功能

      上一章講到使用自定義的方式來實現用戶登錄的功能,這章採用shiro來實現用戶登陸攔截的功能。      首先介紹下Shiro:Apache Shiro是一個強大且易用的Java安全框架,執行身份驗證、授權、密碼學和會話

原创 Shiro自定義密碼比較器

前文中已經實現了基本的權限控制,使用的是shiro默認提供的密碼比較器,但是在有些情況下,可能需要一些自定義。比如說,想使用自己的加密方式,再者使用ladp進行用戶認證等等。 一、查看源碼 查看HashedCredentials

原创 一種隨機生成加密鹽值的方法

密碼加密的時候,可以選擇性的添加隨機值與密碼明文拼接,然後md5加密,獲得加密後的密碼。下面是一種獲得隨機值的方法: public static String getRandomSalt() { String model = “abc

原创 mybatis多對多查詢出現的java.lang.UnsupportedOperationException異常解決方案

在用mybatis多對多查詢時報了一個錯誤,java.lang.UnsupportedOperationException;後來仔細看了一下日誌,提示“處理結果集錯誤”。sql文件如下: <resultMap id="dtoL

原创 Java中的PO、VO、TO、BO、DAO、POJO

VO:值對象、視圖對象 PO:持久對象 QO:查詢對象 DAO:數據訪問對象 DTO:數據傳輸對象 PO:全稱是persistant object 持久對象,最形象的理解就是一個PO就是數據庫中的一條記錄。好處是可以把一條記錄作爲一

原创 mybatis 設置jdbcType與JavaType和JdbcType對應表

使用mybatis對mysql數據庫進行增刪改查時,如果傳遞的參數存在空值,那麼會報空值異常: select * from user where 1= 1 and <if test="params.userCode!= null

原创 Exception 與 RuntimeException及其子類使用上的區別

相信各位讀者對Exception 和 RuntimeException已經有了基本的瞭解,即便沒有特別熟悉,對於它們之間的區別,網上隨便一搜就能夠找到。這篇文章主要的目的是講RuntimeException異常的使用,如果能夠理解Ru

原创 BigDecimal與double使用注意

記住一句話就行了:對精度沒有絕對要求時,用double即可。BigDecimal在計算時效率比double低非常多 BigDecimal轉double: BigDecimal bigDecimal = new BigDecimal(3