page 问题 sharding配置

This commit is contained in:
2025-01-03 10:23:25 +08:00
parent c07e7f48eb
commit bb42b219d4
12 changed files with 99 additions and 72 deletions

View File

@@ -12,7 +12,7 @@ minimum-idle: 5
# 最大连接数小于等于0会被重置为默认值10大于零小于1会被重置为minimum-idle的值
maximum-pool-size: 15
# 空闲连接超时时间默认值60000010分钟大于等于max-lifetime且max-lifetime>0会被重置为0不等于0且小于10秒会被重置为10秒。
idle-timeout: 30000
idle-timeout: 20000
# 连接最大存活时间.不等于0且小于30秒会被重置为默认值30分钟.设置应该比mysql设置的超时时间短
max-lifetime: 30000
# 连接超时时间:毫秒小于250毫秒否则被重置为默认值30秒
@@ -167,24 +167,30 @@ spring:
duanju:
masterDataSourceName: duanju
slaveDataSourceNames:
# - duanju
- duanju-slave
duanju-0:
masterDataSourceName: duanju-0
slaveDataSourceNames:
# - duanju-0
- duanju-slave-0
duanju-1:
masterDataSourceName: duanju-1
slaveDataSourceNames:
# - duanju-1
- duanju-slave-1
duanju-2:
masterDataSourceName: duanju-2
slaveDataSourceNames:
# - duanju-2
- duanju-slave-2
duanju-3:
masterDataSourceName: duanju-3
slaveDataSourceNames:
# - duanju-3
- duanju-slave-3
duanju-4:
masterDataSourceName: duanju-4
slaveDataSourceNames:
# - duanju-4
- duanju-slave-4

View File

@@ -12,7 +12,7 @@ minimum-idle: 5
# 最大连接数小于等于0会被重置为默认值10大于零小于1会被重置为minimum-idle的值
maximum-pool-size: 15
# 空闲连接超时时间默认值60000010分钟大于等于max-lifetime且max-lifetime>0会被重置为0不等于0且小于10秒会被重置为10秒。
idle-timeout: 30000
idle-timeout: 20000
# 连接最大存活时间.不等于0且小于30秒会被重置为默认值30分钟.设置应该比mysql设置的超时时间短
max-lifetime: 30000
# 连接超时时间:毫秒小于250毫秒否则被重置为默认值30秒

View File

@@ -19,25 +19,33 @@ management:
db:
enabled: false #关闭数据库健康检查isV
#mybatis
mybatis-plus:
mapper-locations: classpath*:/mapper/**/*.xml
#实体扫描多个package用逗号或者分号分隔
typeAliasesPackage: com.sqx.modules.*.entity
global-config:
#数据库相关配置
db-config:
#主键类型 AUTO:"数据库ID自增", INPUT:"用户输入ID", ID_WORKER:"全局唯一ID (数字类型唯一ID)", UUID:"全局唯一ID UUID";
id-type: AUTO
logic-delete-value: -1
logic-not-delete-value: 0
banner: false
#原生配置
configuration:
map-underscore-to-camel-case: true
cache-enabled: false
call-setters-on-nulls: true
jdbc-type-for-null: 'null'
# log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
pagehelper:
offsetAsPageNum: true
rowBoundsWithCount: true
helperDialect: mysql
reasonable: true
supportMethodsArguments: true
params:
count: countSql
#mybatis-plus:
# mapper-locations: classpath*:/mapper/**/*.xml
# #实体扫描多个package用逗号或者分号分隔
# typeAliasesPackage: com.sqx.modules.*.entity
# global-config:
# #数据库相关配置
# db-config:
# #主键类型 AUTO:"数据库ID自增", INPUT:"用户输入ID", ID_WORKER:"全局唯一ID (数字类型唯一ID)", UUID:"全局唯一ID UUID";
# id-type: AUTO
# logic-delete-value: -1
# logic-not-delete-value: 0
# banner: false
# #原生配置
# configuration:
# map-underscore-to-camel-case: true
# cache-enabled: false
# call-setters-on-nulls: true
# jdbc-type-for-null: 'null'
## log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
sqx:
redis:
@@ -70,7 +78,7 @@ spring:
allow-bean-definition-overriding: true
# 环境 dev|test|prod
profiles:
active: prod
active: dev
# jackson时间格式化
jackson:
time-zone: GMT+8
@@ -98,6 +106,9 @@ spring:
# pathmatch:
# matching-strategy: ant_path_matcher
shardingsphere:
#广播表
broadcast-tables:
- course
# 短剧集表 通过course_id 分
course-details:
- course_details
@@ -116,15 +127,17 @@ spring:
- user_sign_record
- invite_achievement
- invite_money
- user_info
- sys_user
#中心表
center-tables:
- message_info
- announcement
- schedule_job_log
- invite
- msg
- sys_role_menu
- sdk_info
- course
- user_integral_details
- common_info
- sys_log
@@ -133,7 +146,6 @@ spring:
- sys_user_role
- sys_menu
- comment_good
- sys_user
- course_comment
- banner
- disc_spinning

View File

@@ -5,28 +5,23 @@
<select id="selectCourseByCollect" resultType="com.sqx.modules.course.entity.Course">
SELECT
MAX(u.update_time) AS produceEndTime,
c.*,
d.course_details_name AS courseDetailsName,
d.course_details_id AS courseDetailsId,
COUNT(d.course_details_id) AS courseDetailsCount
FROM
course_collect u
LEFT JOIN
course c ON u.course_id = c.course_id
LEFT JOIN
course_details d ON u.course_details_id = d.course_details_id
LEFT JOIN
course_collect cc ON u.course_id = cc.course_id AND cc.user_id = #{userId} AND cc.classify = 3
WHERE
u.user_id = #{userId}
AND u.classify = #{classify}
AND c.course_id IS NOT NULL
GROUP BY
u.course_id, c.course_id, d.course_details_name, d.course_details_id
ORDER BY
produceEndTime DESC;
SELECT MAX(u.update_time) AS produceEndTime,
c.*,
d.course_details_name AS courseDetailsName,
d.course_details_id AS courseDetailsId,
COUNT(d.course_details_id) AS courseDetailsCount
FROM course_collect u
LEFT JOIN
course c ON u.course_id = c.course_id
LEFT JOIN
course_details d ON u.course_details_id = d.course_details_id
LEFT JOIN
course_collect cc ON u.course_id = cc.course_id AND cc.user_id = #{userId} AND cc.classify = 3
WHERE u.user_id = #{userId}
AND u.classify = #{classify}
AND c.course_id IS NOT NULL
GROUP BY u.course_id, c.course_id, d.course_details_name, d.course_details_id
ORDER BY produceEndTime DESC
</select>
</mapper>