一. searchable排序順序
實例代碼
searchable.addSort(Sort.Direction.ASC,"lostState");
searchable.addSort(Sort.Direction.DESC, "createTime");
這樣放先根據(jù)createTime排再是lostState,放在上面的后排序
二. searchable+jdbc分頁查詢
paging()方法
Page<MessageVo> paging = PersistentFactory.getJdbcDao().paging(sql, searchable, MessageVo.class, new Object[]{userId});
List<MessageVo> messageVos = paging.getContent();
三. 分頁拿到的實體類需要轉(zhuǎn)成vo對象
PageImpl<ErticleVo>(voList, searchCondition.getPage(), page.getTotalElements());
Page<Erticle> page = this.paging(searchCondition);
if(page.getContent().size()>0){
voList = getVoList(page,request);//轉(zhuǎn)換成VO對象
}
return new PageImpl<ErticleVo>(voList, searchCondition.getPage(), page.getTotalElements());
四. 未讀消息查詢
兩張表 消息表和簽閱表,用戶讀消息后往簽閱表增加消息id和用戶id
需求:查出未讀消息
查出消息表的消息id不在簽閱表的數(shù)據(jù)即可 not in
SELECT
tm. ID,
tm.MESSAGE_TYPE,
tm.DATA_ID,
tm.MESSAGE_TITLE,
tm.CREATE_TIME,
tm.LOST_TIME,
tm.LOST_STATE,
tm.CREATE_USER_ID
FROM
T_MESSAGE tm
WHERE
TM. ID NOT IN (
SELECT
T .MESSAGE_ID
FROM
T_MESSAGE_READ T
)
AND tm.CREATE_USER_ID != '8a748586723b0b0f017254fba99d0162'
AND tm.DELETED = '0'
AND tm.LOST_STATE = '1'
ORDER BY
tm.CREATE_TIME DESC
五. nginx配置
前端的包放在nginx/html下,配置location與服務(wù)器IP對應(yīng)即可
nginx.conf文件中
server {
listen 9999;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
}
location /xmzygl/ {
proxy_pass http://20.20.30.152:8088;
}
六. java 構(gòu)造樹
樹節(jié)點(diǎn)實體類TreeNode
public class TreeNode {
private String cid;
private String cname;
private String pid;
private List nodes = new ArrayList();
}
傳入根節(jié)點(diǎn)id即可
sql1是獲取根節(jié)點(diǎn)數(shù)據(jù)
sql2是第二級節(jié)點(diǎn)數(shù)據(jù),用遞歸去賦值即可
public class TreeExtendUtils {
public static TreeNode recursiveTree(String cid) {
String sql1 = "SELECT CODE as cid,FULL_NAME as cname,UP_GOV_CODE pid FROM T_ORG_INFO where code ='"+cid+"'";
List<TreeNode> treeNodeList = PersistentFactory.getJdbcDao().queryForList(sql1,TreeNode.class);
//根據(jù)cid獲取節(jié)點(diǎn)對象(SELECT * FROM tb_tree t WHERE t.cid=?)
TreeNode node = treeNodeList.get(0);
String sql2 = "SELECT CODE as cid,FULL_NAME as cname,UP_GOV_CODE pid FROM T_ORG_INFO where UP_GOV_CODE ='"+cid+"'";
List<TreeNode> treeNodes= PersistentFactory.getJdbcDao().queryForList(sql2,TreeNode.class);
//查詢cid下的所有子節(jié)點(diǎn)(SELECT * FROM tb_tree t WHERE t.pid=?)
List<TreeNode> childTreeNodes = treeNodes;
for (TreeNode child : childTreeNodes) {
TreeNode n = recursiveTree(child.getCid()); //遞歸
node.getNodes().add(n);
}
return node;
}
}