当前位置: 首页 > wzjs >正文

生鲜网站建设的总体目标做网站什么笔记本好用

生鲜网站建设的总体目标,做网站什么笔记本好用,wordpress视频插件下载,三维建模1. Spring Boot 的了解,解决什么问题? 我的理解: Spring Boot 是一个基于 Spring 框架的快速开发脚手架,它简化了 Spring 应用的初始搭建和开发过程。解决的问题: 简化配置: 传统的 Spring 应用需要大量的…

1. Spring Boot 的了解,解决什么问题?

  • 我的理解: Spring Boot 是一个基于 Spring 框架的快速开发脚手架,它简化了 Spring 应用的初始搭建和开发过程。
  • 解决的问题:
    • 简化配置: 传统的 Spring 应用需要大量的 XML 配置,Spring Boot 通过约定大于配置的原则,提供了大量的默认配置,减少了手动配置的工作量。
    • 快速启动: Spring Boot 内嵌了常用的服务器(如 Tomcat、Jetty),可以直接运行,无需额外部署,大大缩短了开发周期。
    • 依赖管理: Spring Boot 提供了 Starter POMs,将常用的依赖打包在一起,方便管理依赖,避免版本冲突。
    • 监控和管理: Spring Boot Actuator 提供了对应用的监控和管理功能,如健康检查、指标收集等。
    • 易于部署: Spring Boot 可以打包成独立的 JAR 包或 WAR 包,方便部署到各种环境。
  • 总结: Spring Boot 提高了开发效率,降低了维护成本,使开发者可以更专注于业务逻辑的实现。

2. Spring Boot 的自动装配,为什么可以实现自动配置?

  • 核心机制: Spring Boot 的自动装配基于 Spring 的条件化配置和 EnableAutoConfiguration 注解。
  • 实现原理:
    • EnableAutoConfiguration 注解: 这是一个复合注解,包含了 @Configuration@EnableImport 和 @ComponentScan 等注解。
      • @Configuration:表明这是一个配置类。
      • @EnableImport:导入 AutoConfigurationImportSelector 类,该类负责扫描和加载自动配置类。
      • @ComponentScan:扫描当前应用中的组件。
    • AutoConfigurationImportSelector 类: 该类实现了 DeferredImportSelector 接口,负责延迟加载自动配置类。
      • selectImports() 方法: 该方法会扫描 META-INF/spring.factories 文件,该文件中定义了大量的自动配置类。
      • 条件化配置: Spring Boot 使用 @ConditionalOnClass@ConditionalOnBean 等条件化注解,根据当前环境中的类、Bean 等条件,决定是否加载某个自动配置类。
  • 总结: EnableAutoConfiguration 注解触发自动配置的扫描和加载,条件化注解决定是否应用某个自动配置,最终实现自动配置。

3. Spring Boot 怎么做到自动配置,加了 EnableAutoConfiguration 怎样扫描的?

  • 详细流程:
    1. @SpringBootApplication 注解: 通常在 Spring Boot 应用的启动类上使用,它包含了 @EnableAutoConfiguration 注解。
    2. EnableAutoConfiguration 注解: 触发 AutoConfigurationImportSelector 类的执行。
    3. AutoConfigurationImportSelector 类:
      • selectImports() 方法: 从 META-INF/spring.factories 文件中读取自动配置类的全限定名。
      • SpringFactoriesLoader.loadFactoryNames() 方法: 负责加载 spring.factories 文件中的配置。
      • 条件判断: 根据 @ConditionalOnClass@ConditionalOnBean 等条件化注解,判断是否需要加载某个自动配置类。
      • 实例化 Bean: 如果满足条件,则将自动配置类实例化成 Bean,并添加到 Spring 容器中。
  • 总结: EnableAutoConfiguration 注解通过 AutoConfigurationImportSelector 类扫描 spring.factories 文件,并根据条件化注解加载自动配置类,最终实现自动配置。

4. 如果我想对 Spring Boot 有一些默认的配置,如何修改这些配置?

  • 方法一:使用 application.properties 或 application.yml 文件:
    • 这是最常用的方法,可以在 src/main/resources 目录下创建 application.properties 或 application.yml 文件,覆盖 Spring Boot 的默认配置。
    • 示例:
      • application.properties
        server.port=8081
        spring.datasource.url=jdbc:mysql://localhost:3306/mydb
        
      • application.yml
        server:port: 8081
        spring:datasource:url: jdbc:mysql://localhost:3306/mydb
        
  • 方法二:使用命令行参数:
    • 可以在启动应用时,通过命令行参数覆盖默认配置。
    • 示例:
      java -jar myapp.jar --server.port=8082 --spring.datasource.url=jdbc:mysql://localhost:3306/mydb
      
  • 方法三:使用环境变量:
    • 可以通过设置环境变量覆盖默认配置。
    • 示例:
      export SERVER_PORT=8083
      export SPRING_DATASOURCE_URL=jdbc:mysql://localhost:3306/mydb
      java -jar myapp.jar
      
  • 方法四:编写自定义配置类:
    • 可以编写自定义的配置类,使用 @Configuration 注解,并使用 @PropertySource 注解加载自定义的配置文件。
    • 示例:
      @Configuration
      @PropertySource("classpath:myconfig.properties")
      public class MyConfig {@Value("${my.property}")private String myProperty;
      }
      
  • 总结: 可以通过 application.properties 或 application.yml 文件、命令行参数、环境变量或自定义配置类来修改 Spring Boot 的默认配置。

5. 那如果不想要默认的数据库,应该如何处理呢?

  • 方法一:排除默认的数据源自动配置:
    • 在启动类上使用 @SpringBootApplication 注解的 exclude 属性,排除默认的数据源自动配置类。
    • 示例:
      @SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
      public class MyApplication {public static void main(String[] args) {SpringApplication.run(MyApplication.class, args);}
      }
      
  • 方法二:不提供数据源相关的依赖:
    • 如果项目中没有引入任何数据源相关的依赖(如 spring-boot-starter-jdbcspring-boot-starter-data-jpa),Spring Boot 就不会自动配置数据源。
  • 方法三:使用条件化配置:
    • 可以使用 @ConditionalOnClass 或 @ConditionalOnBean 等条件化注解,根据当前环境中的类或 Bean 来决定是否配置数据源。
    • 示例:
      @Configuration
      @ConditionalOnMissingBean(DataSource.class)
      public class NoDataSourceConfig {// 不配置数据源
      }
      
  • 方法四:自定义数据源配置:
    • 如果需要使用自定义的数据源,可以编写自定义的配置类,并使用 @Configuration 和 @Bean 注解来配置数据源。
    • 示例:
      @Configuration
      public class MyDataSourceConfig {@Beanpublic DataSource myDataSource() {// 配置自定义的数据源DriverManagerDataSource dataSource = new DriverManagerDataSource();dataSource.setDriverClassName("com.mysql.cj.jdbc.Driver");dataSource.setUrl("jdbc:mysql://localhost:3306/mydb");dataSource.setUsername("root");dataSource.setPassword("password");return dataSource;}
      }
      
  • 总结: 可以通过排除默认的数据源自动配置、不提供数据源相关的依赖、使用条件化配置或自定义数据源配置来处理不想要默认数据库的情况。

 

http://www.dtcms.com/wzjs/538759.html

相关文章:

  • 网站优化建设宁夏苏州网上挂号预约平台12320
  • 织梦优美文章阅读网站源码外贸流程案例
  • 阿克顿巴网站建设的目的网站改版是否有影响
  • 网页设计网站建设的书籍外包程序员的出路
  • 海洋馆网站建设广州市招投标中心官网
  • 做网站生意越来越差买医疗产品的网站建设
  • 网站下载器网站加速器免费
  • 国家住房和城乡建设部网站吧来个网站吧好人一生平安2021
  • 西安哪里可以做网站建站模板更改
  • 南昌做网站的公司中国建筑人才网官网查询
  • 网站备案在哪个网站wordpress前端地址
  • 怎么申请一个网站广告设计公司 上海
  • 网站 验证码错误阿里云有域名之后怎么建设网站
  • 网站菜单框架iis网站wordpress登陆
  • 网站排名优化策划视频拍摄app
  • 重庆网站搭建公司用Off做网站
  • 沈阳做网站哪家好建设网站的要点
  • 深圳企业网站建设公司哪家好恶意网站的防治
  • 巴中网站制作泰安房产网签西湖春晓
  • 公司申请网站备案网站 建设 现状分析
  • 柳州市建设投资开发公司网站住房和城乡建设统计网站
  • 企业网站模板html下载wordpress在哪下载模板
  • wap网站开发网站建设什么服务器好
  • 公司制作网站怎么做wordpress分类目录页
  • 网站建设都有什么功能个人学做网站
  • 网站建设 甘肃重庆绝美的十大冷门景点
  • 网站建设合同免费下载成都网上房地产
  • 网站开发待遇高吗分销商城功能
  • 在线观看永久免费网站网址wordpress点击弹窗插件
  • 怎么做 在线电影网站在手机上怎么做app软件