mirror of
https://github.com/201206030/novel.git
synced 2025-04-27 07:30:50 +00:00
perf: 优化数据库列常量
This commit is contained in:
parent
9fc5aabf36
commit
89c163b3af
@ -9,7 +9,7 @@ package io.github.xxyopen.novel.core.constant;
|
||||
public class ApiRouterConsts {
|
||||
|
||||
private ApiRouterConsts() {
|
||||
throw new IllegalStateException("Constant class");
|
||||
throw new IllegalStateException(SystemConfigConsts.CONST_INSTANCE_EXCEPTION_MSG);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -16,19 +16,12 @@ public class DatabaseConsts {
|
||||
*/
|
||||
public static class UserInfoTable {
|
||||
|
||||
@Getter
|
||||
public enum ColumnEnum {
|
||||
|
||||
USERNAME("username");
|
||||
|
||||
private String name;
|
||||
|
||||
ColumnEnum(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
private UserInfoTable() {
|
||||
throw new IllegalStateException(SystemConfigConsts.CONST_INSTANCE_EXCEPTION_MSG);
|
||||
}
|
||||
|
||||
public static final String COLUMN_USERNAME = "username";
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@ -36,19 +29,12 @@ public class DatabaseConsts {
|
||||
*/
|
||||
public static class AuthorInfoTable {
|
||||
|
||||
@Getter
|
||||
public enum ColumnEnum {
|
||||
|
||||
USER_ID("user_id");
|
||||
|
||||
private String name;
|
||||
|
||||
ColumnEnum(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
private AuthorInfoTable() {
|
||||
throw new IllegalStateException(SystemConfigConsts.CONST_INSTANCE_EXCEPTION_MSG);
|
||||
}
|
||||
|
||||
public static final String COLUMN_USER_ID = "user_id";
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@ -56,19 +42,12 @@ public class DatabaseConsts {
|
||||
*/
|
||||
public static class BookCategoryTable {
|
||||
|
||||
@Getter
|
||||
public enum ColumnEnum {
|
||||
|
||||
WORK_DIRECTION("work_direction");
|
||||
|
||||
private String name;
|
||||
|
||||
ColumnEnum(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
private BookCategoryTable() {
|
||||
throw new IllegalStateException(SystemConfigConsts.CONST_INSTANCE_EXCEPTION_MSG);
|
||||
}
|
||||
|
||||
public static final String COLUMN_WORK_DIRECTION = "work_direction";
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@ -76,21 +55,16 @@ public class DatabaseConsts {
|
||||
*/
|
||||
public static class BookTable {
|
||||
|
||||
@Getter
|
||||
public enum ColumnEnum {
|
||||
|
||||
CATEGORY_ID("category_id"),
|
||||
VISIT_COUNT("visit_count"),
|
||||
LAST_CHAPTER_UPDATE_TIME("last_chapter_update_time");
|
||||
|
||||
private String name;
|
||||
|
||||
ColumnEnum(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
private BookTable() {
|
||||
throw new IllegalStateException(SystemConfigConsts.CONST_INSTANCE_EXCEPTION_MSG);
|
||||
}
|
||||
|
||||
public static final String COLUMN_CATEGORY_ID = "category_id";
|
||||
|
||||
public static final String COLUMN_VISIT_COUNT = "visit_count";
|
||||
|
||||
public static final String COLUMN_LAST_CHAPTER_UPDATE_TIME = "last_chapter_update_time";
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@ -98,21 +72,16 @@ public class DatabaseConsts {
|
||||
*/
|
||||
public static class BookChapterTable {
|
||||
|
||||
@Getter
|
||||
public enum ColumnEnum {
|
||||
|
||||
BOOK_ID("book_id"),
|
||||
CHAPTER_NUM("chapter_num"),
|
||||
LAST_CHAPTER_UPDATE_TIME("last_chapter_update_time");
|
||||
|
||||
private String name;
|
||||
|
||||
ColumnEnum(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
private BookChapterTable() {
|
||||
throw new IllegalStateException(SystemConfigConsts.CONST_INSTANCE_EXCEPTION_MSG);
|
||||
}
|
||||
|
||||
public static final String COLUMN_BOOK_ID = "book_id";
|
||||
|
||||
public static final String COLUMN_CHAPTER_NUM = "chapter_num";
|
||||
|
||||
public static final String COLUMN_LAST_CHAPTER_UPDATE_TIME = "last_chapter_update_time";
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@ -120,19 +89,12 @@ public class DatabaseConsts {
|
||||
*/
|
||||
public static class BookContentTable {
|
||||
|
||||
@Getter
|
||||
public enum ColumnEnum {
|
||||
|
||||
CHAPTER_ID("chapter_id");
|
||||
|
||||
private String name;
|
||||
|
||||
ColumnEnum(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
private BookContentTable() {
|
||||
throw new IllegalStateException(SystemConfigConsts.CONST_INSTANCE_EXCEPTION_MSG);
|
||||
}
|
||||
|
||||
public static final String COLUMN_CHAPTER_ID = "chapter_id";
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@ -140,19 +102,12 @@ public class DatabaseConsts {
|
||||
*/
|
||||
public static class NewsContentTable {
|
||||
|
||||
@Getter
|
||||
public enum ColumnEnum {
|
||||
|
||||
NEWS_ID("news_id");
|
||||
|
||||
private String name;
|
||||
|
||||
ColumnEnum(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
private NewsContentTable() {
|
||||
throw new IllegalStateException(SystemConfigConsts.CONST_INSTANCE_EXCEPTION_MSG);
|
||||
}
|
||||
|
||||
public static final String COLUMN_NEWS_ID = "news_id";
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -9,7 +9,7 @@ package io.github.xxyopen.novel.core.constant;
|
||||
public class SystemConfigConsts {
|
||||
|
||||
private SystemConfigConsts() {
|
||||
throw new IllegalStateException("Constant class");
|
||||
throw new IllegalStateException(CONST_INSTANCE_EXCEPTION_MSG);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -32,4 +32,9 @@ public class SystemConfigConsts {
|
||||
* */
|
||||
public static final String NOVEL_ADMIN_KEY = "admin";
|
||||
|
||||
/**
|
||||
* 常量类实例化异常信息
|
||||
* */
|
||||
public static final String CONST_INSTANCE_EXCEPTION_MSG = "Constant class";
|
||||
|
||||
}
|
||||
|
@ -32,7 +32,7 @@ public class AuthorInfoCacheManager {
|
||||
public AuthorInfoDto getAuthor(Long userId) {
|
||||
QueryWrapper<AuthorInfo> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper
|
||||
.eq(DatabaseConsts.AuthorInfoTable.ColumnEnum.USER_ID.getName(), userId)
|
||||
.eq(DatabaseConsts.AuthorInfoTable.COLUMN_USER_ID, userId)
|
||||
.last(DatabaseConsts.SqlEnum.LIMIT_1.getSql());
|
||||
AuthorInfo authorInfo = authorInfoMapper.selectOne(queryWrapper);
|
||||
if (Objects.isNull(authorInfo)) {
|
||||
|
@ -31,7 +31,7 @@ public class BookCategoryCacheManager {
|
||||
, value = CacheConsts.BOOK_CATEGORY_LIST_CACHE_NAME)
|
||||
public List<BookCategoryRespDto> listCategory(Integer workDirection) {
|
||||
QueryWrapper<BookCategory> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq(DatabaseConsts.BookCategoryTable.ColumnEnum.WORK_DIRECTION.getName(), workDirection);
|
||||
queryWrapper.eq(DatabaseConsts.BookCategoryTable.COLUMN_WORK_DIRECTION, workDirection);
|
||||
return bookCategoryMapper.selectList(queryWrapper).stream().map(v ->
|
||||
BookCategoryRespDto.builder()
|
||||
.id(v.getId())
|
||||
|
@ -28,7 +28,8 @@ public class BookContentCacheManager {
|
||||
, value = CacheConsts.BOOK_CONTENT_CACHE_NAME)
|
||||
public String getBookContent(Long chapterId) {
|
||||
QueryWrapper<BookContent> contentQueryWrapper = new QueryWrapper<>();
|
||||
contentQueryWrapper.eq(DatabaseConsts.BookContentTable.ColumnEnum.CHAPTER_ID.getName(), chapterId).last(DatabaseConsts.SqlEnum.LIMIT_1.getSql());
|
||||
contentQueryWrapper.eq(DatabaseConsts.BookContentTable.COLUMN_CHAPTER_ID, chapterId)
|
||||
.last(DatabaseConsts.SqlEnum.LIMIT_1.getSql());
|
||||
BookContent bookContent = bookContentMapper.selectOne(contentQueryWrapper);
|
||||
return bookContent.getContent();
|
||||
}
|
||||
|
@ -39,8 +39,8 @@ public class BookInfoCacheManager {
|
||||
// 查询首章ID
|
||||
QueryWrapper<BookChapter> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper
|
||||
.eq(DatabaseConsts.BookChapterTable.ColumnEnum.BOOK_ID.getName(), id)
|
||||
.orderByAsc(DatabaseConsts.BookChapterTable.ColumnEnum.CHAPTER_NUM.getName())
|
||||
.eq(DatabaseConsts.BookChapterTable.COLUMN_BOOK_ID, id)
|
||||
.orderByAsc(DatabaseConsts.BookChapterTable.COLUMN_CHAPTER_NUM)
|
||||
.last(DatabaseConsts.SqlEnum.LIMIT_1.getSql());
|
||||
BookChapter firstBookChapter = bookChapterMapper.selectOne(queryWrapper);
|
||||
// 组装响应对象
|
||||
@ -69,8 +69,8 @@ public class BookInfoCacheManager {
|
||||
, value = CacheConsts.LAST_UPDATE_BOOK_ID_LIST_CACHE_NAME)
|
||||
public List<Long> getLastUpdateIdList(Long categoryId) {
|
||||
QueryWrapper<BookInfo> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq(DatabaseConsts.BookTable.ColumnEnum.CATEGORY_ID.getName(), categoryId)
|
||||
.orderByDesc(DatabaseConsts.BookTable.ColumnEnum.LAST_CHAPTER_UPDATE_TIME.getName())
|
||||
queryWrapper.eq(DatabaseConsts.BookTable.COLUMN_CATEGORY_ID, categoryId)
|
||||
.orderByDesc(DatabaseConsts.BookTable.COLUMN_LAST_CHAPTER_UPDATE_TIME)
|
||||
.last(DatabaseConsts.SqlEnum.LIMIT_500.getSql());
|
||||
return bookInfoMapper.selectList(queryWrapper).stream().map(BookInfo::getId).toList();
|
||||
}
|
||||
|
@ -31,8 +31,7 @@ public class BookRankCacheManager {
|
||||
, value = CacheConsts.BOOK_VISIT_RANK_CACHE_NAME)
|
||||
public List<BookRankRespDto> listVisitRankBooks() {
|
||||
QueryWrapper<BookInfo> bookInfoQueryWrapper = new QueryWrapper<>();
|
||||
bookInfoQueryWrapper
|
||||
.orderByDesc(DatabaseConsts.BookTable.ColumnEnum.VISIT_COUNT.getName());
|
||||
bookInfoQueryWrapper.orderByDesc(DatabaseConsts.BookTable.COLUMN_VISIT_COUNT);
|
||||
return getBookRankRespDtos(bookInfoQueryWrapper);
|
||||
}
|
||||
|
||||
|
@ -103,7 +103,7 @@ public class BookServiceImpl implements BookService {
|
||||
|
||||
// 查询章节总数
|
||||
QueryWrapper<BookChapter> chapterQueryWrapper = new QueryWrapper<>();
|
||||
chapterQueryWrapper.eq(DatabaseConsts.BookChapterTable.ColumnEnum.BOOK_ID.getName(), bookId);
|
||||
chapterQueryWrapper.eq(DatabaseConsts.BookChapterTable.COLUMN_BOOK_ID, bookId);
|
||||
Long chapterTotal = bookChapterMapper.selectCount(chapterQueryWrapper);
|
||||
|
||||
// 组装数据并返回
|
||||
@ -150,9 +150,9 @@ public class BookServiceImpl implements BookService {
|
||||
|
||||
// 查询上一章信息并返回章节ID
|
||||
QueryWrapper<BookChapter> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq(DatabaseConsts.BookChapterTable.ColumnEnum.BOOK_ID.getName(), bookId)
|
||||
.lt(DatabaseConsts.BookChapterTable.ColumnEnum.CHAPTER_NUM.getName(), chapterNum)
|
||||
.orderByDesc(DatabaseConsts.BookChapterTable.ColumnEnum.CHAPTER_NUM.getName())
|
||||
queryWrapper.eq(DatabaseConsts.BookChapterTable.COLUMN_BOOK_ID, bookId)
|
||||
.lt(DatabaseConsts.BookChapterTable.COLUMN_CHAPTER_NUM, chapterNum)
|
||||
.orderByDesc(DatabaseConsts.BookChapterTable.COLUMN_CHAPTER_NUM)
|
||||
.last(DatabaseConsts.SqlEnum.LIMIT_1.getSql());
|
||||
return RestResp.ok(
|
||||
Optional.ofNullable(bookChapterMapper.selectOne(queryWrapper))
|
||||
@ -170,9 +170,9 @@ public class BookServiceImpl implements BookService {
|
||||
|
||||
// 查询下一章信息并返回章节ID
|
||||
QueryWrapper<BookChapter> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq(DatabaseConsts.BookChapterTable.ColumnEnum.BOOK_ID.getName(), bookId)
|
||||
.gt(DatabaseConsts.BookChapterTable.ColumnEnum.CHAPTER_NUM.getName(), chapterNum)
|
||||
.orderByAsc(DatabaseConsts.BookChapterTable.ColumnEnum.CHAPTER_NUM.getName())
|
||||
queryWrapper.eq(DatabaseConsts.BookChapterTable.COLUMN_BOOK_ID, bookId)
|
||||
.gt(DatabaseConsts.BookChapterTable.COLUMN_CHAPTER_NUM, chapterNum)
|
||||
.orderByAsc(DatabaseConsts.BookChapterTable.COLUMN_CHAPTER_NUM)
|
||||
.last(DatabaseConsts.SqlEnum.LIMIT_1.getSql());
|
||||
return RestResp.ok(
|
||||
Optional.ofNullable(bookChapterMapper.selectOne(queryWrapper))
|
||||
@ -184,8 +184,8 @@ public class BookServiceImpl implements BookService {
|
||||
@Override
|
||||
public RestResp<List<BookChapterRespDto>> listChapters(Long bookId) {
|
||||
QueryWrapper<BookChapter> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq(DatabaseConsts.BookChapterTable.ColumnEnum.BOOK_ID.getName(), bookId)
|
||||
.orderByAsc(DatabaseConsts.BookChapterTable.ColumnEnum.CHAPTER_NUM.getName());
|
||||
queryWrapper.eq(DatabaseConsts.BookChapterTable.COLUMN_BOOK_ID, bookId)
|
||||
.orderByAsc(DatabaseConsts.BookChapterTable.COLUMN_CHAPTER_NUM);
|
||||
return RestResp.ok(bookChapterMapper.selectList(queryWrapper).stream().map(v -> BookChapterRespDto.builder()
|
||||
.id(v.getId())
|
||||
.chapterName(v.getChapterName())
|
||||
|
@ -40,7 +40,7 @@ public class NewsServiceImpl implements NewsService {
|
||||
public RestResp<NewsInfoRespDto> getNews(Long id) {
|
||||
NewsInfo newsInfo = newsInfoMapper.selectById(id);
|
||||
QueryWrapper<NewsContent> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq(DatabaseConsts.NewsContentTable.ColumnEnum.NEWS_ID.getName(), id)
|
||||
queryWrapper.eq(DatabaseConsts.NewsContentTable.COLUMN_NEWS_ID, id)
|
||||
.last(DatabaseConsts.SqlEnum.LIMIT_1.getSql());
|
||||
NewsContent newsContent = newsContentMapper.selectOne(queryWrapper);
|
||||
return RestResp.ok(NewsInfoRespDto.builder()
|
||||
|
@ -53,8 +53,7 @@ public class UserServiceImpl implements UserService {
|
||||
|
||||
// 校验手机号是否已注册
|
||||
QueryWrapper<UserInfo> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq(DatabaseConsts.UserInfoTable.ColumnEnum.USERNAME.getName()
|
||||
, dto.getUsername())
|
||||
queryWrapper.eq(DatabaseConsts.UserInfoTable.COLUMN_USERNAME, dto.getUsername())
|
||||
.last(DatabaseConsts.SqlEnum.LIMIT_1.getSql());
|
||||
if (userInfoMapper.selectCount(queryWrapper) > 0) {
|
||||
// 手机号已注册
|
||||
@ -82,8 +81,7 @@ public class UserServiceImpl implements UserService {
|
||||
public RestResp<UserLoginRespDto> login(UserLoginReqDto dto) {
|
||||
// 查询用户信息
|
||||
QueryWrapper<UserInfo> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq(DatabaseConsts.UserInfoTable.ColumnEnum.USERNAME.getName()
|
||||
, dto.getUsername())
|
||||
queryWrapper.eq(DatabaseConsts.UserInfoTable.COLUMN_USERNAME, dto.getUsername())
|
||||
.last(DatabaseConsts.SqlEnum.LIMIT_1.getSql());
|
||||
UserInfo userInfo = userInfoMapper.selectOne(queryWrapper);
|
||||
if (Objects.isNull(userInfo)) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user