Spring Boot的application.yml属性大全
一、Server配置属性表格:
序号 | 配置属性 | 描述 |
1 | server.port | 配置应用程序的监听端口(默认8080) |
2 | server.address | 配置绑定的网络地址(绑定特定IP) |
3 | server.servlet.context-path | 配置应用程序的上下文路径 |
4 | server.servlet.session.timeout | 配置会话超时时间,格式如 30m、20s 等 |
5 | server.servlet.session.cookie.name | 配置会话Cookie的名称 |
6 | server.servlet.session.cookie.http-only | 配置会话Cookie是否设置 HttpOnly 属性(默认 true) |
7 | server.servlet.session.cookie.secure | 配置会话Cookie是否设置为 Secure(仅限HTTPS,默认条件判断) |
8 | server.ssl.enabled | 启用或禁用SSL(默认 false) |
9 | server.ssl.key-store | 配置SSL密钥库的位置 |
10 | server.ssl.key-store-password | 配置SSL密钥库的密码 |
11 | server.ssl.key-password | 配置SSL密钥的密码 |
12 | server.ssl.trust-store | 配置SSL信任库的位置 |
13 | server.ssl.trust-store-password | 配置SSL信任库的密码 |
14 | server.ssl.enabled-protocols | 配置允许的SSL协议 |
15 | server.ssl.ciphers | 配置支持的SSL加密算法 |
16 | server.compression.enabled | 启用或禁用响应压缩(默认 false) |
17 | server.compression.mime-types | 配置允许压缩的MIME类型 |
18 | server.compression.min-response-size | 配置允许压缩的最小响应大小(例如 2KB) |
19 | server.http2.enabled | 启用或禁用HTTP/2支持(默认 false) |
20 | server.error.whitelabel.enabled | 启用或禁用白标错误页面(默认 true) |
21 | server.error.include-stacktrace | 配置错误响应中是否包含堆栈跟踪(never、always、on-trace-param) |
22 | server.tomcat.max-threads | 配置Tomcat的最大工作线程数 |
23 | server.tomcat.min-spare-threads | 配置Tomcat的最小空闲线程数 |
24 | server.tomcat.uri-encoding | 配置Tomcat的URI编码 |
25 | server.tomcat.max-connections | 配置Tomcat的最大连接数 |
26 | server.tomcat.accept-count | 配置Tomcat的最大排队连接数 |
27 | server.jetty.max-threads | 配置Jetty的最大工作线程数 |
28 | server.jetty.min-threads | 配置Jetty的最小工作线程数 |
29 | server.jetty.accept-queue-size | 配置Jetty的最大排队连接数 |
30 | server.undertow.accesslog.dir | 配置Undertow访问日志的目录 |
31 | server.undertow.accesslog.enabled | 启用或禁用Undertow的访问日志 |
32 | server.undertow.buffer-size | 配置Undertow的缓冲区大小 |
33 | server.undertow.io-threads | 配置Undertow的I/O线程数 |
34 | server.undertow.worker-threads | 配置Undertow的工作线程数 |
35 | server.shutdown | 配置优雅关机行为(immediate 或 graceful,默认 immediate) |
36 | server.max-http-header-size | 配置最大HTTP头部大小(默认8KB) |
37 | server.max-http-post-size | 配置最大HTTP POST请求大小 |
这份表格列出了 Spring Boot 中用于服务器配置的主要属性。这些属性可以帮助开发者根据需求调整和优化服务器的行为。你可以通过在 application.yml 中使用这些属性来进行服务器的具体配置。
二、Datasource配置属性表格:
序号 | 配置属性 | 描述 |
1 | spring.datasource.url | 数据源的JDBC URL |
2 | spring.datasource.username | 数据库用户名 |
3 | spring.datasource.password | 数据库密码 |
4 | spring.datasource.driver-class-name | 数据源的JDBC驱动类名 |
5 | spring.datasource.platform | 数据库平台类型(mysql, postgresql, h2等) |
6 | spring.datasource.initialization-mode | 配置数据源的初始化模式(always, embedded, never) |
7 | spring.datasource.schema | 指定要加载的SQL脚本文件路径(用于数据库模式初始化) |
8 | spring.datasource.data | 指定要加载的数据SQL脚本文件路径 |
9 | spring.datasource.continue-on-error | 配置在初始化SQL出错时是否继续执行(默认 false) |
10 | spring.datasource.separator | 配置SQL脚本中的语句分隔符(默认 ;) |
11 | spring.datasource.sql-script-encoding | 配置SQL脚本的编码格式 |
12 | spring.datasource.hikari.connection-timeout | HikariCP连接超时时间(默认30秒) |
13 | spring.datasource.hikari.maximum-pool-size | HikariCP最大连接池大小(默认10) |
14 | spring.datasource.hikari.minimum-idle | HikariCP最小空闲连接数 |
15 | spring.datasource.hikari.max-lifetime | HikariCP连接的最大生命周期(默认30分钟) |
16 | spring.datasource.hikari.idle-timeout | HikariCP空闲连接超时时间(默认600秒) |
17 | spring.datasource.hikari.pool-name | HikariCP连接池的名称 |
18 | spring.datasource.hikari.leak-detection-threshold | HikariCP连接泄漏检测的阈值(默认0,即禁用) |
19 | spring.datasource.hikari.validation-timeout | HikariCP连接验证超时时间 |
20 | spring.datasource.hikari.auto-commit | HikariCP是否自动提交事务(默认 true) |
21 | spring.datasource.tomcat.initial-size | Tomcat JDBC连接池的初始连接数 |
22 | spring.datasource.tomcat.max-active | Tomcat JDBC连接池的最大活跃连接数 |
23 | spring.datasource.tomcat.max-idle | Tomcat JDBC连接池的最大空闲连接数 |
24 | spring.datasource.tomcat.min-idle | Tomcat JDBC连接池的最小空闲连接数 |
25 | spring.datasource.tomcat.max-wait | Tomcat JDBC连接池等待连接的最长时间 |
26 | spring.datasource.tomcat.test-on-borrow | 配置从连接池获取连接时是否进行连接验证 |
27 | spring.datasource.tomcat.test-on-return | 配置归还连接时是否进行连接验证 |
28 | spring.datasource.tomcat.test-while-idle | 配置空闲时是否进行连接验证 |
29 | spring.datasource.tomcat.validation-query | 配置连接验证时的SQL查询语句 |
30 | spring.datasource.tomcat.time-between-eviction-runs-millis | Tomcat JDBC连接池中运行空闲连接回收器的时间间隔(毫秒) |
31 | spring.datasource.tomcat.min-evictable-idle-time-millis | Tomcat JDBC连接池中连接的最小空闲时间(毫秒) |
32 | spring.datasource.dbcp2.initial-size | DBCP2 连接池的初始连接数 |
33 | spring.datasource.dbcp2.max-total | DBCP2 连接池的最大连接数 |
34 | spring.datasource.dbcp2.max-idle | DBCP2 连接池的最大空闲连接数 |
35 | spring.datasource.dbcp2.min-idle | DBCP2 连接池的最小空闲连接数 |
36 | spring.datasource.dbcp2.max-wait-millis | DBCP2 等待连接的最大时间 |
37 | spring.datasource.dbcp2.test-on-borrow | DBCP2 从连接池获取连接时是否验证连接 |
38 | spring.datasource.dbcp2.test-on-return | DBCP2 归还连接时是否验证连接 |
39 | spring.datasource.dbcp2.test-while-idle | DBCP2 空闲时是否验证连接 |
40 | spring.datasource.dbcp2.validation-query | DBCP2 验证连接时使用的SQL查询语句 |
41 | spring.datasource.dbcp2.time-between-eviction-runs-millis | DBCP2 空闲连接回收器的运行间隔(毫秒) |
42 | spring.datasource.dbcp2.min-evictable-idle-time-millis | DBCP2 连接的最小空闲时间(毫秒) |
这份表格列出了 Spring Boot 中常用的数据源配置属性,涵盖了不同连接池的常见配置,如 HikariCP、Tomcat JDBC 连接池和 DBCP2。通过这些属性,你可以灵活配置数据库连接池的行为和性能。
三、Security配置属性表格:
序号 | 配置属性 | 描述 |
1 | spring.security.user.name | 配置默认用户的用户名(默认为 user) |
2 | spring.security.user.password | 配置默认用户的密码 |
3 | spring.security.user.roles | 配置默认用户的角色 |
4 | spring.security.enabled | 启用或禁用安全配置(默认为启用) |
5 | spring.security.oauth2.client.registration | 配置 OAuth2 客户端注册信息 |
6 | spring.security.oauth2.client.provider | 配置 OAuth2 提供者信息 |
7 | spring.security.oauth2.client.client-id | 配置 OAuth2 客户端ID |
8 | spring.security.oauth2.client.client-secret | 配置 OAuth2 客户端密钥 |
9 | spring.security.oauth2.client.scope | 配置 OAuth2 授权范围 |
10 | spring.security.oauth2.client.redirect-uri | 配置 OAuth2 授权的回调URI |
11 | spring.security.oauth2.client.authorization-grant-type | 配置 OAuth2 授权类型(如 authorization_code, client_credentials) |
12 | spring.security.oauth2.resourceserver.jwt.jwk-set-uri | 配置JWT资源服务器的公钥集URI |
13 | spring.security.oauth2.resourceserver.jwt.issuer-uri | 配置JWT资源服务器的颁发者URI |
14 | spring.security.oauth2.resourceserver.jwt.jws-algorithm | 配置JWT资源服务器使用的签名算法 |
15 | spring.security.oauth2.resourceserver.opaque.introspection-uri | 配置 Opaque Token 资源服务器的检查URI |
16 | spring.security.oauth2.resourceserver.opaque.introspection-client-id | 配置 Opaque Token 检查的客户端ID |
17 | spring.security.oauth2.resourceserver.opaque.introspection-client-secret | 配置 Opaque Token 检查的客户端密钥 |
18 | spring.security.saml2.relyingparty.registration | 配置 SAML2 依赖方的注册信息 |
19 | spring.security.saml2.relyingparty.provider.signing-certificates | 配置 SAML2 提供者的签名证书 |
20 | spring.security.saml2.relyingparty.provider.encryption-certificates | 配置 SAML2 提供者的加密证书 |
21 | spring.security.saml2.relyingparty.provider.sso-url | 配置 SAML2 单点登录的URL |
22 | spring.security.saml2.relyingparty.provider.entity-id | 配置 SAML2 提供者的实体ID |
23 | spring.security.form-login.enabled | 配置是否启用表单登录 |
24 | spring.security.form-login.login-page | 配置自定义登录页面的路径 |
25 | spring.security.form-login.failure-url | 配置登录失败后跳转的页面 |
26 | spring.security.form-login.default-target-url | 配置登录成功后跳转的默认页面 |
27 | spring.security.form-login.username-parameter | 配置登录表单中用户名的参数名 |
28 | spring.security.form-login.password-parameter | 配置登录表单中密码的参数名 |
29 | spring.security.form-login.remember-me.enabled | 启用或禁用 “记住我” 功能 |
30 | spring.security.form-login.remember-me.token-validity-seconds | 配置“记住我” token的有效时间 |
31 | spring.security.headers.frame-options.mode | 配置是否启用 X-Frame-Options 头(防止点击劫持) |
32 | spring.security.headers.hsts.enabled | 是否启用HTTP严格传输安全(HSTS) |
33 | spring.security.headers.content-security-policy | 配置内容安全策略头 |
34 | spring.security.headers.xss-protection.enabled | 是否启用XSS保护 |
35 | spring.security.csrf.enabled | 是否启用CSRF保护(默认启用) |
36 | spring.security.csrf.cookie-name | 配置CSRF Cookie的名称 |
37 | spring.security.csrf.header-name | 配置CSRF头部的名称 |
38 | spring.security.jwt.token-validity-seconds | 配置JWT的有效期(单位为秒) |
39 | spring.security.jwt.secret | 配置JWT的签名密钥 |
40 | spring.security.jwt.issuer | 配置JWT的签发者 |
41 | spring.security.jwt.audience | 配置JWT的接收方 |
42 | spring.security.password.encoder | 配置密码的编码器(如 bcrypt) |
43 | spring.security.password.strength | 配置密码编码的强度 |
44 | spring.security.session-management.session-creation-policy | 配置会话创建策略(如 always, if_required, never) |
45 | spring.security.session-management.maximum-sessions | 配置每个用户允许的最大会话数量 |
46 | spring.security.session-management.expired-url | 配置会话过期后的跳转URL |
47 | spring.security.anonymous.enabled | 是否启用匿名访问 |
48 | spring.security.anonymous.authorities | 配置匿名用户的角色 |
49 | spring.security.anonymous.key | 配置匿名用户的密钥 |
50 | spring.security.enable-global-method-security | 启用全局方法安全性注解(如 @PreAuthorize, @Secured) |
这份表格展示了 Spring Boot 中常见的 Security 配置属性,涵盖了用户身份验证、OAuth2、SAML2、JWT、表单登录、安全头配置、CSRF 保护等多个方面。通过这些配置,开发者可以灵活地自定义应用程序的安全机制。
以下是 Spring Boot 中 application.yml 文件中常见的 Logging(日志)配置属性列表。它们用于配置日志级别、日志输出位置、格式等功能。
四、Logging配置属性表格:
序号 | 配置属性 | 描述 |
1 | logging.level.* | 配置特定包或类的日志级别(如 DEBUG, INFO, WARN, ERROR, TRACE) |
2 | logging.file.name | 配置日志文件的完整路径(不带路径时在当前目录) |
3 | logging.file.path | 配置日志文件的保存目录(日志文件名默认为 spring.log) |
4 | logging.file.max-size | 配置日志文件的最大大小(如 10MB),到达此大小时日志会滚动 |
5 | logging.file.max-history | 配置保留的日志文件历史的最大数量 |
6 | logging.file.total-size-cap | 配置所有日志文件的总大小上限 |
7 | logging.pattern.console | 配置控制台输出的日志格式 |
8 | logging.pattern.file | 配置文件输出的日志格式 |
9 | logging.pattern.level | 配置日志级别的显示格式 |
10 | logging.pattern.dateformat | 配置日志条目中时间戳的格式 |
11 | logging.group.* | 创建自定义的日志分组(多个包可被分组到一个日志级别) |
12 | logging.logback.rollingpolicy.file-name-pattern | 配置日志滚动策略的文件名模式 |
13 | logging.logback.rollingpolicy.clean-history-on-start | 启动时清理历史日志文件 |
14 | logging.logback.rollingpolicy.max-file-size | 配置单个日志文件的最大大小 |
15 | logging.logback.rollingpolicy.max-history | 配置保留的滚动日志文件的最大数量 |
16 | logging.logback.rollingpolicy.total-size-cap | 配置所有滚动日志文件的大小上限 |
17 | logging.logback.compress | 启用或禁用日志文件压缩 |
18 | logging.logback.encoder.pattern | 配置Logback的日志格式 |
19 | logging.file.clean-history-on-start | 启动时清理旧的日志文件 |
20 | logging.level.root | 配置根日志级别 |
21 | logging.config | 配置日志系统的配置文件路径(如 logback-spring.xml) |
22 | logging.exception-conversion-word | 配置异常转换的样式 |
23 | logging.file.log-backup-count | 配置日志文件的备份数量 |
24 | logging.file.rotation-policy | 配置日志文件的滚动策略 |
25 | logging.stdout.level | 配置标准输出的日志级别 |
26 | logging.stdout.charset | 配置标准输出的字符集 |
27 | logging.stdout.pattern | 配置标准输出的日志格式 |
28 | logging.stdout.file-backup-count | 配置标准输出的备份日志文件数量 |
29 | logging.json.enabled | 启用或禁用JSON格式的日志输出 |
30 | logging.json.include-stacktrace | 配置是否在JSON日志中包含异常堆栈 |
31 | logging.json.include-thread | 配置是否在JSON日志中包含线程信息 |
32 | logging.json.date-format | 配置JSON日志中时间戳的格式 |
33 | logging.logback.debug | 启用Logback调试日志 |
34 | logging.logback.jul-bridge.enabled | 启用或禁用Java Util Logging (JUL) 与 SLF4J的桥接 |
35 | logging.file.date-format | 配置日志文件的时间戳格式 |
36 | logging.register-shutdown-hook | 启用或禁用日志系统关闭钩子 |
37 | logging.trace.enabled | 启用或禁用TRACE级别日志 |
38 | logging.debug.enabled | 启用或禁用DEBUG级别日志 |
39 | logging.console.color.enabled | 启用或禁用控制台日志输出的颜色(默认启用) |
40 | logging.console.charset | 配置控制台输出的字符集 |
41 | logging.filter.level | 配置日志过滤的日志级别 |
42 | logging.handler.console.enabled | 启用或禁用控制台日志输出 |
43 | logging.handler.file.enabled | 启用或禁用文件日志输出 |
这份表格列出了 Spring Boot 中常见的日志配置属性,涵盖了日志级别、日志输出位置、日志文件滚动策略等方面。开发者可以根据应用程序的需求,灵活配置日志输出的格式、内容和策略。
五、Spring MVC配置属性表格:
序号 | 配置属性 | 描述 |
1 | spring.mvc.view.prefix | 配置视图解析器的前缀路径 |
2 | spring.mvc.view.suffix | 配置视图解析器的后缀路径 |
3 | spring.mvc.servlet.path | 配置Spring MVC主Servlet的路径 |
4 | spring.mvc.static-path-pattern | 配置静态资源的路径模式(如 /static/**) |
5 | spring.mvc.format.date | 配置日期的全局格式化 |
6 | spring.mvc.format.time | 配置时间的全局格式化 |
7 | spring.mvc.format.date-time | 配置日期和时间的全局格式化 |
8 | spring.mvc.locale | 配置默认的Locale(如 en_US) |
9 | spring.mvc.locale-resolver | 配置Locale解析策略(如 fixed, accept-header) |
10 | spring.mvc.async.request-timeout | 配置异步请求的超时时间(毫秒) |
11 | spring.mvc.contentnegotiation.enabled | 启用或禁用内容协商功能 |
12 | spring.mvc.contentnegotiation.favor-parameter | 配置是否通过请求参数进行内容协商(如 format=json) |
13 | spring.mvc.contentnegotiation.parameter-name | 配置内容协商的请求参数名 |
14 | spring.mvc.contentnegotiation.favor-path-extension | 配置是否通过路径扩展名进行内容协商(如 .json, .xml) |
15 | spring.mvc.contentnegotiation.ignore-unknown-path-extensions | 配置是否忽略未知的路径扩展名 |
16 | spring.mvc.contentnegotiation.use-registered-extensions-only | 配置是否仅使用已注册的文件扩展名进行内容协商 |
17 | spring.mvc.media-types.* | 配置自定义的媒体类型(如 html, json) |
18 | spring.mvc.message-codes-resolver-format | 配置用于数据绑定错误的消息编码格式 |
19 | spring.mvc.hiddenmethod.filter.enabled | 启用或禁用HTTP隐藏方法过滤器(允许 _method 参数提交 PUT, DELETE 请求) |
20 | spring.mvc.throw-exception-if-no-handler-found | 配置在没有找到请求处理器时是否抛出异常 |
21 | spring.mvc.log-resolved-exception | 配置是否记录处理过的异常 |
22 | spring.mvc.pathmatch.matching-strategy | 配置URL路径匹配策略(如 ant_path_matcher, path_pattern_parser) |
23 | spring.mvc.pathmatch.use-suffix-pattern | 是否启用后缀模式匹配(如 /resource.* 匹配 /resource.html) |
24 | spring.mvc.pathmatch.use-registered-suffix-pattern | 是否仅使用已注册的后缀模式匹配 |
25 | spring.mvc.static-locations | 配置静态资源的默认位置(如 classpath:/static/, classpath:/public/) |
26 | spring.mvc.ignore-default-model-on-redirect | 配置是否在重定向时忽略默认模型 |
27 | spring.mvc.favicon.enabled | 启用或禁用默认的favicon处理 |
28 | spring.mvc.formcontent.putfilter.enabled | 启用或禁用表单数据PUT请求的支持 |
29 | spring.mvc.json.prefix-json | 启用或禁用JSON响应的安全前缀 |
30 | spring.mvc.default-servlet.enabled | 启用或禁用默认的Servlet处理静态资源 |
31 | spring.mvc.view.expose-request-attributes | 配置是否将请求属性暴露给视图层 |
32 | spring.mvc.view.expose-session-attributes | 配置是否将会话属性暴露给视图层 |
33 | spring.mvc.view.expose-context-beans-as-attributes | 配置是否将Spring上下文中的Bean暴露给视图层 |
34 | spring.mvc.view.expose-bean-names | 配置暴露给视图层的Bean名称 |
35 | spring.mvc.default-redirect-attributes.enabled | 启用或禁用默认重定向的属性支持 |
36 | spring.mvc.deferred-result.timeout | 配置 DeferredResult 处理异步请求的超时时间 |
37 | spring.mvc.responsebodyadvice.enabled | 启用或禁用全局 @ResponseBodyAdvice 的支持 |
38 | spring.mvc.view.controllers.* | 配置静态控制器的映射路径 |
39 | spring.mvc.template.cache | 配置模板引擎的缓存策略(如 Thymeleaf 的视图缓存) |
40 | spring.mvc.template.prefix | 配置模板视图解析器的前缀 |
41 | spring.mvc.template.suffix | 配置模板视图解析器的后缀 |
42 | spring.mvc.template.mode | 配置模板视图解析器的模式(如 HTML, XML) |
43 | spring.mvc.static-resource-locations | 配置静态资源的位置列表 |
44 | spring.mvc.webjars-locations | 配置WebJars资源的位置列表 |
45 | spring.mvc.filters.order | 配置全局过滤器的顺序 |
46 | spring.mvc.filters.dispatcher-types | 配置全局过滤器的 DispatcherType |
47 | spring.mvc.websocket.enabled | 启用或禁用WebSocket的支持 |
48 | spring.mvc.multipart.enabled | 启用或禁用文件上传的支持 |
49 | spring.mvc.multipart.max-file-size | 配置单个文件上传的最大大小 |
50 | spring.mvc.multipart.max-request-size | 配置整个请求的最大大小(包括所有文件) |
这份表格列出了 Spring Boot 中常见的 Spring MVC 配置属性,涵盖了视图解析、静态资源处理、内容协商、异步请求、URL路径匹配等多个方面。通过这些配置,开发者可以定制 Spring MVC 的行为,满足应用程序的需求。
六、JPA配置属性表格:
序号 | 配置属性 | 描述 |
1 | spring.jpa.database | 配置目标数据库类型(如 mysql, postgresql) |
2 | spring.jpa.database-platform | 配置特定数据库平台的方言(如 |
3 | spring.jpa.show-sql | 是否显示SQL语句(true或false) |
4 | spring.jpa.hibernate.ddl-auto | 配置自动DDL操作(如 none, update, create, create-drop) |
5 | spring.jpa.properties.* | 配置传递给 JPA 实现的自定义属性 |
6 | spring.jpa.generate-ddl | 是否生成DDL(数据库结构) |
7 | spring.jpa.open-in-view | 启用或禁用 OpenEntityManagerInView 过滤器,避免懒加载异常 |
8 | spring.jpa.defer-datasource-initialization | 是否在数据源初始化后再初始化 JPA |
9 | spring.jpa.properties.hibernate.dialect | 配置 Hibernate 的方言(类似于 |
10 | spring.jpa.properties.hibernate.show_sql | 配置 Hibernate 显示 SQL 语句 |
11 | spring.jpa.properties.hibernate.format_sql | 配置 Hibernate 格式化 SQL 语句 |
12 | spring.jpa.properties.hibernate.use_sql_comments | 配置是否使用SQL注释 |
13 | spring.jpa.hibernate.naming.physical-strategy | 配置 Hibernate 的物理命名策略 |
14 | spring.jpa.hibernate.naming.implicit-strategy | 配置 Hibernate 的隐式命名策略 |
15 | spring.jpa.hibernate.use-new-id-generator-mappings | 是否使用新的ID生成器映射规则(默认 true) |
16 | spring.jpa.hibernate.cache.use_second_level_cache | 启用或禁用二级缓存 |
17 | spring.jpa.hibernate.cache.use_query_cache | 启用或禁用查询缓存 |
18 | spring.jpa.hibernate.cache.region.factory_class | 配置缓存区域工厂类(如 |
19 | spring.jpa.hibernate.cache.region_prefix | 配置缓存区域前缀 |
20 | spring.jpa.hibernate.jdbc.batch_size | 配置批量插入时的批处理大小 |
21 | spring.jpa.hibernate.jdbc.fetch_size | 配置批量提取时的提取大小 |
22 | spring.jpa.hibernate.max_fetch_depth | 配置最大抓取深度 |
23 | spring.jpa.hibernate.cache.provider_class | 配置缓存提供者类 |
24 | spring.jpa.hibernate.enable_lazy_load_no_trans | 启用或禁用非事务性延迟加载 |
25 | spring.jpa.hibernate.bytecode.use_reflection_optimizer | 启用或禁用字节码优化 |
26 | spring.jpa.hibernate.default_batch_fetch_size | 配置默认的批量抓取大小 |
27 | spring.jpa.hibernate.order_inserts | 启用或禁用插入排序优化 |
28 | spring.jpa.hibernate.order_updates | 启用或禁用更新排序优化 |
29 | spring.jpa.hibernate.batch_versioned_data | 是否允许批量操作版本化数据 |
30 | spring.jpa.entity.scan.packages | 配置 JPA 扫描的实体包路径 |
31 | spring.jpa.properties.javax.persistence.sharedCache.mode | 配置 JPA 缓存共享模式(如 ENABLE_SELECTIVE, DISABLE_SELECTIVE) |
32 | spring.jpa.properties.javax.persistence.validation.mode | 配置 JPA 验证模式(如 AUTO, CALLBACK, NONE) |
33 | spring.jpa.properties.hibernate.hbm2ddl.charset_name | 配置生成DDL时使用的字符集 |
34 | spring.jpa.properties.hibernate.dialect.storage_engine | 配置数据库存储引擎(如 innodb,适用于 MySQL) |
35 | spring.jpa.properties.hibernate.search.enabled | 启用或禁用Hibernate搜索功能 |
36 | spring.jpa.properties.hibernate.search.default.directory_provider | 配置Hibernate搜索的默认目录提供者 |
37 | spring.jpa.properties.hibernate.search.indexing_strategy | 配置索引策略(如 event, manual) |
38 | spring.jpa.query.timeout | 配置查询的超时时间(以秒为单位) |
39 | spring.jpa.query.hints.* | 配置查询的提示信息 |
40 | spring.jpa.mapping-resources | 配置 XML 映射文件的路径 |
41 | spring.jpa.entity-manager.factory-class | 配置自定义的实体管理器工厂类 |
42 | spring.jpa.persistence-unit-name | 配置 JPA 持久化单元的名称 |
43 | spring.jpa.open-session-in-view | 启用或禁用视图中的Session(Hibernate 专用) |
44 | spring.jpa.load-time-weaver | 启用或禁用JPA的加载时编织功能 |
45 | spring.jpa.properties.hibernate.jdbc.time_zone | 配置数据库连接时使用的时区 |
46 | spring.jpa.sql-load-script | 配置SQL加载脚本的路径 |
47 | spring.jpa.script.schema | 配置用于初始化数据库架构的SQL脚本 |
48 | spring.jpa.script.data | 配置用于初始化数据库数据的SQL脚本 |
49 | spring.jpa.hibernate.cache.use_structured_entries | 启用或禁用结构化缓存条目 |
50 | spring.jpa.metadata.provider | 配置元数据提供者(如 metadata-provider, metadata-extractor) |
这份表格列出了 Spring Boot 中常见的 JPA 配置属性,涵盖了 Hibernate 相关的属性、自定义方言、SQL显示选项、DDL生成、缓存配置等多个方面。开发者可以根据需要定制 JPA 行为,满足不同数据库和性能需求。
七、MyBatis配置属性表格:
序号 | 配置属性 | 描述 |
1 | mybatis.config-location | 指定 MyBatis 全局配置文件的路径(如 |
2 | mybatis.mapper-locations | 指定 MyBatis Mapper 文件的位置(如 classpath*:mapper/**/*.xml) |
3 | mybatis.type-aliases-package | 配置别名的包路径(即实体类的包路径,以便在XML中不用写全类名) |
4 | mybatis.type-handlers-package | 配置类型处理器的包路径 |
5 | mybatis.type-aliases-super-type | 指定某个父类或接口的所有子类作为 MyBatis 的别名类型 |
6 | mybatis.check-config-location | 是否检查 MyBatis 配置文件的位置 |
7 | mybatis.executor-type | 配置 MyBatis 执行器类型(如 SIMPLE, REUSE, BATCH) |
8 | mybatis.default-scripting-language-driver | 配置默认的脚本语言驱动类型 |
9 | mybatis.default-enum-type-handler | 配置默认的枚举类型处理器 |
10 | mybatis.configuration.* | 传递 MyBatis 自定义的配置属性 |
11 | mybatis.configuration.cache-enabled | 是否启用二级缓存(默认为 true) |
12 | mybatis.configuration.lazy-loading-enabled | 是否启用懒加载(默认为 false) |
13 | mybatis.configuration.aggressive-lazy-loading | 是否启用积极的懒加载(默认为 true) |
14 | mybatis.configuration.use-generated-keys | 是否允许 JDBC 支持生成主键(默认为 false) |
15 | mybatis.configuration.default-fetch-size | 配置默认的批量抓取大小 |
16 | mybatis.configuration.default-statement-timeout | 配置默认的语句超时时间(以秒为单位) |
17 | mybatis.configuration.map-underscore-to-camel-case | 是否将数据库的下划线字段映射为驼峰命名的属性(如 user_name -> userName) |
18 | mybatis.configuration.safe-row-bounds-enabled | 是否启用安全的 RowBounds 使用 |
19 | mybatis.configuration.safe-result-handler-enabled | 是否启用安全的结果处理器使用 |
20 | mybatis.configuration.auto-mapping-behavior | 配置自动映射行为(如 PARTIAL, FULL) |
21 | mybatis.configuration.auto-mapping-unknown-column-behavior | 配置当映射未知列时的行为(如 NONE, WARNING, FAILING) |
22 | mybatis.configuration.local-cache-scope | 配置本地缓存作用域(如 SESSION, STATEMENT) |
23 | mybatis.configuration.jdbc-type-for-null | 配置当遇到 null 值时的 JDBC 类型(如 NULL, VARCHAR) |
24 | mybatis.configuration.lazy-load-trigger-methods | 配置懒加载时触发的类方法列表 |
25 | mybatis.configuration.log-impl | 配置日志实现(如 SLF4J, LOG4J2) |
26 | mybatis.configuration.proxy-factory | 配置代理工厂(如 JAVASSIST, CGLIB) |
27 | mybatis.configuration.default-result-set-type | 配置默认的结果集类型(如 FORWARD_ONLY, SCROLL_SENSITIVE) |
28 | mybatis.configuration.use-actual-param-name | 是否启用实际参数名称(默认为 true) |
29 | mybatis.configuration.return-instance-for-empty-row | 配置在结果集中没有数据时是否返回对象实例 |
30 | mybatis.configuration.log-prefix | 配置日志输出前缀 |
31 | mybatis.configuration.call-setters-on-nulls | 是否在 null 值时调用 setter 方法 |
32 | mybatis.configuration.use-column-label | 是否使用列标签代替列名 |
33 | mybatis.configuration.default-sql-provider-type | 配置默认的 SQL 提供者类型 |
34 | mybatis.configuration.use-discriminator-column-omitted-mappings | 是否启用忽略鉴别器列的映射 |
35 | mybatis.mapper-interfaces | 配置 MyBatis Mapper 接口的位置(通常与 @MapperScan 注解配合使用) |
36 | mybatis.configuration.use-deprecated-executor | 是否启用已废弃的执行器 |
37 | mybatis.configuration.multiple-result-sets-enabled | 是否启用多结果集支持 |
38 | mybatis.configuration.max-result-cache-size | 配置结果缓存的最大大小 |
39 | mybatis.configuration.default-enum-type-handler | 配置默认的枚举类型处理器 |
40 | mybatis.configuration.property | 用于设置额外的 MyBatis 自定义属性 |
41 | mybatis.configuration.result-handlers-enabled | 是否启用结果处理器 |
42 | mybatis.configuration.cache-mapper-annotated-queries | 是否缓存使用 @Select 等注解定义的查询 |
这些 MyBatis 配置属性涵盖了 MyBatis 全局配置文件路径、Mapper 扫描路径、懒加载、二级缓存、SQL 映射行为等多个方面。开发者可以根据需要定制 MyBatis 的行为,满足应用程序中的数据访问需求。