栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

day2021-10-19(Spring boot核心配置文件,项目部署,热部署,ES6)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

day2021-10-19(Spring boot核心配置文件,项目部署,热部署,ES6)

2. Spring Boot 入门 2.1 配置文件 2.1.1 yml 和 properties
  • spring boot 支持2中配置文件:*.yaml @Configuration public class OneConfig { @Value("${server.port:8000}") private Integer port; @Bean public String oneDemo() { System.out.println("port端口号:" + port); return ""; } } 2)@ConfigurationProperties 获得一组值
    package com.czxy.boot.config;
    
    import org.springframework.boot.context.properties.ConfigurationProperties;
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    
    import java.util.Arrays;
    import java.util.Date;
    import java.util.List;
    import java.util.Map;
    
    
    @Configuration
    @ConfigurationProperties(prefix = "user")
    public class UserConfig {
        private String username;
        private Integer age;
        private Date birthday;
        private boolean vip;
        private List valueList;
        private String[] ageArray;
        private List> userList;
    
        public String getUsername() {
            return username;
        }
    
        public void setUsername(String username) {
            this.username = username;
        }
    
        public Integer getAge() {
            return age;
        }
    
        public void setAge(Integer age) {
            this.age = age;
        }
    
        public Date getBirthday() {
            return birthday;
        }
    
        public void setBirthday(Date birthday) {
            this.birthday = birthday;
        }
    
        public boolean isVip() {
            return vip;
        }
    
        public void setVip(boolean vip) {
            this.vip = vip;
        }
    
        public List getValueList() {
            return valueList;
        }
    
        public void setValueList(List valueList) {
            this.valueList = valueList;
        }
    
        public String[] getAgeArray() {
            return ageArray;
        }
    
        public void setAgeArray(String[] ageArray) {
            this.ageArray = ageArray;
        }
    
        public List> getUserList() {
            return userList;
        }
    
        public void setUserList(List> userList) {
            this.userList = userList;
        }
    
        @Override
        public String toString() {
            return "UserConfig{" +
                    "username='" + username + ''' +
                    ", age=" + age +
                    ", birthday='" + birthday + ''' +
                    ", vip=" + vip +
                    ", valueList=" + valueList +
                    ", ageArray=" + Arrays.toString(ageArray) +
                    ", userList=" + userList +
                    '}';
        }
    
        @Bean
        public String userDemo() {
            System.out.println(this);
            return "";
        }
    
    }
    
    
    2.1.3 配置文件优先级 1)yml 和 properties优先级
    • properties 优先级大于 yml (properties覆盖了yml的内容)
    2)位置优先级
    • 配置文件存放的位置不同,优先级不同。

      • file:./config/:项目jar包所在目录的config目录

      • file:./ :项目jar包所在的同级目录

      • classpath:/config:classpath(resource)目录下config目录

      • classpath:/:classpath(resource)目录下

    • idea环境下优先级

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-p5WWw1aY-1634646593328)(assets/image-20211019092843936.png)]

    • 完整的配置优先级的对比(优先级:9001 > 9002 > 9003 > 9004)

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yeguHAzr-1634646593329)(assets/image-20211019093802940.png)]

    2.1.4 多环境配置
    • 需要为不同的环境编写配置文件 application-{profile}.yml

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rFKAOnzU-1634646593331)(assets/image-20211019094732238.png)]··

    • 启动不同的配置

      • 方式1:application.yml 文件配置

        [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fbPqrQtK-1634646593332)(assets/image-20211019095038531.png)]

        spring:
          profiles:
            active: 10000
        
      • 方式2:在idea中,配置启动类的参数

        [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bWOpwSZm-1634646593332)(assets/image-20211019095301241.png)]

      • 方式3:在cmd中,配置jar包的参数

        java -jar -Dspring.profiles.active=10000 xxx.jar
        

        [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8QIB5aaR-1634646593333)(assets/image-20211019102303488.png)]

    2.2 部署 2.2.1 项目部署
    • 将spring boot项目打包成可运行的jar。
    • 仅需要在pom.xml文件中,添加一个插件,并配置启动类。
        
            
                
                    org.springframework.boot
                    spring-boot-maven-plugin
                    
                        
                        com.czxy.boot.HelloApplication
                    
                
            
        
    
    2.2.2 热部署
    • 现状:编写controller后,需要重启才能生效。

    • 热部署:当修改部分内容后,自动部署,不用重启就可以访问。

    • 步骤:

      1. 开启auto make自动编译(一次性)
      2. 设置自动编译项目(跟项目)
      3. 添加依赖
    • 步骤:

      1. 开启auto make自动编译(一次性)

        [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zQq5c4dF-1634646593334)(assets/image-20211019102918856.png)]

      2. 设置自动编译项目(跟项目)

        [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aVXjgPdh-1634646593334)(assets/image-20211019103034566.png)]

      3. 添加依赖

        
            org.springframework.boot
            spring-boot-devtools
            
            true
        
        
    2.3 整合测试
    • spring boot 整合 Junit

    • 步骤:

      1. 添加依赖
      2. 编写测试用例
    • 实现:

      1. 添加依赖

                
                    org.springframework.boot
                    spring-boot-starter-test
                
        
      2. 编写测试用例

        package com.czxy.boot.service;
        
        import com.czxy.boot.HelloApplication;
        import org.junit.Test;
        import org.junit.runner.RunWith;
        import org.springframework.boot.test.context.SpringBootTest;
        import org.springframework.test.context.junit4.SpringRunner;
        
        import javax.annotation.Resource;
        
        
        @RunWith(SpringRunner.class)                        // spring 整合 Junit
        @SpringBootTest(classes = HelloApplication.class)   // spring boot 整合 Junit
        public class TestUserService {
        
            @Resource
            private UserService userService;
        
            @Test
            public void testSave() {
                userService.save();
            }
        }
        
        
    3. 统一环境:VS
    • 前端开发工具:Visual Studio Code
    4. ES 6 (ECMSscript 6) 4.1 什么是ES6
    • ECMAscript 6 是Javascript的规范。
    4.2 基本语法 4.2.1 声明变量
    //1 声明普通变量 var
    var a = 1;
    //2 声明局部变量 let
    let b = 2;
    //3 声明常量 const
    const c = 3;
    
    4.2.2 模板字符串
    • 现状:在js中,拼接字符串很麻烦。

    • 模板字符串:解决拼接字符串的问题

    • 语法:

      var t = `内容`;
      
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/338297.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号