201120:searchable排序順序+jdbc分頁查詢-分頁拿到的實體類需要轉(zhuǎn)成vo對象-未讀消息查詢-nginx配置-java 構(gòu)造樹

一. 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;
    }
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容