在Liferay 6.2中,我使用了Liferay 7.0中不推荐使用的Booleanquery。我怎么能改变这种方法?

问题描述 投票:0回答:1

如何在liferay 7中更改此方法?

private static void addVimapFileEntryIdClause(SearchContext searchContext, List<BooleanClause> fieldClauses,long fileEntryIdStart, long fileEntryIdEnd, String vimapFileEntry){

 if (fileEntryIdStart != QueryUtil.ALL_POS) {

    BooleanQuery fileEntryBooleanQuery = BooleanQueryFactoryUtil.create(
                            searchContext);

        if (fileEntryIdStart == fileEntryIdEnd) {

        fileEntryBooleanQuery.addRequiredTerm( 
                   VIMAPConstants.VIMAP_FILE_ENTRY_ID, fileEntryIdStart);
    }
    else {
        fileEntryBooleanQuery.addNumericRangeTerm(
            vimapFileEntry, fileEntryIdStart, fileEntryIdEnd);
        }

    BooleanClause fileEntryFieldClause =
        BooleanClauseFactoryUtil.create(searchContext, 
                  fileEntryBooleanQuery,BooleanClauseOccur.MUST.getName());
            fieldClauses.add(fileEntryFieldClause);
 }
}

我这样改变但不好

private static void addFolderIdClause(SearchContext searchContext,List> fieldClauses,long folderId){BooleanQuery folderBooleanQuery = new BooleanQueryImpl();

    /*BooleanQuery folderBooleanQuery = BooleanQueryFactoryUtil.create(
                searchContext);*/
    folderBooleanQuery.addRequiredTerm(Field.FOLDER_ID, folderId);

    /*BooleanClause folderFieldClause = BooleanClauseFactoryUtil.create(
                                searchContext, folderBooleanQuery,
                                    BooleanClauseOccur.MUST.getName());*/

    BooleanClause<Query> folderFieldClause =
            BooleanClauseFactoryUtil.create(folderBooleanQuery,
                    BooleanClauseOccur.MUST.getName());

    fieldClauses.add(folderFieldClause);
}
liferay-6 liferay-7
1个回答
0
投票

不是BooleanQuery被弃用了,而是BooleanQueryFactoryUtil。在there,你可以看到

 * @deprecated As of Wilberforce (7.0.x), , replaced by {@link
 *             com.liferay.portal.kernel.search.generic.BooleanQueryImpl}

不推荐使用的Util类的(链接)代码非常简单。 (注意:我已链接到主分支,而不是7.0 - 必要时进行调整)

© www.soinside.com 2019 - 2024. All rights reserved.