# 应用服务 WEB 访问端口 server.port=8080 spring.application.name=web_project # 数据库配置 spring.datasource.url=jdbc:mysql://localhost:3306/webproject?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai&createDatabaseIfNotExist=true&allowPublicKeyRetrieval=true spring.datasource.username=root spring.datasource.password=123456 spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver # 数据库连接池优化配置 spring.datasource.hikari.maximum-pool-size=10 spring.datasource.hikari.minimum-idle=5 spring.datasource.hikari.idle-timeout=300000 spring.datasource.hikari.connection-timeout=20000 spring.datasource.hikari.max-lifetime=1200000 spring.datasource.hikari.connection-test-query=SELECT 1 spring.datasource.hikari.pool-name=WebProjectHikariCP # JPA配置 - 生产环境建议将ddl-auto改为none spring.jpa.hibernate.ddl-auto=update spring.jpa.show-sql=false spring.jpa.properties.hibernate.format_sql=true spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL8Dialect spring.jpa.open-in-view=false # JPA性能优化配置 spring.jpa.properties.hibernate.jdbc.batch_size=30 spring.jpa.properties.hibernate.order_inserts=true spring.jpa.properties.hibernate.order_updates=true # 暂时禁用Hibernate二级缓存和查询缓存 # spring.jpa.properties.hibernate.cache.use_second_level_cache=true # spring.jpa.properties.hibernate.cache.use_query_cache=true # 缓存配置 spring.cache.type=redis spring.cache.redis.time-to-live=1800000 spring.cache.redis.key-prefix=CACHE_ spring.cache.redis.use-key-prefix=true spring.cache.redis.cache-null-values=false # Redis配置 spring.redis.host=localhost spring.redis.port=6379 spring.redis.password=123456 spring.redis.database=0 spring.redis.timeout=10000ms # Redis连接池优化配置 spring.redis.lettuce.pool.max-active=8 spring.redis.lettuce.pool.max-wait=10000ms spring.redis.lettuce.pool.max-idle=8 spring.redis.lettuce.pool.min-idle=2 spring.redis.lettuce.shutdown-timeout=100ms # 日志配置 logging.level.root=INFO logging.level.com.qf.myafterprojecy=DEBUG logging.level.org.springframework.security=INFO logging.level.org.hibernate.SQL=WARN logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE # 日志文件配置 logging.file.name=logs/web_project.log logging.pattern.file=%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n # 确保控制台输出使用UTF-8编码 logging.pattern.console=%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n # 日志编码配置 - 强制使用UTF-8 logging.charset.file=UTF-8 logging.charset.console=UTF-8 # Actuator配置 - 生产环境建议限制暴露的端点 management.endpoints.web.exposure.include=health,info,metrics,prometheus management.endpoint.health.show-details=when_authorized management.metrics.export.prometheus.enabled=true # JWT配置 - 生产环境应使用更安全的密钥和环境变量 jwt.secret=myAfterProjectSecretKey2024SecureJwtTokenGeneration jwt.expiration=86400000 jwt.header=Authorization jwt.token-prefix=Bearer # CORS配置 - 生产环境应限制允许的源 cors.allowed-origins=http://localhost:3000 cors.allowed-methods=GET,POST,PUT,DELETE,OPTIONS cors.allowed-headers=*, cors.allow-credentials=true cors.max-age=3600 # 安全配置增强 security.basic.enabled=false security.ignored=/css/**,/js/**,/images/**,/favicon.ico # 生产环境建议配置 # 会话配置 server.servlet.session.timeout=30m server.session.tracking-modes=cookie # 国际化配置 spring.web.locale=zh_CN spring.messages.encoding=UTF-8 # 响应编码配置 - 确保所有响应使用UTF-8编码 server.servlet.encoding.charset=UTF-8 server.servlet.encoding.force=true server.servlet.encoding.force-request=true server.servlet.encoding.force-response=true server.servlet.encoding.enabled=true # 配置控制台输出编码 - 通过日志系统配置确保中文显示正常 # logging.pattern.console=%clr{%d{yyyy-MM-dd HH:mm:ss.SSS}}{faint} %clr{%5p} %clr{${PID}}{magenta} %clr{---}{faint} %clr{[%15.15t]}{faint} %clr{%-40.40logger{39}}{cyan} %clr{:}{faint} %m%n%wEx # 配置Maven启动JVM参数(需在启动时通过命令行指定或在pom.xml中配置) # 实际使用时请在启动命令中添加:-Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 # 更详细的日志配置 - 确保所有日志输出正确编码 # logging.level.root=INFO # logging.level.org.springframework.web=DEBUG # logging.level.org.springframework.security=INFO # logging.level.com.qf.myafterprojecy=DEBUG # 确保数据库连接编码正确 spring.datasource.hikari.data-source-properties.useUnicode=true spring.datasource.hikari.data-source-properties.serverTimezone=Asia/Shanghai spring.datasource.hikari.data-source-properties.characterEncoding=utf-8 # 应用性能优化配置 spring.main.allow-bean-definition-overriding=true spring.main.lazy-initialization=false # API 文档配置 spring.mvc.pathmatch.matching-strategy=ant_path_matcher