前提,框架使用的spring data jpa操作數據庫框架.....哈哈
其實一開始接收到這個字段的時候我是比較排斥的,什麼垃圾需求,模糊查詢,各種各樣的查詢,最討厭聽到這種模糊查詢了....都是不懂的人在瞎指揮....
其實更多的是,在不確定模糊字段的時候要拼很多的字段值,而且這種用jpa的原生sql來寫更麻煩,因爲自己不懂,所以才麻煩....
其實根據Specification中可以動態添加條件組,各種Or條件啥的都可以的,但是感覺那樣寫太麻煩了...因爲本省選擇的數據庫框架就是JPA,再寫其他東西,感覺太臃腫了....一個操作數據庫的有好多種方式,看着不舒服....但是jpa怎麼寫,直到我發現了這麼一條sql...
select * from student where CONCAT(name,age,gender) like '%男%'
這樣一個concat中將所有的需要模糊查詢的字段放起來就好了....
然後再JPA使用nativeQuery時,可以直接寫
select * from student where CONCAT(name,age,gender) like % :searchValue %
感覺也是棒棒的,,當然sql是可以根據實際業務需求自己來定義.....
只是給條儘快完成代碼的捷徑...