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

岳塘区建设路街道网站wordpress 如何从新安装

岳塘区建设路街道网站,wordpress 如何从新安装,深圳夫博网站建设有限公司,南山网站建设深圳信科SpringBoot3基础特性 SpringApplication 自定义banner 类路径添加banner.txt或设置spring.banner.location就可以定制banner推荐网站:Spring Boot banner在线生成工具#xff0c;制作下载英文banner.txt,修改替换banner.txt文字实现自定义。 提示#xff1a; 可以通过修改配…SpringBoot3基础特性 SpringApplication 自定义banner 类路径添加banner.txt或设置spring.banner.location就可以定制banner推荐网站:Spring Boot banner在线生成工具制作下载英文banner.txt,修改替换banner.txt文字实现自定义。 提示 可以通过修改配置文件application.properties配置文件来关闭banner。 spring.main.banner-modeoff自定义SpringApplication SpringBootApplication public class Boot311Application {public static void main(String[] args) {//SpringApplication:Boot应用的核心API入口//SpringApplication.run(Boot311Application.class, args);//1、自定义SpringApplication的底层设置SpringApplication springApplication new SpringApplication(Boot311Application.class);//调整SpringApplication的参数//和配置文件设置冲突时会优先配置文件springApplication.setBannerMode(Banner.Mode.CONSOLE);//2、SpringApplication运行springApplication.run(args);} }FluentBuilder API //Builder方式构造SpringApplication new SpringApplicationBuilder().main(Boot311Application.class).bannerMode(Banner.Mode.CONSOLE).sources(Boot311Application.class).run(args);Profiles 环境隔离能力快速切换开发、测试、生产环境 实现步骤 标识环境指定哪些组件、配置在什么时候生效切换环境这个环境对应的所有组件和配置就应该生效 ①、指定环境 Spring Profiles提供一种隔离配置的方式使其仅在特定环境生效任何ComponentConfiguration或ConfigurationProperties可以使用Profile标记来指定何时被加载(容器中的组件都可以被Profile标记)。 ②、环境激活 使用修改配置文件application.properties方式激活。 spring.profiles.activedev,test测试 创建四个组件Cat、Dog、Pig和Sheep。 Cat Data Component Profile({dev, test}) public class Cat {private String name;private String color; }Dog Component Data Profile(test) public class Dog {private String name;private String age; }Pig Component Data Profile({prod}) public class Pig {private Integer id;private String name; }Sheep Component Data public class Sheep {private Long id;private String name;private Integer age; }测试及结果 Slf4j SpringBootApplication public class Boot311Application {public static void main(String[] args) {//Builder方式构造SpringApplicationConfigurableApplicationContext context new SpringApplicationBuilder().main(Boot311Application.class).bannerMode(Banner.Mode.CONSOLE).sources(Boot311Application.class).run(args);try {//由于在没有找到的情况下会抛异常Cat cat context.getBean(Cat.class);log.info(组件cat:{}, cat);}catch (Exception e){}try {Dog dog context.getBean(Dog.class);log.info(组件dog:{}, dog);}catch (Exception e){}try {Pig pig context.getBean(Pig.class);log.info(组件pig:{}, pig);}catch (Exception e){}try {Sheep sheep context.getBean(Sheep.class);log.info(组件sheep:{}, sheep);}catch (Exception e){}} }/*** 1、标识环境* 1) dev(开发环境)、test(测试环境)、prod(生产环境)、default(在没有设置激活时会生效但设置激活不是default时不会生效)* 组件没有标注Profile代表任意时候都生效* 2) 指定每个组件在哪个环境下生效* Profile({dev, test})* 3) 默认只有激活指定环境这些组件才会生效* 结果组件sheep:Sheep(idnull, namenull, agenull)* 2、激活环境* 1)使用配置文件:spring.profiles.activedev,test* 结果* 组件cat:Cat(namenull, colornull)* 组件dog:Dog{namenull, agenull}* 组件sheep:Sheep(idnull, namenull, agenull)* 2)命令行激活java -jar xxx.jar --spring.profile.activedev*/ ③、环境包含 Spring.profiles.active和spring.profiles.default属性用于配置和激活不同环境下的配置文件。通常情况下这些属性应该在专门用于配置环境的文件中进行设置而不是在application-dev.yaml这样的具体环境文件中。也可以额外添加生效文件(表示不管激活哪个环境这个包含的环境都要有。即总是要生效的环境。)而不是激活文件。比如 spring.profiles.include[0]common spring.profiles.include[1]local总结 生效的环境 激活的环境 默认环境(没有添加Profile) 包含的环境. 项目中使用 基础的配置mybatis、log…:写到(include)包含环境中 需要动态切换变换的环境db、redis:写到激活环境可以使用spring.profiles.group.xxxdev, test进行分组只需要激活xxx就可以将分组中的内容全部激活。 Profile配置文件 application-{profile}.properties可以作为指定环境的配置文件。激活这个环境配置就会生效。最终生效的所有配置是 application.properties主配置文件任意时候都生效 application-{profile}.properties指定环境配置文件激活指定环境生效。 例如 在application.properties文件中添加配置。 spring.profiles.activedev表示在激活dev环境的时候配置文件application-dev.properties生效。 注意 ①、当激活的配置文件内容和主配置文件冲突时以激活的为主。 ②、项目的所有生效配置项 激活环境配置文件的所有项 主配置文件不冲突的所有项 多环境并发控制 除了SpringBoot外很多的构建工具都有多环境的情况如Maven、SpringBoot,如果两者都配置并且它们的环境不同应该以先加载的环境为主。 a、当maven与SpringBoot同时对多环境进行控制时以Mven为主SpringBoot使用maven中activ标签名称占位符读取Maven对应的配置属性 b、基于SpringBoot读取Maven配置属性的前提下如果在Idea下测试工程时pom.xml每次更新需要手动compile方可生效。 示例 在pom.xml中我们可以使用Maven的profiles来定义这些不同的环境配置。 profilesprofileiddev/idpropertiesdb.urljdbc:mysql://localhost:3306/dev_db/db.urldb.usernamedev_user/db.usernamedb.passworddev_password/db.password/properties/profileprofileidprod/idpropertiesdb.urljdbc:mysql://localhost:3306/prod_db/db.urldb.usernameprod_user/db.usernamedb.passwordprod_password/db.password/properties/profile /profiles在Spring Boot的配置文件application.properties中使用maven注解来读取Maven配置文件中定义的属性。 spring.datasource.urlmaven.db.url spring.datasource.usernamemaven.db.username spring.datasource.passwordmaven.db.password外部化配置 场景线上应用如何快速修改配置并应用最新配置? SpringBoot使用配置优先级 外部配置简化配置、简化运维只需要给jar应用所的文件夹放一个application.properties最新配置文件重启项目就能自动应用最新配置。 配置优先级 SpringBoot允许将配置外部化以便可以在不同的环境中使用相同的应用程序代码。我们可以使用各种外部配置源包括Java Properties文件YAML文件、环境变量和命令行参数。Value可以获取值也可以用ConfiguraionProperties将所有属性绑定到java object中。 以下是SpringBoot属性源加载顺序(优先级由低到高高优先级配置会覆盖低优先级。)后面的会覆盖前面的值。 默认属性( spring.application.setDefaultProperties指定)PropertySource指定加载的配置(需要写在Configuration类上才生效)配置文件(application.properties/yaml等)RandomValuePropertySource支持的random.*配置(如Value(“${random.int}”))OS环境变量Java系统属性(来自System.Properties())JNDI属性(来自java:comp/env)ServletContext初始化参数ServletConfig初始化参数SPRING_APPLICATION_JSON属性(内置在环境变量或系统属性中的JSON)命令行参数测试属性。(SpringBootTest进行测试时指定的属性)测试类TestPropertySource注解Devtoos设置的全局属性。($HOME/.config/spring-boot) 结论 配置可以写道很多位置常见的优先级顺序命令行配置文件springapplication配置 配置文件优先级如下(从低到高) jar包内的application.properties/yamljar包内的application-{profile}.properties/yamljar包外的application.propeterties/yamljar包外的application-{profile}.properties/yaml 结论包外包内 建议 ①、使用一种格式的配置文件如果.properties和.yaml同时存在则.properties优先。 ②、所有参数均可由命令行传入使用–参数项参数值例如–propertyvalue将会被添加到环境变量中并优先于配置文件比如java -jar app.jar --name “spring”可以使用Value(“${name}”)获取。 外部配置 SpringBoot应用启动时会自动寻找application.properties和application.yaml位置进行加载。优先级从低到高如下 类路径(内部) 类根路径类下/config包 当前路径(项目所在的位置外部) 当前路径当前/config子目录/config目录的直接子目录 总结 命令行所有包外包内config目录根目录profileapplication 配置不同就都生效(部署)配置相同高优先级覆盖低优先级。 导入配置 在配置文件中使用如下配置 spring.config.importclasspath:/xxx.properties它和使用PropertySource效果相同。 注意配置文件的优先级高于导入配置的优先级。 属性占位符 配置文件中可以使用${name:default}形式取出之前配置过的值 app.nameMyApp app.description ${app.name}是我的名字示例 application.properties hello.test this is my test控制器 RestController public class HelloController {Value(${hello.test:1433223})String test;GetMapping(/hello)public String test(){return test;} }单元测试-JUnit5 整合 SpringBoot提供一系列测试工具及注解方便我们进行测试。 spring-boot-test提供核心测试能力spring-boot-test-autoconfigure提供测试的一些自动配置。只需要导入spring-boot-starter-test即可整合测试。 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-test/artifactIdscopetest/scope /dependencyspring-boot-starter-test默认提供的测试库有JUnit5、Spring Test、AssertJ、Hamcrest、Mockito、JSONassert、JsonPath 测试 组件测试 直接使用Autowired容器中的组件进行测试 示例 创建HelloService Service public class HelloService {public int sum(int a, int b){return ab;} }在测试类中测试 //测试类也必须在主程序所在的包及其子包 SpringBootTest//具备测试SpringBoot应用容器中所有组件的功能 class Boot311ApplicationTests {//测试方法Autowired//自动注入任意组件即可测试HelloService helloService;Testvoid contextLoads() {int sum helloService.sum(2, 5);System.out.println(sum sum);}/*sum 7*/ }注解 JUnit5的注解与JUnit4注解有所变化 官方文档 参数化测试 使得用不同的参数多次运行测试成为了可能为单元测试带来了便利。 利用ValueSource等注解指定入参 可以使用不同的参数进行多次单元测试而不需要每新增一个参数就新增一个单元测试减少了代码冗余。 ValueSource #为参数化测试制定了入参来源支持八大基本类型以及String类型和Class类型。 NullSource #表示为参数化测试提供一个null得入参 EnumSource #表示为参数化测试提供一个枚举入参 CsvFileSource #表示读取指定CSV文件内容作为参数化测试入参 MethodSource #表示读取指定方法的返回值作为参数化限额是入参(方法返回需要是一个流)示例 ParameterizedTest ValueSource(strings {one, two, three}) DisplayName(参数化测试) public void parameterizedTest1(String string){System.out.println(string);//使用断言方式Assertions.assertTrue(StringUtils.isNotBlank(string)); } /* * onetwothree * */
http://wiki.neutronadmin.com/news/129381/

相关文章:

  • 建设网站公司兴田德润官方地址全国十大装修公司
  • 柳江网站开发查看wordpress代码
  • 做网站学哪种代码好网站设计网站开发优化
  • 电影资源网站怎么做的wordpress插件 标签页
  • 个人网站如何制作教程制作网页完整步骤手机版
  • 建网站挣钱吗外贸网站建设价格怎么样
  • 专业做网站优化价格东莞市住建局局长
  • 免费创建网站平台有哪些自己做装修网站
  • 做调研用到的大数据网站制作网站哪家服务好
  • 烟台智能建站模板网站建设审核需要多长时间
  • 莱芜0634技术支持 宿州网站建设性价比高柳州网站建设
  • 高校网站建设的目的和意义扬州市做网站
  • 网站内容建设的原则是什么意思网站语言切换功能如何做
  • 怎样提高网站点击率设计logo 费用
  • wordpress网站go.php跳转有数据库的网站
  • 自己电脑做网站服务器系统网站建设欧美风格
  • 公司云网站建设百度服务商
  • 如何规划企业网站2021没封的网站有人分享吗
  • 何苦做游戏网站公司名字大全列表
  • 建设工程质量检测网站多用户自助建站系统源码
  • 全球访问量最大的网站自建网站系统
  • 河北住房和城乡建设局网站首页法语网站建设
  • 网站租房做公寓企业信息管理系统源码
  • 佛山市研发网站建设哪家好温州百度关键词搜索
  • 百度权重是怎么来的搜索引擎优化的内容包括
  • 国内炫酷网站设计成免费crm是什么
  • 工程设计东莞网站建设技术支持自适应wordpress模板
  • 电子商务网站建设移动电商开发网页设计专业服务公司
  • 网站创意模板网站页面由什么构成
  • wordpress大型站点做国际贸易都用什么网站