Skip to content
Toggle navigation
Projects
Groups
Snippets
Help
Toggle navigation
This project
Loading...
Sign in
石磊
/
cihai
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit c7531497
authored
Jan 10, 2018
by
侯昆
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
添加文档,每日一词和词条推荐
1 parent
62cac554
Hide whitespace changes
Inline
Side-by-side
Showing
21 changed files
with
395 additions
and
24 deletions
serverside/cihai-admin/pom.xml
serverside/cihai-admin/src/main/java/com/dookay/cihai/admin/controller/WordRelateController.java
serverside/cihai-admin/src/main/resources/application-production.properties
serverside/cihai-admin/src/main/resources/application-test.properties
serverside/cihai-app/pom.xml
serverside/cihai-app/src/main/java/com/dookay/cihai/app/controller/HomeController.java
serverside/cihai-app/src/main/java/com/dookay/cihai/app/controller/WordController.java
serverside/cihai-app/src/main/java/com/dookay/cihai/app/controller/dto/CharacterBaikeDTO.java
serverside/cihai-app/src/main/java/com/dookay/cihai/app/controller/dto/CharacterParaphDTO.java
serverside/cihai-app/src/main/java/com/dookay/cihai/app/controller/dto/StatementBaikeDTO.java
serverside/cihai-app/src/main/java/com/dookay/cihai/app/controller/dto/StatementParaphDTO.java
serverside/cihai-app/src/main/webapp/WEB-INF/web.xml
serverside/cihai-app/src/main/webapp/api/jsp/config.json
serverside/cihai-app/src/main/webapp/api/jsp/controller.jsp
serverside/cihai-core/pom.xml
serverside/cihai-core/src/main/java/com/dookay/cihai/core/word/dto/OneCharacterDTO.java
serverside/cihai-core/src/main/java/com/dookay/cihai/core/word/dto/RecommendStatementDTO.java
serverside/cihai-core/src/main/java/com/dookay/cihai/core/word/mapper/WordMapper.java
serverside/cihai-core/src/main/java/com/dookay/cihai/core/word/service/IWordService.java
serverside/cihai-core/src/main/java/com/dookay/cihai/core/word/service/impl/WordServiceImpl.java
serverside/cihai-core/src/main/resources/mapper/WordMapper.xml
serverside/cihai-admin/pom.xml
View file @
c753149
...
...
@@ -8,6 +8,7 @@
<modelVersion>
4.0.0
</modelVersion>
<artifactId>
cihai-admin
</artifactId>
<packaging>
war
</packaging>
<name>
cihai-web-admin
</name>
<properties>
<maven.test.skip>
true
</maven.test.skip>
...
...
@@ -93,6 +94,9 @@
</dependencies>
<build>
<finalName>
cihai-web-admin
</finalName>
</build>
</project>
serverside/cihai-admin/src/main/java/com/dookay/cihai/admin/controller/WordRelateController.java
View file @
c753149
...
...
@@ -24,6 +24,7 @@ import com.dookay.coral.common.web.config.ResourcesMappingProperties;
import
com.dookay.coral.common.web.controller.BaseController
;
import
com.dookay.coral.common.web.response.JsonResult
;
import
com.dookay.coral.common.web.utils.upload.model.ImageModel
;
import
com.hankcs.hanlp.HanLP
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMethod
;
...
...
@@ -36,6 +37,7 @@ import java.net.URISyntaxException;
import
java.nio.file.Files
;
import
java.nio.file.Path
;
import
java.nio.file.Paths
;
import
java.nio.file.StandardOpenOption
;
import
java.util.ArrayList
;
import
java.util.List
;
...
...
@@ -69,7 +71,10 @@ public class WordRelateController extends BaseController {
return
errorResult
(
"词条不存在"
);
}
List
<
ImageModel
>
modelList
=
doUpload
(
word
,
image
);
List
<
ImageModel
>
current
=
ImageModel
.
toList
(
wordDomain
.
getBaikePhotos
());
List
<
ImageModel
>
current
=
new
ArrayList
<>();
if
(
StringUtils
.
isNotEmpty
(
wordDomain
.
getBaikePhotos
()))
{
current
=
ImageModel
.
toList
(
wordDomain
.
getBaikePhotos
());
}
current
.
addAll
(
modelList
);
wordDomain
.
setBaikePhotos
(
JSON
.
toJSONString
(
current
));
wordService
.
update
(
wordDomain
);
...
...
@@ -85,12 +90,17 @@ public class WordRelateController extends BaseController {
*/
private
List
<
ImageModel
>
doUpload
(
String
word
,
MultipartFile
image
)
{
List
<
ImageModel
>
modelList
=
new
ArrayList
<>();
String
prefix
=
"word/"
+
word
+
"/"
;
String
wordPinyin
=
HanLP
.
convertToPinyinString
(
word
,
"_"
,
false
);
String
prefix
=
"word/"
+
wordPinyin
+
"/"
;
String
fileUploadPath
=
resourcesMappingProperties
.
getUploadsMapping
()
+
prefix
;
try
{
URI
uri
=
new
URI
(
fileUploadPath
+
image
.
getOriginalFilename
());
Path
path
=
Paths
.
get
(
uri
);
Files
.
write
(
path
,
image
.
getBytes
());
URI
dirUri
=
new
URI
(
fileUploadPath
);
Path
dirPath
=
Paths
.
get
(
dirUri
);
if
(!
Files
.
exists
(
dirPath
))
{
Files
.
createDirectories
(
dirPath
);
}
Path
filePath
=
Paths
.
get
(
new
URI
(
fileUploadPath
+
image
.
getOriginalFilename
()));
Files
.
write
(
filePath
,
image
.
getBytes
(),
StandardOpenOption
.
CREATE
);
ImageModel
model
=
new
ImageModel
();
String
mapInnerPath
=
resourcesMappingProperties
.
getUploadsInner
();
String
fileServerPath
=
...
...
@@ -126,7 +136,10 @@ public class WordRelateController extends BaseController {
return
errorResult
(
"词条不存在"
);
}
List
<
ImageModel
>
modelList
=
doUpload
(
word
,
video
);
List
<
ImageModel
>
current
=
ImageModel
.
toList
(
wordDomain
.
getBaikeVideo
());
List
<
ImageModel
>
current
=
new
ArrayList
<>();
if
(
StringUtils
.
isNotEmpty
(
wordDomain
.
getBaikeVideo
()))
{
current
=
ImageModel
.
toList
(
wordDomain
.
getBaikeVideo
());
}
current
.
addAll
(
modelList
);
wordDomain
.
setBaikeVideo
(
JSON
.
toJSONString
(
current
));
wordService
.
update
(
wordDomain
);
...
...
serverside/cihai-admin/src/main/resources/application-production.properties
View file @
c753149
# 数据库连接
spring.datasource.url
=
jdbc:mysql://localhost:3306/test
spring.datasource.url
=
jdbc:mysql://192.168.2.24:3306/cihai
spring.datasource.username
=
root
# 加密后的密码
spring.datasource.password
=
UvoEsj8TZ9a11DQRR42EGuoIRjeuqSagmUzCdUeDnw9PJ9hum0Lx/MTPrpIR7isrPdA8lMpaY77eW4g3f1tCQQ
==
spring.datasource.password
=
AmwpshLB35Fgazrs4rCfGlwNBZOTD34ezY/zS751V+7iSJHjr3tDNkpOfnW/y0fjFcMTNX0ycMt3KIUnDi8JYg
==
# 加密时的公钥
public-
key
=
MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBA
JFbtR5GoNcW9j8b4RhZQ1CC1xNBx8Sqphxc8/6vNWYdd7d84AUfSAzFXCzGvuvJ0URNAg9IykPDexY/mHP8dA0
CAwEAAQ==
public-
key
=
MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBA
Kgof5ExfKmEZEjq+GuqEoHA8tkIftarLRzUDAxdQzJQtF57DF63gPJJkIZLcKa2t8jt5JC2SRdxERg1A/kx0BM
CAwEAAQ==
# 日志
logging.level.root
=
error
...
...
serverside/cihai-admin/src/main/resources/application-test.properties
View file @
c753149
# 数据库连接
spring.datasource.url
=
jdbc:mysql://localhost:3306/test
spring.datasource.url
=
jdbc:mysql://192.168.2.24:3306/cihai
spring.datasource.username
=
root
# 加密后的密码
spring.datasource.password
=
UvoEsj8TZ9a11DQRR42EGuoIRjeuqSagmUzCdUeDnw9PJ9hum0Lx/MTPrpIR7isrPdA8lMpaY77eW4g3f1tCQQ
==
spring.datasource.password
=
AmwpshLB35Fgazrs4rCfGlwNBZOTD34ezY/zS751V+7iSJHjr3tDNkpOfnW/y0fjFcMTNX0ycMt3KIUnDi8JYg
==
# 加密时的公钥
public-
key
=
MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBA
JFbtR5GoNcW9j8b4RhZQ1CC1xNBx8Sqphxc8/6vNWYdd7d84AUfSAzFXCzGvuvJ0URNAg9IykPDexY/mHP8dA0
CAwEAAQ==
public-
key
=
MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBA
Kgof5ExfKmEZEjq+GuqEoHA8tkIftarLRzUDAxdQzJQtF57DF63gPJJkIZLcKa2t8jt5JC2SRdxERg1A/kx0BM
CAwEAAQ==
# 日志
logging.level.root
=
warn
logging.level.com.dookay.coral.common.core
=
debug
...
...
serverside/cihai-app/pom.xml
View file @
c753149
...
...
@@ -8,7 +8,9 @@
<version>
1.0-SNAPSHOT
</version>
</parent>
<modelVersion>
4.0.0
</modelVersion>
<packaging>
war
</packaging>
<name>
cihai-web-app
</name>
<artifactId>
cihai-app
</artifactId>
...
...
@@ -68,4 +70,7 @@
</dependency>
<!--接口文档-->
</dependencies>
<build>
<finalName>
cihai-web-app
</finalName>
</build>
</project>
\ No newline at end of file
serverside/cihai-app/src/main/java/com/dookay/cihai/app/controller/HomeController.java
View file @
c753149
...
...
@@ -22,6 +22,8 @@ import com.dookay.cihai.core.aip.model.LexerItem;
import
com.dookay.cihai.core.aip.model.ScanResult
;
import
com.dookay.cihai.core.word.domain.CustomDictionaryDomain
;
import
com.dookay.cihai.core.word.domain.WordDomain
;
import
com.dookay.cihai.core.word.dto.OneCharacterDTO
;
import
com.dookay.cihai.core.word.dto.RecommendStatementDTO
;
import
com.dookay.cihai.core.word.query.CustomDictionaryQuery
;
import
com.dookay.cihai.core.word.query.WordQuery
;
import
com.dookay.cihai.core.word.service.ICustomDictionaryService
;
...
...
@@ -67,8 +69,8 @@ public class HomeController extends BaseController {
* @author houkun
* @date 2018/1/9
*/
@RequestMapping
(
value
=
"/search"
,
method
=
RequestMethod
.
GE
T
)
@ApiOperation
(
value
=
"搜索词"
,
nickname
=
"搜索词"
,
httpMethod
=
"
GE
T"
,
produces
=
MimeTypeUtils
.
APPLICATION_JSON_VALUE
,
response
=
WordDTO
.
class
)
@RequestMapping
(
value
=
"/search"
,
method
=
RequestMethod
.
POS
T
)
@ApiOperation
(
value
=
"搜索词"
,
nickname
=
"搜索词"
,
httpMethod
=
"
POS
T"
,
produces
=
MimeTypeUtils
.
APPLICATION_JSON_VALUE
,
response
=
WordDTO
.
class
)
public
JsonResult
search
(
String
keyword
)
{
log
.
info
(
"进入搜索:"
+
keyword
);
if
(
StringUtils
.
isBlank
(
keyword
))
{
...
...
@@ -138,4 +140,16 @@ public class HomeController extends BaseController {
return
errorResult
(
"暂无检索结果"
);
}
}
@RequestMapping
(
value
=
"/character"
,
method
=
RequestMethod
.
GET
)
@ApiOperation
(
value
=
"每日一字"
,
nickname
=
"每日一字"
,
httpMethod
=
"GET"
,
produces
=
MimeTypeUtils
.
APPLICATION_JSON_VALUE
,
response
=
OneCharacterDTO
.
class
)
public
JsonResult
oneCharacter
()
{
return
successResult
(
"每日一字"
,
wordService
.
oneDayOnCharacter
());
}
@RequestMapping
(
value
=
"/statement"
,
method
=
RequestMethod
.
GET
)
@ApiOperation
(
value
=
"推荐词条"
,
nickname
=
"推荐词条"
,
httpMethod
=
"GET"
,
produces
=
MimeTypeUtils
.
APPLICATION_JSON_VALUE
,
response
=
RecommendStatementDTO
.
class
)
public
JsonResult
recommendStatement
()
{
return
successResult
(
"推荐词条"
,
wordService
.
RecomendStatement
());
}
}
serverside/cihai-app/src/main/java/com/dookay/cihai/app/controller/WordController.java
View file @
c753149
...
...
@@ -24,7 +24,9 @@ import com.dookay.coral.common.web.controller.BaseController;
import
com.dookay.coral.common.web.response.JsonResult
;
import
com.dookay.coral.common.web.utils.upload.model.ImageModel
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.util.MimeTypeUtils
;
import
org.springframework.web.bind.annotation.PathVariable
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMethod
;
...
...
@@ -51,6 +53,7 @@ public class WordController extends BaseController {
* @date 2018/1/9
*/
@RequestMapping
(
value
=
"/character/paraph/{id}"
,
method
=
RequestMethod
.
GET
)
@ApiOperation
(
value
=
"单字释义"
,
nickname
=
"单字释义"
,
httpMethod
=
"GET"
,
produces
=
MimeTypeUtils
.
APPLICATION_JSON_VALUE
,
response
=
CharacterParaphDTO
.
class
)
public
JsonResult
characterParaph
(
@PathVariable
(
"id"
)
Long
id
)
{
WordDomain
character
=
wordService
.
get
(
id
);
return
successResult
(
"success"
,
CharacterParaphDTO
.
fromDomain
(
character
));
...
...
@@ -63,6 +66,7 @@ public class WordController extends BaseController {
* @date 2018/1/9
*/
@RequestMapping
(
value
=
"/character/baike/{id}"
,
method
=
RequestMethod
.
GET
)
@ApiOperation
(
value
=
"单字百科"
,
nickname
=
"单字百科"
,
httpMethod
=
"GET"
,
produces
=
MimeTypeUtils
.
APPLICATION_JSON_VALUE
,
response
=
CharacterBaikeDTO
.
class
)
public
JsonResult
characterBaike
(
@PathVariable
(
"id"
)
Long
id
)
{
WordDomain
character
=
wordService
.
get
(
id
);
return
successResult
(
"success"
,
CharacterBaikeDTO
.
fromDomain
(
character
));
...
...
@@ -75,6 +79,7 @@ public class WordController extends BaseController {
* @date 2018/1/9
*/
@RequestMapping
(
value
=
"/statement/paraph/{id}"
,
method
=
RequestMethod
.
GET
)
@ApiOperation
(
value
=
"词组释义"
,
nickname
=
"词组释义"
,
httpMethod
=
"GET"
,
produces
=
MimeTypeUtils
.
APPLICATION_JSON_VALUE
,
response
=
StatementParaphDTO
.
class
)
public
JsonResult
statementParaph
(
@PathVariable
(
"id"
)
Long
id
)
{
WordDomain
statement
=
wordService
.
get
(
id
);
return
successResult
(
"success"
,
StatementParaphDTO
.
fromDomain
(
statement
));
...
...
@@ -87,6 +92,7 @@ public class WordController extends BaseController {
* @date 2018/1/9
*/
@RequestMapping
(
value
=
"/statement/baike/{id}"
,
method
=
RequestMethod
.
GET
)
@ApiOperation
(
value
=
"词组百科"
,
nickname
=
"词组百科"
,
httpMethod
=
"GET"
,
produces
=
MimeTypeUtils
.
APPLICATION_JSON_VALUE
,
response
=
StatementBaikeDTO
.
class
)
public
JsonResult
statementBaike
(
@PathVariable
(
"id"
)
Long
id
)
{
WordDomain
statement
=
wordService
.
get
(
id
);
return
successResult
(
"success"
,
StatementBaikeDTO
.
fromDomain
(
statement
));
...
...
serverside/cihai-app/src/main/java/com/dookay/cihai/app/controller/dto/CharacterBaikeDTO.java
View file @
c753149
...
...
@@ -17,6 +17,8 @@ package com.dookay.cihai.app.controller.dto;
import
com.dookay.cihai.core.word.domain.WordDomain
;
import
com.dookay.coral.common.core.utils.lang.StringUtils
;
import
com.dookay.coral.common.web.utils.upload.model.ImageModel
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.util.Arrays
;
...
...
@@ -31,12 +33,19 @@ import java.util.stream.Collectors;
@Data
public
class
CharacterBaikeDTO
{
@ApiModelProperty
(
"词id"
)
private
Long
wordId
;
@ApiModelProperty
(
"字"
)
private
String
word
;
@ApiModelProperty
(
"上面的简介"
)
private
List
<
String
>
brief
;
@ApiModelProperty
(
"下面的释义主体"
)
private
String
body
;
@ApiModelProperty
(
"拼写"
)
private
List
<
String
>
spell
;
@ApiModelProperty
(
"相册"
)
private
List
<
ImageModel
>
images
;
@ApiModelProperty
(
"视频列表"
)
private
List
<
ImageModel
>
videos
;
public
static
CharacterBaikeDTO
fromDomain
(
WordDomain
word
)
{
...
...
serverside/cihai-app/src/main/java/com/dookay/cihai/app/controller/dto/CharacterParaphDTO.java
View file @
c753149
...
...
@@ -16,6 +16,7 @@ package com.dookay.cihai.app.controller.dto;
import
com.dookay.cihai.core.word.domain.WordDomain
;
import
com.dookay.coral.common.core.utils.lang.StringUtils
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.util.Arrays
;
...
...
@@ -29,10 +30,15 @@ import java.util.stream.Collectors;
*/
@Data
public
class
CharacterParaphDTO
{
@ApiModelProperty
(
"词id"
)
private
Long
wordId
;
@ApiModelProperty
(
"字"
)
private
String
word
;
@ApiModelProperty
(
"上面的简介"
)
private
List
<
String
>
brief
;
@ApiModelProperty
(
"下面的释义主体"
)
private
String
body
;
@ApiModelProperty
(
"拼写"
)
private
List
<
String
>
spell
;
public
static
CharacterParaphDTO
fromDomain
(
WordDomain
word
)
{
...
...
serverside/cihai-app/src/main/java/com/dookay/cihai/app/controller/dto/StatementBaikeDTO.java
View file @
c753149
...
...
@@ -17,6 +17,7 @@ package com.dookay.cihai.app.controller.dto;
import
com.dookay.cihai.core.word.domain.WordDomain
;
import
com.dookay.coral.common.core.utils.lang.StringUtils
;
import
com.dookay.coral.common.web.utils.upload.model.ImageModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.util.Arrays
;
...
...
@@ -31,12 +32,19 @@ import java.util.stream.Collectors;
*/
@Data
public
class
StatementBaikeDTO
{
@ApiModelProperty
(
"词id"
)
private
Long
wordId
;
@ApiModelProperty
(
"词"
)
private
String
word
;
@ApiModelProperty
(
"上面的简介"
)
private
List
<
String
>
brief
;
@ApiModelProperty
(
"下面的释义主体"
)
private
String
body
;
@ApiModelProperty
(
"拼写"
)
private
String
spell
;
@ApiModelProperty
(
"相册"
)
private
List
<
ImageModel
>
images
;
@ApiModelProperty
(
"视频列表"
)
private
List
<
ImageModel
>
videos
;
public
static
StatementBaikeDTO
fromDomain
(
WordDomain
word
)
{
...
...
serverside/cihai-app/src/main/java/com/dookay/cihai/app/controller/dto/StatementParaphDTO.java
View file @
c753149
...
...
@@ -16,6 +16,7 @@ package com.dookay.cihai.app.controller.dto;
import
com.dookay.cihai.core.word.domain.WordDomain
;
import
com.dookay.coral.common.core.utils.lang.StringUtils
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.util.Arrays
;
...
...
@@ -30,10 +31,16 @@ import java.util.stream.Collectors;
*/
@Data
public
class
StatementParaphDTO
{
@ApiModelProperty
(
"词id"
)
private
Long
wordId
;
@ApiModelProperty
(
"字"
)
private
String
word
;
@ApiModelProperty
(
"上面的简介"
)
private
List
<
String
>
brief
;
@ApiModelProperty
(
"下面的释义主体"
)
private
String
body
;
@ApiModelProperty
(
"拼写"
)
private
String
spell
;
public
static
StatementParaphDTO
fromDomain
(
WordDomain
word
)
{
...
...
serverside/cihai-app/src/main/webapp/WEB-INF/web.xml
0 → 100644
View file @
c753149
<?xml version="1.0" encoding="UTF-8"?>
<web-app
xmlns=
"http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=
"http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version=
"3.1"
>
</web-app>
\ No newline at end of file
serverside/cihai-app/src/main/webapp/api/jsp/config.json
0 → 100644
View file @
c753149
/*
前后端通信相关的配置
,
注释只允许使用多行方式
*/
{
"formData"
:{},
"fileManagerCategoryAction"
:
"filecategory"
,
"fileManagerCategoryList"
:[
{
"id"
:
1
,
"pid"
:
0
,
"type"
:
"image"
,
"title"
:
"Title"
}
],
/*
上传图片配置项
*/
"physicalPath"
:
"/data/www/uploads/niushilan/"
,
"imageActionName"
:
"uploadimage"
,
/*
执行上传图片的action名称
*/
"imageFieldName"
:
"upfile"
,
/*
提交的图片表单名称
*/
"imageMaxSize"
:
2048000
,
/*
上传大小限制,单位B
*/
"imageAllowFiles"
:
[
".png"
,
".jpg"
,
".jpeg"
,
".gif"
,
".bmp"
],
/*
上传图片格式显示
*/
"imageCompressEnable"
:
true
,
/*
是否压缩图片
,
默认是
true
*/
"imageCompressBorder"
:
1600
,
/*
图片压缩最长边限制
*/
"imageInsertAlign"
:
"none"
,
/*
插入的图片浮动方式
*/
"imageUrlPrefix"
:
""
,
/*
图片访问路径前缀
*/
"imagePathFormat"
:
"/admin/image/{yyyy}{mm}{dd}/{time}{rand:6}"
,
/*
上传保存路径
,
可以自定义保存路径和文件名格式
*/
/*
{
filename
}
会替换成原文件名
,
配置这项需要注意中文乱码问题
*/
/*
{
rand
:
6
}
会替换成随机数
,
后面的数字是随机数的位数
*/
/*
{
time
}
会替换成时间戳
*/
/*
{
yyyy
}
会替换成四位年份
*/
/*
{
yy
}
会替换成两位年份
*/
/*
{
mm
}
会替换成两位月份
*/
/*
{
dd
}
会替换成两位日期
*/
/*
{
hh
}
会替换成两位小时
*/
/*
{
ii
}
会替换成两位分钟
*/
/*
{
ss
}
会替换成两位秒
*/
/*
非法字符
\
:
*
?
" < > | */
/* 具请体看线上文档: fex.baidu.com/ueditor/#use-format_upload_filename */
/* 涂鸦图片上传配置项 */
"
scrawlActionName
": "
uploadscrawl
", /* 执行上传涂鸦的action名称 */
"
scrawlFieldName
": "
upfile
", /* 提交的图片表单名称 */
"
scrawlPathFormat
": "
/admin/image/
{
yyyy
}{
mm
}{
dd
}
/
{
time
}{
rand
:
6
}
", /* 上传保存路径,可以自定义保存路径和文件名格式 */
"
scrawlMaxSize
": 2048000, /* 上传大小限制,单位B */
"
scrawlUrlPrefix
": "", /* 图片访问路径前缀 */
"
scrawlInsertAlign
": "
none
",
/* 截图工具上传 */
"
snapscreenActionName
": "
uploadimage
", /* 执行上传截图的action名称 */
"
snapscreenPathFormat
": "
/admin/image/
{
yyyy
}{
mm
}{
dd
}
/
{
time
}{
rand
:
6
}
", /* 上传保存路径,可以自定义保存路径和文件名格式 */
"
snapscreenUrlPrefix
": "", /* 图片访问路径前缀 */
"
snapscreenInsertAlign
": "
none
", /* 插入的图片浮动方式 */
/* 抓取远程图片配置 */
"
catcherLocalDomain
": ["
127.0
.
0.1
", "
localhost
", "
img.baidu.com
"],
"
catcherActionName
": "
catchimage
", /* 执行抓取远程图片的action名称 */
"
catcherFieldName
": "
source
", /* 提交的图片列表表单名称 */
"
catcherPathFormat
": "
/admin/image/
{
yyyy
}{
mm
}{
dd
}
/
{
time
}{
rand
:
6
}
", /* 上传保存路径,可以自定义保存路径和文件名格式 */
"
catcherUrlPrefix
": "", /* 图片访问路径前缀 */
"
catcherMaxSize
": 2048000, /* 上传大小限制,单位B */
"
catcherAllowFiles
": ["
.png
", "
.jpg
", "
.jpeg
", "
.gif
", "
.bmp
"], /* 抓取图片格式显示 */
/* 上传视频配置 */
"
videoActionName
": "
uploadvideo
", /* 执行上传视频的action名称 */
"
videoFieldName
": "
upfile
", /* 提交的视频表单名称 */
"
videoPathFormat
": "
/uploads/video/
{
yyyy
}{
mm
}{
dd
}
/
{
time
}{
rand
:
6
}
", /* 上传保存路径,可以自定义保存路径和文件名格式 */
"
videoUrlPrefix
": "", /* 视频访问路径前缀 */
"
videoMaxSize
": 102400000, /* 上传大小限制,单位B,默认100MB */
"
videoAllowFiles
": [
"
.flv
", "
.swf
", "
.mkv
", "
.avi
", "
.rm
", "
.rmvb
", "
.mpeg
", "
.mpg
",
"
.ogg
", "
.ogv
", "
.mov
", "
.wmv
", "
.mp
4
", "
.webm
", "
.mp
3
", "
.wav
", "
.mid
"], /* 上传视频格式显示 */
/* 上传文件配置 */
"
fileActionName
": "
uploadfile
", /* controller里,执行上传视频的action名称 */
"
fileFieldName
": "
upfile
", /* 提交的文件表单名称 */
"
filePathFormat
": "
/file/
{
yyyy
}{
mm
}{
dd
}
/
{
time
}{
rand
:
6
}
", /* 上传保存路径,可以自定义保存路径和文件名格式 */
"
fileUrlPrefix
": "", /* 文件访问路径前缀 */
"
fileMaxSize
": 51200000, /* 上传大小限制,单位B,默认50MB */
"
fileAllowFiles
": [
"
.png
", "
.jpg
", "
.jpeg
", "
.gif
", "
.bmp
",
"
.flv
", "
.swf
", "
.mkv
", "
.avi
", "
.rm
", "
.rmvb
", "
.mpeg
", "
.mpg
",
"
.ogg
", "
.ogv
", "
.mov
", "
.wmv
", "
.mp
4
", "
.webm
", "
.mp
3
", "
.wav
", "
.mid
",
"
.rar
", "
.zip
", "
.tar
", "
.gz
", "
.
7
z
", "
.bz
2
", "
.cab
", "
.iso
",
"
.doc
", "
.docx
", "
.xls
", "
.xlsx
", "
.ppt
", "
.pptx
", "
.pdf
", "
.txt
", "
.md
", "
.xml
"
], /* 上传文件格式显示 */
/* 列出指定目录下的图片 */
"
imageManagerActionName
": "
listimage
", /* 执行图片管理的action名称 */
"
imageManagerListPath
": "
/ueditor/jsp/admin/image/
", /* 指定要列出图片的目录 */
"
imageManagerListSize
": 20, /* 每次列出文件数量 */
"
imageManagerUrlPrefix
": "", /* 图片访问路径前缀 */
"
imageManagerInsertAlign
": "
none
", /* 插入的图片浮动方式 */
"
imageManagerAllowFiles
": ["
.png
", "
.jpg
", "
.jpeg
", "
.gif
", "
.bmp
"], /* 列出的文件类型 */
/* 列出指定目录下的文件 */
"
fileManagerActionName
": "
listfile
", /* 执行文件管理的action名称 */
"
fileManagerListPath
": "
/ueditor/jsp/uploads/file/
", /* 指定要列出文件的目录 */
"
fileManagerUrlPrefix
": "", /* 文件访问路径前缀 */
"
fileManagerListSize
": 20, /* 每次列出文件数量 */
"
fileManagerAllowFiles
": [
"
.png
", "
.jpg
", "
.jpeg
", "
.gif
", "
.bmp
",
"
.flv
", "
.swf
", "
.mkv
", "
.avi
", "
.rm
", "
.rmvb
", "
.mpeg
", "
.mpg
",
"
.ogg
", "
.ogv
", "
.mov
", "
.wmv
", "
.mp
4
", "
.webm
", "
.mp
3
", "
.wav
", "
.mid
",
"
.rar
", "
.zip
", "
.tar
", "
.gz
", "
.
7
z
", "
.bz
2
", "
.cab
", "
.iso
",
"
.doc
", "
.docx
", "
.xls
", "
.xlsx
", "
.ppt
", "
.pptx
", "
.pdf
", "
.txt
", "
.md
", "
.xml
"
] /* 列出的文件类型 */
}
\ No newline at end of file
serverside/cihai-app/src/main/webapp/api/jsp/controller.jsp
0 → 100644
View file @
c753149
<%@ page language="java" contentType="text/html; charset=UTF-8"
import="com.baidu.ueditor.ActionEnter"
pageEncoding="UTF-8"%>
<%@ page trimDirectiveWhitespaces="true" %>
<%
request.setCharacterEncoding( "utf-8" );
response.setHeader("Content-Type" , "text/html");
/*服务器物理根路径*/
String rootPath = application.getRealPath("/");
out.write( new ActionEnter(request, rootPath ).exec() );
%>
\ No newline at end of file
serverside/cihai-core/pom.xml
View file @
c753149
...
...
@@ -48,6 +48,16 @@
<artifactId>
java-sdk
</artifactId>
<version>
3.4.0
</version>
</dependency>
<dependency>
<groupId>
io.springfox
</groupId>
<artifactId>
springfox-swagger2
</artifactId>
<scope>
provided
</scope>
</dependency>
<dependency>
<groupId>
io.springfox
</groupId>
<artifactId>
springfox-swagger-ui
</artifactId>
<scope>
provided
</scope>
</dependency>
</dependencies>
</project>
serverside/cihai-core/src/main/java/com/dookay/cihai/core/word/dto/OneCharacterDTO.java
0 → 100644
View file @
c753149
package
com
.
dookay
.
cihai
.
core
.
word
.
dto
;
/*****************************************
* *
* @dookay.com Internet make it happen *
* ----------- ----------------------- *
* dddd ddddd Internet make it happen *
* o o o Internet make it happen *
* k k k Internet make it happen *
* a a a Internet make it happen *
* yyyy yyyyy Internet make it happen *
* ----------- ----------------------- *
* @dookay.com Internet make it happen *
* *
****************************************/
import
com.dookay.cihai.core.word.domain.WordDomain
;
import
com.dookay.coral.common.core.utils.lang.StringUtils
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
/**
* 一日一词 dto
*
* @author houkun
* @date 2018/1/10
*/
@Data
public
class
OneCharacterDTO
{
@ApiModelProperty
(
"字名"
)
private
String
word
;
@ApiModelProperty
(
"描述"
)
private
String
description
;
public
static
OneCharacterDTO
fromDomain
(
WordDomain
word
)
{
String
description
=
""
;
String
baikeBrief
=
word
.
getBaikeBrief
();
int
i
=
StringUtils
.
indexOf
(
baikeBrief
,
'。'
);
if
(
i
!=
-
1
)
{
description
=
StringUtils
.
substring
(
baikeBrief
,
0
,
i
+
1
);
}
OneCharacterDTO
dto
=
new
OneCharacterDTO
();
dto
.
setWord
(
word
.
getWord
());
dto
.
setDescription
(
description
);
return
dto
;
}
}
serverside/cihai-core/src/main/java/com/dookay/cihai/core/word/dto/RecommendStatementDTO.java
0 → 100644
View file @
c753149
package
com
.
dookay
.
cihai
.
core
.
word
.
dto
;
/*****************************************
* *
* @dookay.com Internet make it happen *
* ----------- ----------------------- *
* dddd ddddd Internet make it happen *
* o o o Internet make it happen *
* k k k Internet make it happen *
* a a a Internet make it happen *
* yyyy yyyyy Internet make it happen *
* ----------- ----------------------- *
* @dookay.com Internet make it happen *
* *
****************************************/
import
com.dookay.cihai.core.word.domain.WordDomain
;
import
com.dookay.coral.common.core.utils.lang.StringUtils
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.util.List
;
/**
* 推荐词条
*
* @author houkun
* @date 2018/1/10
*/
@Data
public
class
RecommendStatementDTO
{
@ApiModelProperty
(
"词"
)
private
String
word
;
@ApiModelProperty
(
"描述"
)
private
String
description
;
@ApiModelProperty
(
"相关词"
)
private
List
<
String
>
relatedStatement
;
public
static
RecommendStatementDTO
fromDomain
(
WordDomain
word
)
{
String
description
=
""
;
String
baikeBrief
=
word
.
getBaikeBrief
();
int
i
=
StringUtils
.
indexOf
(
baikeBrief
,
'。'
);
if
(
i
!=
-
1
)
{
description
=
StringUtils
.
substring
(
baikeBrief
,
0
,
i
+
1
);
}
RecommendStatementDTO
dto
=
new
RecommendStatementDTO
();
dto
.
setWord
(
word
.
getWord
());
dto
.
setDescription
(
description
);
return
dto
;
}
}
serverside/cihai-core/src/main/java/com/dookay/cihai/core/word/mapper/WordMapper.java
View file @
c753149
package
com
.
dookay
.
cihai
.
core
.
word
.
mapper
;
import
com.dookay.coral.common.core.persistence.Mapper
;
import
com.dookay.cihai.core.word.domain.WordDomain
;
import
com.dookay.coral.common.core.persistence.Mapper
;
import
org.apache.ibatis.annotations.Param
;
/**
* 词条
* @author wangwei
* @since 2017年12月06日
* @version V1.0
*/
* 词条
*
* @author wangwei
* @version V1.0
* @since 2017年12月06日
*/
public
interface
WordMapper
extends
Mapper
<
WordDomain
>
{
/**
* 词长短于
*
* @author houkun
* @date 2018/1/10
*/
WordDomain
selectWordLengthLessOrEquealThan
(
@Param
(
"length"
)
int
length
);
/**
* 词长长于
*
* @author houkun
* @date 2018/1/10
*/
WordDomain
selectWordLengthMoreThan
(
@Param
(
"length"
)
int
length
);
}
serverside/cihai-core/src/main/java/com/dookay/cihai/core/word/service/IWordService.java
View file @
c753149
package
com
.
dookay
.
cihai
.
core
.
word
.
service
;
import
com.dookay.cihai.core.word.dto.OneCharacterDTO
;
import
com.dookay.cihai.core.word.dto.RecommendStatementDTO
;
import
com.dookay.coral.common.core.service.IBaseService
;
import
com.dookay.cihai.core.word.domain.WordDomain
;
...
...
@@ -10,4 +12,17 @@ import com.dookay.cihai.core.word.domain.WordDomain;
*/
public
interface
IWordService
extends
IBaseService
<
WordDomain
>
{
/**
* 每日一字
* @author houkun
* @date 2018/1/10
*/
OneCharacterDTO
oneDayOnCharacter
();
/**
* 每日一词
* @author houkun
* @date 2018/1/10
*/
RecommendStatementDTO
RecomendStatement
();
}
serverside/cihai-core/src/main/java/com/dookay/cihai/core/word/service/impl/WordServiceImpl.java
View file @
c753149
package
com
.
dookay
.
cihai
.
core
.
word
.
service
.
impl
;
import
com.dookay.cihai.core.word.dto.OneCharacterDTO
;
import
com.dookay.cihai.core.word.dto.RecommendStatementDTO
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
com.dookay.coral.common.core.service.impl.BaseServiceImpl
;
...
...
@@ -20,4 +22,15 @@ public class WordServiceImpl extends BaseServiceImpl<WordDomain> implements IWor
@Autowired
private
WordMapper
wordMapper
;
@Override
public
OneCharacterDTO
oneDayOnCharacter
()
{
WordDomain
wordDomain
=
wordMapper
.
selectWordLengthLessOrEquealThan
(
3
);
return
OneCharacterDTO
.
fromDomain
(
wordDomain
);
}
@Override
public
RecommendStatementDTO
RecomendStatement
()
{
WordDomain
wordDomain
=
wordMapper
.
selectWordLengthMoreThan
(
3
);
return
RecommendStatementDTO
.
fromDomain
(
wordDomain
);
}
}
serverside/cihai-core/src/main/resources/mapper/WordMapper.xml
View file @
c753149
...
...
@@ -17,9 +17,27 @@
a.`baike_video` as 'baikeVideo',
a.`create_time` as 'createTime',
a.`update_time` as 'updateTime',
a.`word_spell` as 'wordSpell',
a.`category` as 'category',
a.`word_alias` as 'wordAlias',
a.`is_polyphone` as 'isPolyphone',
a.`word_brief` as 'wordBrief',
a.`baike_brief` as 'baikeBrief',
</trim>
from
from
`t_word` as a
</sql>
<select
id=
"selectWordLengthMoreThan"
resultType=
"com.dookay.cihai.core.word.domain.WordDomain"
>
<include
refid=
"selectSql"
/>
WHERE LENGTH(a.word)
>
#{length}
ORDER BY a.create_time DESC
LIMIT 0,1
</select>
<select
id=
"selectWordLengthLessOrEquealThan"
resultType=
"com.dookay.cihai.core.word.domain.WordDomain"
>
<include
refid=
"selectSql"
/>
WHERE LENGTH(a.word)
<
= #{length}
ORDER BY a.create_time DESC
LIMIT 0,1
</select>
</mapper>
\ No newline at end of file
Write
Preview
Markdown
is supported
Attach a file
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 post a comment