Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
C
cms_sys
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
西魏
cms_sys
Commits
fd764fdb
Commit
fd764fdb
authored
Nov 27, 2020
by
guwd
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1、优化解析过程,分页size的获取方式采用正则
2、移除不需要的业务流程,提高解析效率
parent
631574fe
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
59 additions
and
64 deletions
+59
-64
GeneraterAction.java
src/main/java/net/mingsoft/cms/action/GeneraterAction.java
+34
-42
MCmsAction.java
src/main/java/net/mingsoft/cms/action/web/MCmsAction.java
+0
-0
ContentBean.java
src/main/java/net/mingsoft/cms/bean/ContentBean.java
+1
-7
ContentBizImpl.java
src/main/java/net/mingsoft/cms/biz/impl/ContentBizImpl.java
+1
-1
CmsParserUtil.java
src/main/java/net/mingsoft/cms/util/CmsParserUtil.java
+23
-14
No files found.
src/main/java/net/mingsoft/cms/action/GeneraterAction.java
View file @
fd764fdb
/**
The MIT License (MIT) * Copyright (c) 2016 铭飞科技(mingsoft.net)
*
The MIT License (MIT) * Copyright (c) 2016 铭飞科技(mingsoft.net)
* <p>
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
* the Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
* <p>
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
* <p>
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
...
...
@@ -140,7 +140,6 @@ public class GeneraterAction extends BaseAction {
}
/**
* 生成列表的静态页面
*
...
...
@@ -155,54 +154,48 @@ public class GeneraterAction extends BaseAction {
public
ResultData
genernateColumn
(
HttpServletRequest
request
,
HttpServletResponse
response
,
@PathVariable
String
categoryId
)
throws
IOException
{
// 获取站点id
AppEntity
app
=
BasicUtil
.
getApp
();
//栏目列表
List
<
CategoryEntity
>
columns
=
new
ArrayList
<
CategoryEntity
>();
// 如果栏目id小于0则更新所有的栏目,否则只更新选中的栏目
if
(!
"0"
.
equals
(
categoryId
))
{
if
(
"0"
.
equals
(
categoryId
))
{
// 0更新所有栏目
CategoryEntity
categoryEntity
=
new
CategoryEntity
();
columns
=
categoryBiz
.
query
(
categoryEntity
);
}
else
{
//选择栏目更新
CategoryEntity
categoryEntity
=
new
CategoryEntity
();
categoryEntity
.
setId
(
categoryId
);
columns
=
categoryBiz
.
queryChilds
(
categoryEntity
);
}
else
{
// 获取所有的内容管理栏目
CategoryEntity
categoryEntity
=
new
CategoryEntity
();
columns
=
categoryBiz
.
query
(
categoryEntity
);
}
//文章列表
List
<
CategoryBean
>
articleIdList
=
null
;
// 1、设置模板文件夹路径
// 获取栏目列表模版
for
(
CategoryEntity
column
:
columns
)
{
ContentBean
contentBean
=
new
ContentBean
();
contentBean
.
setCategoryId
(
column
.
getId
());
// 分类是列表
if
(
column
.
getCategoryType
().
equals
(
"1"
))
{
// 判断模板文件是否存在
if
(!
FileUtil
.
exist
(
ParserUtil
.
buildTempletPath
(
column
.
getCategoryListUrl
())))
{
LOG
.
error
(
"模板不存在:{}"
,
column
.
getCategoryUrl
());
continue
;
}
//获取模板中列表标签中的条件
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
if
(
BasicUtil
.
getWebsiteApp
()
!=
null
){
map
.
put
(
ParserUtil
.
APP_ID
,
BasicUtil
.
getWebsiteApp
().
getAppId
());
}
PageBean
page
=
new
PageBean
();
map
.
put
(
ParserUtil
.
HTML
,
ParserUtil
.
HTML
);
map
.
put
(
ParserUtil
.
URL
,
BasicUtil
.
getUrl
());
map
.
put
(
ParserUtil
.
PAGE
,
page
);
}
articleIdList
=
contentBiz
.
queryIdsByCategoryIdForParser
(
contentBean
);
// 判断列表类型
switch
(
column
.
getCategoryType
())
{
//TODO 暂时先用字符串代替
case
"1"
:
// 列表
// 判断模板文件是否存在
if
(!
FileUtil
.
exist
(
ParserUtil
.
buildTempletPath
(
column
.
getCategoryListUrl
())))
{
LOG
.
error
(
"模板不存在:{}"
,
column
.
getCategoryUrl
());
continue
;
}
CmsParserUtil
.
generateList
(
column
,
articleIdList
.
size
());
break
;
case
"2"
:
// 单页
if
(
articleIdList
.
size
()==
0
)
{
CategoryBean
columnArticleIdBean
=
new
CategoryBean
();
CopyOptions
copyOptions
=
CopyOptions
.
create
();
if
(
articleIdList
.
size
()
==
0
)
{
CategoryBean
columnArticleIdBean
=
new
CategoryBean
();
CopyOptions
copyOptions
=
CopyOptions
.
create
();
copyOptions
.
setIgnoreError
(
true
);
BeanUtil
.
copyProperties
(
column
,
columnArticleIdBean
,
copyOptions
);
BeanUtil
.
copyProperties
(
column
,
columnArticleIdBean
,
copyOptions
);
articleIdList
.
add
(
columnArticleIdBean
);
}
CmsParserUtil
.
generateBasic
(
articleIdList
);
...
...
@@ -232,7 +225,7 @@ public class GeneraterAction extends BaseAction {
ContentBean
contentBean
=
new
ContentBean
();
contentBean
.
setBeginTime
(
dateTime
);
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
if
(
BasicUtil
.
getWebsiteApp
()
!=
null
)
{
if
(
BasicUtil
.
getWebsiteApp
()
!=
null
)
{
map
.
put
(
ParserUtil
.
APP_ID
,
BasicUtil
.
getWebsiteApp
().
getAppId
());
}
PageBean
page
=
new
PageBean
();
...
...
@@ -240,16 +233,16 @@ public class GeneraterAction extends BaseAction {
map
.
put
(
ParserUtil
.
URL
,
BasicUtil
.
getUrl
());
map
.
put
(
ParserUtil
.
PAGE
,
page
);
// 生成所有栏目的文章
if
(
"0"
.
equals
(
columnId
))
{
if
(
"0"
.
equals
(
columnId
))
{
CategoryEntity
categoryEntity
=
new
CategoryEntity
();
categoryList
=
categoryBiz
.
query
(
categoryEntity
);
for
(
CategoryEntity
category
:
categoryList
)
{
for
(
CategoryEntity
category
:
categoryList
)
{
contentBean
.
setCategoryId
(
category
.
getId
());
// 分类是列表
if
(
category
.
getCategoryType
().
equals
(
"1"
))
{
if
(
category
.
getCategoryType
().
equals
(
"1"
))
{
// 判断模板文件是否存在
if
(!
FileUtil
.
exist
(
ParserUtil
.
buildTempletPath
(
category
.
getCategoryListUrl
()))
||
StringUtils
.
isEmpty
(
category
.
getCategoryListUrl
()))
{
LOG
.
error
(
"模板不存在:{}"
,
category
.
getCategoryUrl
());
LOG
.
error
(
"模板不存在:{}"
,
category
.
getCategoryUrl
());
continue
;
}
...
...
@@ -261,15 +254,15 @@ public class GeneraterAction extends BaseAction {
CmsParserUtil
.
generateBasic
(
articleIdList
);
}
}
}
else
{
}
else
{
CategoryEntity
category
=
(
CategoryEntity
)
categoryBiz
.
getById
(
columnId
);
contentBean
.
setCategoryId
(
columnId
);
// 分类是列表
if
(
category
.
getCategoryType
().
equals
(
"1"
))
{
if
(
category
.
getCategoryType
().
equals
(
"1"
))
{
// 获取文章列表表属性
// 判断模板文件是否存在
if
(!
FileUtil
.
exist
(
ParserUtil
.
buildTempletPath
(
category
.
getCategoryUrl
())))
{
LOG
.
error
(
"模板不存在:{}"
,
category
.
getCategoryUrl
());
LOG
.
error
(
"模板不存在:{}"
,
category
.
getCategoryUrl
());
return
ResultData
.
build
().
error
(
getResString
(
"templet.file"
));
}
}
...
...
@@ -283,7 +276,6 @@ public class GeneraterAction extends BaseAction {
}
/**
* 用户预览主页
*
...
...
src/main/java/net/mingsoft/cms/action/web/MCmsAction.java
View file @
fd764fdb
This diff is collapsed.
Click to expand it.
src/main/java/net/mingsoft/cms/bean/ContentBean.java
View file @
fd764fdb
...
...
@@ -37,13 +37,7 @@ public class ContentBean extends ContentEntity {
*/
private
String
noflag
;
// public String getStaticUrl() {
// return staticUrl;
// }
//
// public void setStaticUrl(String staticUrl) {
// this.staticUrl = staticUrl;
// }
public
String
getBeginTime
()
{
return
beginTime
;
...
...
src/main/java/net/mingsoft/cms/biz/impl/ContentBizImpl.java
View file @
fd764fdb
...
...
@@ -229,7 +229,7 @@ public class ContentBizImpl extends BaseBizImpl<IContentDao, ContentEntity> imp
if
(
BasicUtil
.
getWebsiteApp
()
!=
null
){
map
.
put
(
ParserUtil
.
APP_ID
,
BasicUtil
.
getWebsiteApp
().
getAppId
());
}
String
read
=
ParserUtil
.
re
ad
(
templatePath
,
map
);
String
read
=
ParserUtil
.
re
ndering
(
templatePath
,
map
);
FileUtil
.
writeString
(
read
,
ParserUtil
.
buildHtmlPath
(
targetPath
),
net
.
mingsoft
.
base
.
constant
.
Const
.
UTF8
);
}
...
...
src/main/java/net/mingsoft/cms/util/CmsParserUtil.java
View file @
fd764fdb
...
...
@@ -71,25 +71,36 @@ public class CmsParserUtil extends ParserUtil {
throws
TemplateNotFoundException
,
MalformedTemplateNameException
,
ParseException
,
IOException
{
try
{
// 文章的栏目模型编号
Integer
columnContentModelId
=
column
.
getMdiyModelId
();
PageBean
page
=
new
PageBean
();
page
.
setSize
(
10
);
//获取分页数量
//获取列表页显示的文章数量
//获取总数
//获取列表中的size
page
.
setSize
(
ParserUtil
.
getPageSize
(
column
.
getCategoryListUrl
(),
20
));
page
.
setRcount
(
articleIdTotal
);
int
totalPageSize
=
PageUtil
.
totalPage
(
articleIdTotal
,
page
.
getSize
());
page
.
setTotal
(
totalPageSize
);
//获取模板中列表标签中的条件
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
if
(
BasicUtil
.
getWebsiteApp
()
!=
null
)
{
map
.
put
(
ParserUtil
.
APP_ID
,
BasicUtil
.
getWebsiteApp
().
getAppId
());
}
map
.
put
(
ParserUtil
.
HTML
,
ParserUtil
.
HTML
);
map
.
put
(
ParserUtil
.
URL
,
BasicUtil
.
getUrl
());
map
.
put
(
ParserUtil
.
PAGE
,
page
);
String
columnListPath
;
ModelEntity
contentModel
=
null
;
// 判断当前栏目是否有自定义模型
if
(
column
ContentModelId
!=
null
)
{
if
(
column
.
getMdiyModelId
()
!=
null
)
{
// 通过栏目模型编号获取自定义模型实体
contentModel
=
(
ModelEntity
)
SpringUtil
.
getBean
(
ModelBizImpl
.
class
).
getEntity
(
column
ContentModelId
);
contentModel
=
(
ModelEntity
)
SpringUtil
.
getBean
(
ModelBizImpl
.
class
).
getEntity
(
column
.
getMdiyModelId
()
);
}
int
pageNo
=
1
;
//全局参数设置
Map
<
String
,
Object
>
parserParams
=
new
HashMap
<
String
,
Object
>();
parserParams
.
put
(
ParserUtil
.
PAGE
,
page
);
parserParams
.
put
(
COLUMN
,
column
);
//标签中使用field获取当前栏目
parserParams
.
put
(
FIELD
,
column
);
...
...
@@ -106,17 +117,15 @@ public class CmsParserUtil extends ParserUtil {
if
(
ParserUtil
.
IS_SINGLE
)
{
parserParams
.
put
(
ParserUtil
.
URL
,
BasicUtil
.
getUrl
());
}
parserParams
.
put
(
ParserUtil
.
PAGE
,
page
);
ParserUtil
.
read
(
File
.
separator
+
column
.
getCategoryListUrl
(),
parserParams
,
page
);
int
totalPageSize
=
PageUtil
.
totalPage
(
articleIdTotal
,
page
.
getSize
());
page
.
setTotal
(
totalPageSize
);
int
pageNo
=
1
;
//文章列表页没有写文章列表标签,总数为0
if
(
totalPageSize
<=
0
)
{
// 数据库中第一页是从开始0*size
columnListPath
=
ParserUtil
.
buildHtmlPath
(
column
.
getCategoryPath
()
+
File
.
separator
+
ParserUtil
.
INDEX
);
// 设置分页的起始位置
page
.
setPageNo
(
pageNo
);
String
read
=
ParserUtil
.
re
ad
(
File
.
separator
+
column
.
getCategoryListUrl
(),
parserParams
);
String
read
=
ParserUtil
.
re
ndering
(
File
.
separator
+
column
.
getCategoryListUrl
(),
parserParams
);
FileUtil
.
writeString
(
read
,
columnListPath
,
Const
.
UTF8
);
}
else
{
...
...
@@ -134,7 +143,7 @@ public class CmsParserUtil extends ParserUtil {
}
// 设置分页的起始位置
page
.
setPageNo
(
pageNo
);
String
read
=
ParserUtil
.
re
ad
(
File
.
separator
+
column
.
getCategoryListUrl
(),
parserParams
);
String
read
=
ParserUtil
.
re
ndering
(
File
.
separator
+
column
.
getCategoryListUrl
(),
parserParams
);
FileUtil
.
writeString
(
read
,
columnListPath
,
Const
.
UTF8
);
pageNo
++;
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment