springboot

启动命令

  • 指定配置文件: java -jar your-application.jar --spring.profiles.active=test

断言

大概得用法:传参必须满足方法的情况,比如,isTrue,参数就必须是true,否则就保错,notNull,参数就必须不为Null,否则就报错。
image

获取项目的跟路径

获取当前包的根路径

及文件所在项目,多模块项目,不一定是启动类那个包

 @Autowired
    org.springframework.core.io.ResourceLoader resourceLoader;

 org.springframework.core.io.Resource resource =resourceLoader.getResource("classpath:/word/demo.docx");
        log.info("getURL: {}", resource.getURL());
        log.info("当前项目模板磁盘绝对路径: {}", resource.getURL().getPath());
        log.info("getFilename: {}",resource.getFilename());

获取Springboot启动类那个包的根路径

ResourceUtils.getURL("classpath:").getPath()

启动完成后执行方法

2个接口
org.springframework.boot.ApplicationRunner
org.springframework.boot.CommandLineRunner

详细介绍

https://blog.csdn.net/qq_38366063/article/details/111643153?ops_request_misc=&request_id=&biz_id=102&utm_term=想请问下大家,springboot在完成启动后,通过线程池执&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduweb~default-1-111643153.142v72control,201v4add_ask&spm=1018.2226.3001.4187

点击查看代码

@Slf4j
@Component
public class RunnerTest implements ApplicationRunner, CommandLineRunner {

  @Override
  public void run(ApplicationArguments args) throws Exception {
    System.out.println("服务启动RunnerTest   ApplicationRunner执行启动加载任务...");
    String[] sourceArgs = args.getSourceArgs();
    if (null != sourceArgs) {
      for (String s : sourceArgs) {
        System.out.println(s);
      }
    }
    System.out.println("服务启动RunnerTest   ApplicationRunner执行启动加载任务...option参数...");
    Set<String> optionNames = args.getOptionNames();
    for (String s : optionNames) {
      System.out.println(s + "" + JSONObject.toJSONString(args.getOptionValues(s)));
    }

  }

  @Override
  public void run(String... args) throws Exception {
    System.out.println("服务启动RunnerTest    CommandLineRunner 执行启动加载任务...");
    if (null != args) {
      for (String s : args) {
        System.out.println(s);
      }
    }
  }
}



单元测试

  • 目录结构
    image

  • 要用到spring管理的bean那种
    test类是用junit包和import org.junit.jupiter.api.Test;2个都试一下

image

注意点

1:测试方法需要加@Test
2:方法必须是public void
3: 方法必须没有参数
4: 一定要能独立测试,不能有任何依赖

配置文件

项目启动时spring容器的所有bean都是延迟加载

可配在自己本地,可提高启动时间40%。
启动正常,但登录会有些系统异常

spring:
  main:
    lazy-initialization: true

idea实现服务启多个实例

  • yml文件示例:
server:
  port: ${port:9201}
  • 设置jvm启动端口
    1:
    image
    2:添加端口参数 -Dport=xxx (固定写法)
    image
posted @   jf666new  阅读(16)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示