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
78354c79
Commit
78354c79
authored
Feb 07, 2022
by
mingsoft
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
接规范
parent
ddef6e4c
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
258 additions
and
61 deletions
+258
-61
CategoryAction.java
src/main/java/net/mingsoft/cms/action/CategoryAction.java
+1
-1
ContentAction.java
src/main/java/net/mingsoft/cms/action/ContentAction.java
+1
-4
GeneraterAction.java
src/main/java/net/mingsoft/cms/action/GeneraterAction.java
+2
-0
CategoryAction.java
...main/java/net/mingsoft/cms/action/web/CategoryAction.java
+15
-32
ContentAction.java
src/main/java/net/mingsoft/cms/action/web/ContentAction.java
+1
-1
MCmsAction.java
src/main/java/net/mingsoft/cms/action/web/MCmsAction.java
+2
-20
CategoryEntity.java
src/main/java/net/mingsoft/cms/entity/CategoryEntity.java
+9
-3
Upgrade.java
src/main/java/net/mingsoft/cms/upgrade/Upgrade.java
+60
-0
WebConfig.java
src/main/java/net/mingsoft/config/WebConfig.java
+167
-0
No files found.
src/main/java/net/mingsoft/cms/action/CategoryAction.java
View file @
78354c79
...
@@ -54,7 +54,7 @@ import java.util.List;
...
@@ -54,7 +54,7 @@ import java.util.List;
* 创建日期:2019-11-28 15:12:32<br/>
* 创建日期:2019-11-28 15:12:32<br/>
* 历史修订:<br/>
* 历史修订:<br/>
*/
*/
@Api
(
value
=
"分类接口"
)
@Api
(
tags
={
"后端-内容模块接口"
}
)
@Controller
(
"cmsCategoryAction"
)
@Controller
(
"cmsCategoryAction"
)
@RequestMapping
(
"/${ms.manager.path}/cms/category"
)
@RequestMapping
(
"/${ms.manager.path}/cms/category"
)
public
class
CategoryAction
extends
BaseAction
{
public
class
CategoryAction
extends
BaseAction
{
...
...
src/main/java/net/mingsoft/cms/action/ContentAction.java
View file @
78354c79
...
@@ -20,7 +20,6 @@
...
@@ -20,7 +20,6 @@
*/
*/
package
net
.
mingsoft
.
cms
.
action
;
package
net
.
mingsoft
.
cms
.
action
;
import
com.baomidou.mybatisplus.extension.conditions.query.QueryChainWrapper
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiImplicitParams
;
...
@@ -34,12 +33,10 @@ import net.mingsoft.basic.util.StringUtil;
...
@@ -34,12 +33,10 @@ import net.mingsoft.basic.util.StringUtil;
import
net.mingsoft.cms.bean.ContentBean
;
import
net.mingsoft.cms.bean.ContentBean
;
import
net.mingsoft.cms.biz.ICategoryBiz
;
import
net.mingsoft.cms.biz.ICategoryBiz
;
import
net.mingsoft.cms.biz.IContentBiz
;
import
net.mingsoft.cms.biz.IContentBiz
;
import
net.mingsoft.cms.constant.e.CategoryTypeEnum
;
import
net.mingsoft.cms.entity.CategoryEntity
;
import
net.mingsoft.cms.entity.CategoryEntity
;
import
net.mingsoft.cms.entity.ContentEntity
;
import
net.mingsoft.cms.entity.ContentEntity
;
import
net.mingsoft.mdiy.biz.IModelBiz
;
import
net.mingsoft.mdiy.biz.IModelBiz
;
import
net.mingsoft.mdiy.entity.ModelEntity
;
import
net.mingsoft.mdiy.entity.ModelEntity
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.shiro.authz.annotation.RequiresPermissions
;
import
org.apache.shiro.authz.annotation.RequiresPermissions
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.stereotype.Controller
;
...
@@ -62,7 +59,7 @@ import java.util.Map;
...
@@ -62,7 +59,7 @@ import java.util.Map;
* 创建日期:2019-11-28 15:12:32<br/>
* 创建日期:2019-11-28 15:12:32<br/>
* 历史修订:<br/>
* 历史修订:<br/>
*/
*/
@Api
(
value
=
"文章接口"
)
@Api
(
tags
={
"后端-内容模块接口"
}
)
@Controller
(
"cmsContentAction"
)
@Controller
(
"cmsContentAction"
)
@RequestMapping
(
"/${ms.manager.path}/cms/content"
)
@RequestMapping
(
"/${ms.manager.path}/cms/content"
)
public
class
ContentAction
extends
BaseAction
{
public
class
ContentAction
extends
BaseAction
{
...
...
src/main/java/net/mingsoft/cms/action/GeneraterAction.java
View file @
78354c79
...
@@ -49,6 +49,7 @@ import org.springframework.context.annotation.Scope;
...
@@ -49,6 +49,7 @@ import org.springframework.context.annotation.Scope;
import
org.springframework.stereotype.Controller
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.ui.ModelMap
;
import
org.springframework.ui.ModelMap
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.*
;
import
springfox.documentation.annotations.ApiIgnore
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpServletResponse
;
...
@@ -64,6 +65,7 @@ import java.util.List;
...
@@ -64,6 +65,7 @@ import java.util.List;
* @date: 2018年1月31日 下午2:52:07
* @date: 2018年1月31日 下午2:52:07
* @Copyright: 2018 www.mingsoft.net Inc. All rights reserved.
* @Copyright: 2018 www.mingsoft.net Inc. All rights reserved.
*/
*/
@ApiIgnore
@Controller
(
"cmsGenerater"
)
@Controller
(
"cmsGenerater"
)
@RequestMapping
(
"/${ms.manager.path}/cms/generate"
)
@RequestMapping
(
"/${ms.manager.path}/cms/generate"
)
@Scope
(
"request"
)
@Scope
(
"request"
)
...
...
src/main/java/net/mingsoft/cms/action/web/CategoryAction.java
View file @
78354c79
...
@@ -20,49 +20,32 @@
...
@@ -20,49 +20,32 @@
*/
*/
package
net
.
mingsoft
.
cms
.
action
.
web
;
package
net
.
mingsoft
.
cms
.
action
.
web
;
import
java.util.List
;
import
java.io.File
;
import
java.util.ArrayList
;
import
java.util.Map
;
import
java.util.regex.Matcher
;
import
java.util.regex.Pattern
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
com.alibaba.fastjson.JSON
;
import
net.mingsoft.base.entity.ResultData
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.validation.BindingResult
;
import
org.apache.shiro.authz.annotation.RequiresPermissions
;
import
org.springframework.ui.ModelMap
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.ModelAttribute
;
import
net.mingsoft.cms.biz.ICategoryBiz
;
import
net.mingsoft.cms.entity.CategoryEntity
;
import
net.mingsoft.base.util.JSONObject
;
import
net.mingsoft.base.entity.BaseEntity
;
import
net.mingsoft.basic.util.BasicUtil
;
import
net.mingsoft.basic.util.StringUtil
;
import
net.mingsoft.base.filter.DateValueFilter
;
import
net.mingsoft.base.filter.DoubleValueFilter
;
import
net.mingsoft.basic.bean.EUListBean
;
import
net.mingsoft.basic.annotation.LogAnn
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
net.mingsoft.base.entity.ResultData
;
import
net.mingsoft.basic.bean.EUListBean
;
import
net.mingsoft.basic.util.BasicUtil
;
import
net.mingsoft.cms.biz.ICategoryBiz
;
import
net.mingsoft.cms.entity.CategoryEntity
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.ui.ModelMap
;
import
org.springframework.validation.BindingResult
;
import
org.springframework.web.bind.annotation.*
;
import
springfox.documentation.annotations.ApiIgnore
;
import
springfox.documentation.annotations.ApiIgnore
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.util.List
;
/**
/**
* 分类管理控制层
* 分类管理控制层
* @author 铭飞开发团队
* @author 铭飞开发团队
* 创建日期:2019-11-28 15:12:32<br/>
* 创建日期:2019-11-28 15:12:32<br/>
* 历史修订:<br/>
* 历史修订:<br/>
*/
*/
@Api
(
value
=
"分类接口"
)
@Api
(
tags
={
"前端-内容模块接口"
}
)
@Controller
(
"WebcmsCategoryAction"
)
@Controller
(
"WebcmsCategoryAction"
)
@RequestMapping
(
"/cms/category"
)
@RequestMapping
(
"/cms/category"
)
public
class
CategoryAction
extends
net
.
mingsoft
.
cms
.
action
.
BaseAction
{
public
class
CategoryAction
extends
net
.
mingsoft
.
cms
.
action
.
BaseAction
{
...
...
src/main/java/net/mingsoft/cms/action/web/ContentAction.java
View file @
78354c79
...
@@ -51,7 +51,7 @@ import java.util.List;
...
@@ -51,7 +51,7 @@ import java.util.List;
* 创建日期:2019-11-28 15:12:32<br/>
* 创建日期:2019-11-28 15:12:32<br/>
* 历史修订:<br/>
* 历史修订:<br/>
*/
*/
@Api
(
value
=
"文章接口"
)
@Api
(
tags
={
"前端-内容模块接口"
}
)
@Controller
(
"WebcmsContentAction"
)
@Controller
(
"WebcmsContentAction"
)
@RequestMapping
(
"/cms/content"
)
@RequestMapping
(
"/cms/content"
)
public
class
ContentAction
extends
net
.
mingsoft
.
cms
.
action
.
BaseAction
{
public
class
ContentAction
extends
net
.
mingsoft
.
cms
.
action
.
BaseAction
{
...
...
src/main/java/net/mingsoft/cms/action/web/MCmsAction.java
View file @
78354c79
...
@@ -22,36 +22,26 @@
...
@@ -22,36 +22,26 @@
package
net
.
mingsoft
.
cms
.
action
.
web
;
package
net
.
mingsoft
.
cms
.
action
.
web
;
import
cn.hutool.core.collection.CollUtil
;
import
cn.hutool.core.collection.CollectionUtil
;
import
cn.hutool.core.lang.Editor
;
import
cn.hutool.core.util.ObjectUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
cn.hutool.core.util.PageUtil
;
import
cn.hutool.core.util.PageUtil
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
freemarker.core.ParseException
;
import
freemarker.core.ParseException
;
import
freemarker.template.MalformedTemplateNameException
;
import
freemarker.template.MalformedTemplateNameException
;
import
freemarker.template.TemplateException
;
import
freemarker.template.TemplateNotFoundException
;
import
freemarker.template.TemplateNotFoundException
;
import
net.bytebuddy.implementation.bytecode.Throw
;
import
net.mingsoft.base.constant.Const
;
import
net.mingsoft.base.constant.Const
;
import
net.mingsoft.basic.exception.BusinessException
;
import
net.mingsoft.basic.exception.BusinessException
;
import
net.mingsoft.basic.util.BasicUtil
;
import
net.mingsoft.basic.util.BasicUtil
;
import
net.mingsoft.basic.util.StringUtil
;
import
net.mingsoft.cms.bean.CategoryBean
;
import
net.mingsoft.cms.bean.CategoryBean
;
import
net.mingsoft.cms.bean.ContentBean
;
import
net.mingsoft.cms.bean.ContentBean
;
import
net.mingsoft.cms.biz.ICategoryBiz
;
import
net.mingsoft.cms.biz.ICategoryBiz
;
import
net.mingsoft.cms.biz.IContentBiz
;
import
net.mingsoft.cms.biz.IContentBiz
;
import
net.mingsoft.cms.constant.e.CategoryTypeEnum
;
import
net.mingsoft.cms.entity.CategoryEntity
;
import
net.mingsoft.cms.entity.CategoryEntity
;
import
net.mingsoft.cms.entity.ContentEntity
;
import
net.mingsoft.cms.entity.ContentEntity
;
import
net.mingsoft.cms.util.CmsParserUtil
;
import
net.mingsoft.mdiy.bean.PageBean
;
import
net.mingsoft.mdiy.bean.PageBean
;
import
net.mingsoft.mdiy.biz.IModelBiz
;
import
net.mingsoft.mdiy.biz.IModelBiz
;
import
net.mingsoft.mdiy.biz.IPageBiz
;
import
net.mingsoft.mdiy.biz.IPageBiz
;
import
net.mingsoft.mdiy.entity.ModelEntity
;
import
net.mingsoft.mdiy.entity.ModelEntity
;
import
net.mingsoft.mdiy.util.ParserUtil
;
import
net.mingsoft.mdiy.util.ParserUtil
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.shiro.util.CollectionUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.stereotype.Controller
;
...
@@ -59,6 +49,7 @@ import org.springframework.web.bind.annotation.GetMapping;
...
@@ -59,6 +49,7 @@ import org.springframework.web.bind.annotation.GetMapping;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.ResponseBody
;
import
org.springframework.web.bind.annotation.ResponseBody
;
import
springfox.documentation.annotations.ApiIgnore
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpServletResponse
;
...
@@ -76,6 +67,7 @@ import java.util.Map;
...
@@ -76,6 +67,7 @@ import java.util.Map;
* @date 2018年12月17日
* @date 2018年12月17日
* @date 2021年8月26日取消默认search.htm
* @date 2021年8月26日取消默认search.htm
*/
*/
@ApiIgnore
@Controller
(
"dynamicPageAction"
)
@Controller
(
"dynamicPageAction"
)
@RequestMapping
(
"/mcms"
)
@RequestMapping
(
"/mcms"
)
public
class
MCmsAction
extends
net
.
mingsoft
.
cms
.
action
.
BaseAction
{
public
class
MCmsAction
extends
net
.
mingsoft
.
cms
.
action
.
BaseAction
{
...
@@ -571,14 +563,4 @@ public class MCmsAction extends net.mingsoft.cms.action.BaseAction {
...
@@ -571,14 +563,4 @@ public class MCmsAction extends net.mingsoft.cms.action.BaseAction {
}
}
}
}
public
static
void
main
(
String
[]
args
)
{
int
[]
a
=
PageUtil
.
rainbow
(
20
,
30
,
5
);
for
(
int
_a
:
a
)
{
System
.
out
.
println
(
_a
);
}
}
}
}
src/main/java/net/mingsoft/cms/entity/CategoryEntity.java
View file @
78354c79
...
@@ -20,9 +20,6 @@
...
@@ -20,9 +20,6 @@
*/
*/
package
net
.
mingsoft
.
cms
.
entity
;
package
net
.
mingsoft
.
cms
.
entity
;
import
cn.hutool.core.util.StrUtil
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.annotation.JSONField
;
import
com.alibaba.fastjson.annotation.JSONField
;
import
com.baomidou.mybatisplus.annotation.*
;
import
com.baomidou.mybatisplus.annotation.*
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
...
@@ -455,4 +452,13 @@ public class CategoryEntity extends BaseEntity {
...
@@ -455,4 +452,13 @@ public class CategoryEntity extends BaseEntity {
return
categoryImg
;
return
categoryImg
;
}
}
@TableField
(
exist
=
false
)
private
String
typepath
;
/**
* 获取栏目图片 (标签使用)
*/
public
String
getTypepath
()
{
return
categoryPath
;
}
}
}
src/main/java/net/mingsoft/cms/upgrade/Upgrade.java
0 → 100644
View file @
78354c79
package
net
.
mingsoft
.
cms
.
upgrade
;
import
net.mingsoft.basic.util.SpringUtil
;
import
net.mingsoft.cms.biz.ICategoryBiz
;
import
net.mingsoft.cms.entity.CategoryEntity
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
/**
* @author by 铭飞开源团队
* @Description
* @date 2020/6/19 15:58
*/
public
class
Upgrade
{
/**
* 更新栏目分类的顶级节点和叶子节点
*/
public
void
upgrade
(){
ICategoryBiz
categoryBiz
=
SpringUtil
.
getBean
(
ICategoryBiz
.
class
);
List
<
CategoryEntity
>
list
=
categoryBiz
.
queryAll
();
list
.
forEach
(
x
->{
//将parentId第一行设为顶级节点
String
topId
=
"0"
;
String
parentId
=
x
.
getParentids
();
if
(
parentId
!=
null
)
{
topId
=
parentId
.
split
(
","
)[
0
];
}
x
.
setTopId
(
topId
);
String
id
=
x
.
getId
();
boolean
leaf
=
true
;
//判断是否叶子,循环查找,如果有节点的父节点中包含该节点的id则判断为否跳出循环
for
(
int
i
=
0
;
i
<
list
.
size
();
i
++)
{
String
pId
=
list
.
get
(
i
).
getParentids
();
if
(
pId
==
null
)
{
continue
;
}
leaf
=
!
pId
.
contains
(
id
);
//如果不是叶子就跳出循环,不需要再判断了
if
(!
leaf
)
{
break
;
}
}
x
.
setLeaf
(
leaf
);
//更新
Map
<
String
,
String
>
fields
=
new
HashMap
<>();
fields
.
put
(
"leaf"
,
x
.
getLeaf
()?
"1"
:
"0"
);
fields
.
put
(
"top_id"
,
x
.
getTopId
());
Map
<
String
,
String
>
where
=
new
HashMap
<>();
where
.
put
(
"id"
,
x
.
getId
());
categoryBiz
.
updateBySQL
(
"cms_category"
,
fields
,
where
);
});
}
}
src/main/java/net/mingsoft/config/WebConfig.java
0 → 100644
View file @
78354c79
package
net
.
mingsoft
.
config
;
import
com.alibaba.druid.pool.DruidDataSource
;
import
com.alibaba.druid.support.spring.stat.BeanTypeAutoProxyCreator
;
import
com.fasterxml.jackson.databind.DeserializationFeature
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
net.mingsoft.basic.filter.XSSEscapeFilter
;
import
net.mingsoft.basic.interceptor.ActionInterceptor
;
import
org.springframework.boot.web.servlet.FilterRegistrationBean
;
import
org.springframework.boot.web.servlet.ServletListenerRegistrationBean
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.core.Ordered
;
import
org.springframework.http.converter.HttpMessageConverter
;
import
org.springframework.http.converter.json.MappingJackson2HttpMessageConverter
;
import
org.springframework.web.context.request.RequestContextListener
;
import
org.springframework.web.servlet.config.annotation.InterceptorRegistry
;
import
org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry
;
import
org.springframework.web.servlet.config.annotation.ViewControllerRegistry
;
import
org.springframework.web.servlet.config.annotation.WebMvcConfigurer
;
import
java.io.File
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.concurrent.ExecutorService
;
import
java.util.concurrent.LinkedBlockingQueue
;
import
java.util.concurrent.ThreadPoolExecutor
;
import
java.util.concurrent.TimeUnit
;
@Configuration
public
class
WebConfig
implements
WebMvcConfigurer
{
@Bean
public
ActionInterceptor
actionInterceptor
()
{
return
new
ActionInterceptor
();
}
// @Bean
// public ConfigurationCustomizer configurationCustomizer() {
// return configuration -> configuration.setUseDeprecatedExecutor(false);
// }
// 最新版
// @Bean
// public MybatisPlusInterceptor mybatisPlusInterceptor() {
// MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
// interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.));
// return interceptor;
// }
/**
* 增加对rest api鉴权的spring mvc拦截器
*/
@Override
public
void
addInterceptors
(
InterceptorRegistry
registry
)
{
// 排除配置
registry
.
addInterceptor
(
actionInterceptor
()).
excludePathPatterns
(
"/static/**"
,
"/app/**"
,
"/webjars/**"
,
"/*.html"
,
"/*.htm"
);
}
@Override
public
void
addResourceHandlers
(
ResourceHandlerRegistry
registry
)
{
String
uploadMapping
=
MSProperties
.
upload
.
mapping
;
String
uploadFloderPath
=
MSProperties
.
upload
.
path
;
String
template
=
MSProperties
.
upload
.
template
;
String
htmlDir
=
MSProperties
.
htmlDir
;
registry
.
addResourceHandler
(
uploadMapping
).
addResourceLocations
(
File
.
separator
+
uploadFloderPath
+
File
.
separator
,
"file:"
+
uploadFloderPath
+
File
.
separator
);
registry
.
addResourceHandler
(
"/template/**"
).
addResourceLocations
(
File
.
separator
+
template
+
File
.
separator
,
"file:"
+
template
+
File
.
separator
);
registry
.
addResourceHandler
(
"/"
+
htmlDir
+
"/**"
).
addResourceLocations
(
"/"
+
htmlDir
+
"/"
,
"file:"
+
htmlDir
+
"/"
);
//三种映射方式 webapp下、当前目录下、jar内
registry
.
addResourceHandler
(
"/app/**"
).
addResourceLocations
(
"/app/"
,
"file:app/"
,
"classpath:/app/"
);
registry
.
addResourceHandler
(
"/static/**"
).
addResourceLocations
(
"/static/"
,
"file:static/"
,
"classpath:/static/"
,
"classpath:/META-INF/resources/"
);
registry
.
addResourceHandler
(
"/api/**"
).
addResourceLocations
(
"/api/"
,
"file:api/"
,
"classpath:/api/"
);
if
(
new
File
(
uploadFloderPath
).
isAbsolute
())
{
//如果指定了绝对路径,上传的文件都映射到uploadMapping下
registry
.
addResourceHandler
(
uploadMapping
).
addResourceLocations
(
"file:"
+
uploadFloderPath
+
File
.
separator
//映射其他路径文件
//,file:F://images
);
}
}
/**
* druid数据库连接池监控
*/
@Bean
public
BeanTypeAutoProxyCreator
beanTypeAutoProxyCreator
()
{
BeanTypeAutoProxyCreator
beanTypeAutoProxyCreator
=
new
BeanTypeAutoProxyCreator
();
beanTypeAutoProxyCreator
.
setTargetBeanType
(
DruidDataSource
.
class
);
beanTypeAutoProxyCreator
.
setInterceptorNames
(
"druidStatInterceptor"
);
return
beanTypeAutoProxyCreator
;
}
//XSS过滤器
@Bean
public
FilterRegistrationBean
xssFilterRegistration
()
{
XSSEscapeFilter
xssFilter
=
new
XSSEscapeFilter
();
FilterRegistrationBean
registration
=
new
FilterRegistrationBean
();
registration
.
setName
(
"XSSFilter"
);
registration
.
addUrlPatterns
(
"/*"
);
registration
.
setOrder
(
Ordered
.
HIGHEST_PRECEDENCE
);
xssFilter
.
includes
.
add
(
".*/search.do"
);
Map
<
String
,
String
>
initParameters
=
new
HashMap
();
boolean
enable
=
true
;
initParameters
.
put
(
"isIncludeRichText"
,
"false"
);
registration
.
setInitParameters
(
initParameters
);
registration
.
setFilter
(
xssFilter
);
registration
.
setEnabled
(
enable
);
return
registration
;
}
/**
* RequestContextListener注册
*/
@Bean
public
ServletListenerRegistrationBean
<
RequestContextListener
>
requestContextListenerRegistration
()
{
return
new
ServletListenerRegistrationBean
<>(
new
RequestContextListener
());
}
/**
* 设置默认首页
*/
@Override
public
void
addViewControllers
(
ViewControllerRegistry
registry
)
{
registry
.
addViewController
(
"/"
).
setViewName
(
"forward:/index"
);
registry
.
setOrder
(
Ordered
.
HIGHEST_PRECEDENCE
);
WebMvcConfigurer
.
super
.
addViewControllers
(
registry
);
}
/**
* 解决com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException 问题,提交实体不存在的字段异常
*/
@Override
public
void
configureMessageConverters
(
List
<
HttpMessageConverter
<?>>
converters
)
{
// TODO Auto-generated method stub
converters
.
add
(
mappingJackson2HttpMessageConverter
());
WebMvcConfigurer
.
super
.
configureMessageConverters
(
converters
);
}
@Bean
public
MappingJackson2HttpMessageConverter
mappingJackson2HttpMessageConverter
()
{
MappingJackson2HttpMessageConverter
converter
=
new
MappingJackson2HttpMessageConverter
();
ObjectMapper
objectMapper
=
new
ObjectMapper
();
//添加此配置
objectMapper
.
configure
(
DeserializationFeature
.
FAIL_ON_UNKNOWN_PROPERTIES
,
false
);
converter
.
setObjectMapper
(
objectMapper
);
return
converter
;
}
@Bean
public
ExecutorService
crawlExecutorPool
()
{
// 创建线程池
ExecutorService
pool
=
new
ThreadPoolExecutor
(
20
,
20
,
0L
,
TimeUnit
.
MILLISECONDS
,
new
LinkedBlockingQueue
<
Runnable
>());
return
pool
;
}
}
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