1
0

feat: 增加外部配置项

This commit is contained in:
2024-11-03 13:24:24 +08:00
parent 7b00b6792b
commit 5afed1a8bd
4 changed files with 21 additions and 18 deletions

View File

@@ -2,11 +2,11 @@ package com.lanyuanxiaoyao.digtal.market
import com.lanyuanxiaoyao.digtal.market.runner.NewsRunner
import com.lanyuanxiaoyao.digtal.market.runner.PushRunner
import com.lanyuanxiaoyao.digtal.market.sender.DingtalkSender
import com.lanyuanxiaoyao.squirrel.core.common.Management
import com.lanyuanxiaoyao.squirrel.core.jvm.BINARY_PATH
import com.lanyuanxiaoyao.squirrel.core.jvm.DRIVER_PATH
import com.lanyuanxiaoyao.squirrel.core.jvm.JvmManagement
import com.lanyuanxiaoyao.squirrel.core.jvm.LocalFileDatabase
import jakarta.annotation.Resource
import org.slf4j.LoggerFactory
import org.springframework.boot.ApplicationArguments
@@ -24,6 +24,12 @@ import org.springframework.scheduling.annotation.EnableScheduling
import org.springframework.web.servlet.config.annotation.CorsRegistry
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer
@ConfigurationProperties(prefix = "messenger.database")
data class DatabaseProperties @ConstructorBinding constructor(
val h2Path: String,
val jsonPath: String,
)
@ConfigurationProperties(prefix = "messenger.driver")
data class DriverProperties @ConstructorBinding constructor(
val driverPath: String,
@@ -53,7 +59,7 @@ class Application : ApplicationRunner, ApplicationListener<ContextClosedEvent> {
override fun run(args: ApplicationArguments?) {
// pushRunner.run()
newsRunner.run()
// newsRunner.run()
}
override fun onApplicationEvent(event: ContextClosedEvent) {
@@ -65,7 +71,12 @@ class Application : ApplicationRunner, ApplicationListener<ContextClosedEvent> {
@ExperimentalStdlibApi
class Configuration {
@Bean
fun jvmManagement(driverProperties: DriverProperties): Management = JvmManagement().also { management ->
fun jvmManagement(
driverProperties: DriverProperties,
databaseProperties: DatabaseProperties
): Management = JvmManagement(
database = LocalFileDatabase(databaseProperties.jsonPath)
).also { management ->
management
.fetchConfiguration()
.let { information ->

View File

@@ -14,7 +14,7 @@ spring:
ssl:
enable: true
datasource:
url: jdbc:h2:./database.db;MODE=MySQL;DATABASE_TO_LOWER=TRUE;CASE_INSENSITIVE_IDENTIFIERS=TRUE
url: jdbc:h2:${messenger.database.h2-path};MODE=MySQL;DATABASE_TO_LOWER=TRUE;CASE_INSENSITIVE_IDENTIFIERS=TRUE
username: lanyuanxiaoyao
password: lanyuanxiaoyao
driver-class-name: org.h2.Driver
@@ -35,4 +35,7 @@ messenger:
- 'lanyuanxiaoyao@qq.com'
driver:
driver-path: /Users/lanyuanxiaoyao/Downloads/chromium/128/macOS-1289987/chromedriver
binary-path: /Users/lanyuanxiaoyao/Downloads/chromium/128/macOS-1289987/Chromium.app/Contents/MacOS/Chromium
binary-path: /Users/lanyuanxiaoyao/Downloads/chromium/128/macOS-1289987/Chromium.app/Contents/MacOS/Chromium
database:
h2-path: ./database/database.db
json-path: ./database/database.json