easyUI(七) -- SSM+easyUI 級聯模糊查詢
使用 Mybatis 持久化框架 , 最大的重點難點在於 SQL 語句的書寫 , 一般只要在資料庫操作成功的 SQL 語句 , 想要實現某個功能就不難 .
但是這個級聯模糊查詢在資料庫可以查出外來鍵表資料 , 但是用框架就不行 , 以後想到了好的解決辦法再給出其他方案 .
<select id="queryAllByLike" parameterType="String" resultType="user">
SELECT users.userid,users.username,users.sex,users.phonenum,users.remark,depts.deptname FROM users inner JOIN depts ON users.deptid = depts.deptid where depts.deptname like CONCAT('%',#{deptname},'%') and users.isdel=1
</select>
注意查詢 SQL 語句最好不要使用 * 號 , 因為後臺解析的 * 需要消耗資源 , 以後資料庫擴充套件了其他欄位 , 但是你並不想使用的話 , 也會有大量資源浪費 . insert 語句同理
action 操作
@RequestMapping("queryallbylike" )
@ResponseBody
public Object queryAllByLike(){
return listUser;
}
@RequestMapping("toquerylike")
public String toQueryLike(String deptname){
if(deptname==null){
deptname="";
}
//取出前端傳過來的逗號
deptname = deptname.replaceAll("," , "");
listUser = userService.queryAllByLike(deptname);
return "user/userListLike";
}
這裡做了一個巧妙的轉換 . 因為如果你直接呼叫 queryAllByLike 方法 , 他會讓你從前臺傳入一個引數作為查詢條件 , 但是我們知道 easyui 在頁面顯示 JSON 格式資料的時候是通過 url 的 , 如果你要給要顯示資料的 url 動態傳值十分不方便 , 所以在跳轉頁面的時候就把查詢條件傳過去並獲得查詢的 list , 顯示的時候就只需要傳入一個不帶引數的 url 就行了
toQueryLike 方法按條件查出 user 的 list 集合 , 並跳轉到 user/userListLike .jsp 然後 user/userListLike .jsp 獲取 queryAllByLike 的 json 資料
這是我的 Table 標籤
<table id="tt" title="Load Data" class="easyui-datagrid" style="width:550px;height:250px"
data-options="url:'${pageContext.request.contextPath}/user/queryallbylike',rownumbers:'true',
pagination:true,toolbar:'#tb',iconCls:'icon-save',fitColumns:'true',fit:true,multiple:'false',pageList:[2,5,10,20]">
我們也可以不通過主鍵(deptname)欄位模糊查 , 直接使用 user 表引用 dept 表的外來鍵 id deptid 查
SQL語句
SELECT * FROM clients WHERE isdel=1 AND userid=#{users.userid}
action 程式碼
@ResponseBody
@RequestMapping("queryallbylike")
public Object queryAllByLike(){
return listClient;
}
@RequestMapping("toquerylike")
public String toQueryLike(int userid){
listClient = clientsService.queryAllByLike(userid);
return "client/clientListLike";
}
頁面程式碼
$(function(){
chooseUser();
})
function chooseUser(){
$("#getUserid").combobox({
url:'${pageContext.request.contextPath}/user/queryalluser',
valueField:'userid',
textField:'username'
});
}
function queryClientLike(){
var userid = $('#getUserid').combobox('getValue');
alert(userid);
location = "${pageContext.request.contextPath}/client/toquerylike?userid="+userid;
}
<span>所屬員工:</span> <input id="getUserid" style="line-height: 20px; border: 1px solid #ccc">
這種方法可以通過下拉框選擇你要匹配的外來鍵欄位 , 但是傳過去的是一個 id . 而且我們就不用傳 String 型別的資料到後臺了 , 當然也就不用擔心沒有用 form 表單提交的亂碼問題
相關推薦
easyUI(七) -- SSM+easyUI 級聯模糊查詢
使用 Mybatis 持久化框架 , 最大的重點難點在於 SQL 語句的書寫 , 一般只要在資料庫操作成功的 SQL 語句 , 想要實現某個功能就不難 . 但是這個級聯模糊查詢在資料庫可以查出外來鍵表資料 , 但是用框架就不行 , 以後想到了好的解決辦法再給
OpenCV學習筆記(二十六)——小試SVM演算法ml OpenCV學習筆記(二十七)——基於級聯分類器的目標檢測objdect OpenCV學習筆記(二十八)——光流法對運動目標跟蹤Video Ope
OpenCV學習筆記(二十六)——小試SVM演算法ml 總感覺自己停留在碼農的初級階段,要想更上一層,就得靜下心來,好好研究一下演算法的東西。OpenCV作為一個計算機視覺的開源庫,肯定不會只停留在數字影象處理的初級階段,我也得加油,深入研究它的演算法庫。就從ml入手
SSM框架mapper.xml模糊查詢語句
模糊 兩種 模糊查詢 進行 行數 like style center ssm SSM框架mapper.xml模糊查詢語句 在用SSM框架時,如果想要實現模糊查詢,可以在mapper.xml文件中進行數據庫語句的書寫,方法有很多種,在這裏我選擇了兩種介紹: 方法1:
easyUI框架下使用下拉框的級聯查詢
在使用easyui框架中,我們需要用到一個涉及很多表的的級聯查詢,傳統的做法是,先通過ajax拿到選中的id去資料庫查詢相應的list資料,然後再ajax的success方法中appendTo到下一個下拉框中,但這次我們使用easyUI,其實原理都是相同的,只是easyUI
easyui combobox 三級級聯 input 兩種實現
data edit pat adc inpu idt cts wid req /**<img src=‘${pageContext.request.contextPath}/images/block.png‘/> * @param 默認載入 省市 */
Easyui 實現智能模糊查詢(智能檢索)
easyui 實現智能模糊查詢js代碼: <input id="proBidSectionone" name="proBidSectionone" value="">重點://工作標段模糊查詢 $("#proBidSectionone").combobox({ valueFie
jquery-easyui元件combobox模糊查詢在IE中資料太多導致瀏覽器崩潰
由於combobox模糊查詢是吧原來的所有下拉的選項首先全部隱藏,然後再根據使用者輸入的值來判斷,如果正確,則顯示出來,本人測試1000條資料的時候在火狐裡並沒有問題,可是在IE8卻導致瀏覽器十分緩慢,經常導致瀏覽器奔潰。由於
easyui combotree模糊查詢 , combobox模糊查詢
/** * combobox和combotree模糊查詢 */ (function(){ //combobox可編輯,自定義模糊查詢 $.fn.combobox.defaults.editable = true; $.fn.combobox.defau
HQL查A表 A、B兩表級聯,B表查詢條件是C表模糊查詢條件的結果
表單文字要實現模糊查詢,假設表單文字框name為putName ; 假設A表有id欄位和putname 欄位(對應表單putName ),判斷B表關聯C表的objectName欄位(假設關聯欄位為bcLink) 是否和A表的id欄位相同? if (map.get
easyUI tree 多選框設定是否級聯選中
今天測試提出一個 bug,找了半天是因為easyUI的tree樹前的多選框級聯選中造成的;找了半天,終於取消了預設的級聯關係 var treeUrl = 路徑 treeManager.tree({checkbox:true,cascadeCheck:false,lines:true,
EasyUI學習之Combobox(級聯下拉列表)(二)
1. html程式碼 <fieldset> <legend>資訊查詢</legend> <div style="white-space: nowrap; padding: 5px;">
jQuery easyUI combobox下拉框 聯動 級聯
新做了一個下拉框聯動的小功能,網上找的是省市級聯,之前也套用了,這次是自定義的一個級聯,相當於父子關係,有如下兩張表: 表A: (分類表)(相當於主選單) 表B: (目錄表)(相當於子選單) 注
EasyUI——combobox級聯
Easy UI的combobox實現省市縣的級聯選擇 js部分: <script type="text/javascript"> $(function(){ var province = $("#province").combobox({ valu
EasyUI--combotree模糊查詢
<head> <meta charset="utf-8" /> <title>EASY_UI搜尋框</title> </head> <script src="jquery-easyui-1.5.
EasyUI下拉框實現多選、全選、複選和模糊查詢
其實整個的思路還是很麻煩的。之前網上查不到能囊括上面所有東西的。但是參考之後還是摸出了一種新的方法,但是仍然不完美。畢竟是在封裝的東西上面修改。程式碼實現:<!DOCTYPE html> <html lang="en"> <head&g
關於通過easyui對mysql的模糊查詢以及按時間段查詢的個人見解
建表是使用easyui的datagrid來顯示查詢mysql的結果,系統是基於SSH框架建立 先來張圖看看介面 1、自定義easyui datagrid的工具欄 <div id="toolbar"> 查詢條件: <input id
EasyUI treegrid級聯勾選或深度級聯勾選擴充套件:兩種擴充套件
treegrid沒有級聯勾選,要用怎麼辦?自己擴充套件唄~ 先明確兩個概念: 1、級聯勾選:不包括未載入的子節點 2、深度級聯勾選:包括未載入的子節點 兩種思路: 1、擴充套件個新方法cascadeCheck,當需要進行級聯勾選時,呼叫該方法進行級聯勾選或不
使用postgre數據庫實現樹形結構表的子-父級叠代查詢,通過級聯菜單簡單舉例
with 兼容 rep blank 增刪改 結果 關系型 mssq word 前言:開發常用的關系型數據庫MySQL,mssql,postgre,Oracle,簡單的增刪改查的SQL語句都與標準SQL兼容,這個不用講,那麽對於叠代查詢(不嚴格的叫法:遞歸查詢)每種數據庫都不
mybatis級聯查詢,分步查詢和延遲加載
enabled 4.2 res 標簽 mapper last pac mes 方式 級聯查詢: 1.Employee表: id;lastName;email; gender;d_id(外鍵關聯Department的ID) 2.Department表: id;deptNa
Mybatis級聯查詢
username tac 實現 數據 配置 級聯查詢 builder java 3.0 轉自:http://blog.csdn.net/yulei_qq/article/details/22039815 工程的目錄結構: 有兩個表,一個文章表article ,一個用戶表u