Skip to content

Commit bd35b68

Browse files
committed
update configuration
1 parent f8fb6fe commit bd35b68

6 files changed

Lines changed: 29 additions & 12 deletions

File tree

.idea/workspace.xml

Lines changed: 5 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/main/java/com/phantoms/phantomsbackend/common/config/LeanCloudConfig.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
import cn.leancloud.core.LeanCloud;
55
import lombok.Data;
66
import org.springframework.boot.context.properties.ConfigurationProperties;
7-
import org.springframework.context.annotation.Bean;
87
import org.springframework.context.annotation.Configuration;
8+
import jakarta.annotation.PostConstruct;
99

1010
@Data
1111
@Configuration
@@ -16,7 +16,7 @@ public class LeanCloudConfig {
1616
private String serverUrl;
1717
private String logLevel;
1818

19-
@Bean
19+
@PostConstruct
2020
public void initializeLeanCloud() {
2121
// 设置日志级别
2222
LeanCloud.setLogLevel(LCLogger.Level.valueOf(logLevel));

src/main/java/com/phantoms/phantomsbackend/common/config/PrimaryDataSourceConfig.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ public class PrimaryDataSourceConfig {
5555
@Value("${spring.datasource.hikari.minimum-idle}")
5656
private int hikariMinimumIdle;
5757

58-
@Value("${spring.datasource.hikari.pool-name}")
58+
@Value("${spring.datasource.primary.hikari.pool-name}")
5959
private String hikariPoolName;
6060

6161
@Value("${spring.datasource.hikari.data-source-properties.preparedStatementCacheQueries}")
@@ -96,7 +96,7 @@ public LocalContainerEntityManagerFactoryBean primaryEntityManagerFactory(
9696
EntityManagerFactoryBuilder builder, @Qualifier("primaryDataSource") DataSource dataSource) {
9797
return builder
9898
.dataSource(dataSource)
99-
.packages("com.phantoms.phantomsbackend.pojo.entity")
99+
.packages("com.phantoms.phantomsbackend.pojo.entity.primary")
100100
.persistenceUnit("primary")
101101
.build();
102102
}

src/main/java/com/phantoms/phantomsbackend/common/config/RedisConfig.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,10 @@ public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory redisC
1818
template.setKeySerializer(new StringRedisSerializer());
1919
template.setHashKeySerializer(new StringRedisSerializer());
2020

21-
// Set the serializer for values (default can be used here, but can be customized if needed)
21+
// Set the serializer for values
22+
template.setValueSerializer(new org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer());
23+
template.setHashValueSerializer(new org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer());
24+
2225
return template;
2326
}
2427
}

src/main/java/com/phantoms/phantomsbackend/common/config/SecondaryDataSourceConfig.java

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@
1717
import org.springframework.transaction.annotation.EnableTransactionManagement;
1818

1919
import javax.sql.DataSource;
20+
import java.util.HashMap;
21+
import java.util.Map;
2022

2123
@Configuration
2224
@EnableTransactionManagement
@@ -54,7 +56,7 @@ public class SecondaryDataSourceConfig {
5456
@Value("${spring.datasource.hikari.minimum-idle}")
5557
private int hikariMinimumIdle;
5658

57-
@Value("${spring.datasource.hikari.pool-name}")
59+
@Value("${spring.datasource.secondary.hikari.pool-name}")
5860
private String hikariPoolName;
5961

6062
@Value("${spring.datasource.hikari.data-source-properties.preparedStatementCacheQueries}")
@@ -91,10 +93,15 @@ public DataSource secondaryDataSource() {
9193
@Bean(name = "secondaryEntityManagerFactory")
9294
public LocalContainerEntityManagerFactoryBean secondaryEntityManagerFactory(
9395
EntityManagerFactoryBuilder builder, @Qualifier("secondaryDataSource") DataSource dataSource) {
96+
// 为MySQL设置独立的JPA方言
97+
Map<String, Object> properties = new HashMap<>();
98+
properties.put("hibernate.dialect", "org.hibernate.dialect.MySQL8Dialect");
99+
94100
return builder
95101
.dataSource(dataSource)
96-
.packages("com.phantoms.phantomsbackend.pojo.entity")
102+
.packages("com.phantoms.phantomsbackend.pojo.entity.secondary")
97103
.persistenceUnit("secondary")
104+
.properties(properties)
98105
.build();
99106
}
100107

src/main/resources/application.yml

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -57,24 +57,27 @@ spring:
5757
username: ${SUPABASE_PRIMARY_USERNAME:postgres.dshmbsawwrbuycnivcjs}
5858
password: ${SUPABASE_PRIMARY_PASSWORD}
5959
driver-class-name: org.postgresql.Driver
60+
hikari:
61+
pool-name: PrimaryPool
6062

6163
secondary:
6264
url: ${MYSQL_SECONDARY_URL:jdbc:mysql://mysql2.sqlpub.com:3307/phantoms_db?allowPublicKeyRetrieval=true}
6365
username: ${MYSQL_SECONDARY_USERNAME:yukirinll}
6466
password: ${MYSQL_SECONDARY_PASSWORD}
6567
driver-class-name: com.mysql.cj.jdbc.Driver
68+
hikari:
69+
pool-name: SecondaryPool
6670

6771
hikari:
6872
idle-timeout: 30000
6973
max-lifetime: 1800000
7074
connection-timeout: 30000
71-
pool-name: SupabasePool
7275
maximum-pool-size: 8 # 减小连接池大小
7376
minimum-idle: 2 # 减少空闲连接
7477
data-source-properties:
75-
preparedStatementCacheQueries: 0
76-
preparedStatementCacheSizeMiB: 0
77-
prepareThreshold: 0
78+
preparedStatementCacheQueries: 256
79+
preparedStatementCacheSizeMiB: 16
80+
prepareThreshold: 5
7881
leak-detection-threshold: 30000 # 泄漏检测阈值(毫秒)
7982
validation-timeout: 5000 # 验证超时(毫秒)
8083
connection-test-query: SELECT 1 # 连接验证查询

0 commit comments

Comments
 (0)