1. 启动彩蛋修改:

    项目resources目录下建立banner.txt文件就可替换原来的菜单

    字符画生成的网站http://www.network-science.de/ascii/ http://patorjk.com/software/taag/

  2. 切换不同环境配置

    在idea 启动配置program arguments加上–spring.profiles.active={profile},或在dos行加上–spring.profiles.active={profile};

    或配置文件spring.profiles.active={profile}

    各个环境公共的配置写在application.properties中

    各个模块独有的配置配置在自己的application-{xxx}.properties文件中

    程序读取的时候优先读取application.properties中选中的profile的配置,若读不到才会从application.properties去读

  3. 读取配置

    必须先@Component  然后参数@Value("${cusvar}"

    @Value("${app.name}")

    private String cusvar ; 将${app.name}值赋予cusvar

    name= HowieLi

    age= 18

    content= "name: ${name}, age: ${age}"

    代码中直接调用content就可以了,访问启动的应用显示name: HowieLi, age: 18。

  4. @RestController该注解是Spring4之后新加的注解,等同于@Controller和@ResponseBody的组合。

    @RequestMapping(value = "/hello", method = RequestMethod.GET)== @GetMapping("/hello")

    @RequestMapping(value = {"/hello", "/hi"}, method = RequestMethod.GET)访问/hello和/hi是一样的效果

    @GetMapping(value = "/say/{id}")

    public String helloGet(@PathVariable("id") int id, @RequestParam("name") String name) {return "id: " +  id + ",name:" + name;}访问http://localhost:8080/say/5?name=howieli

  5.     import org.springframework.boot.context.properties.ConfigurationProperties;
    import org.springframework.stereotype.Component;import lombok.Data;/*** Created by  on 2017/07/01.*/@Data@Component    //将Person类交由Spring容器管理
    @ConfigurationProperties(prefix = "person")   //填写配置文件中的前缀
    public class Person {private String name;private int age;
    //
    //  public String getName() {
    //      return name;
    //  }
    //  public void setName(String name) {
    //      this.name = name;
    //  }
    //  public int getAge() {
    //      return age;
    //  }
    //  public void setAge(int age) {
    //      this.age = age;
    //  }@Overridepublic String toString() {return "Person [name=" + name + ", age=" + age + "]";}
    }@Autowiredprivate Person person;@RequestMapping("/hellTask")public String hellTask(){logger.info("访问hellTask");return person.toString();}

    获得配置文件值

  6. Preferences -> Editor -> General -> Appearance, uncheck "Show Spring Boot metadata panel"解决Spring Boot Configuration Annotation Processor not found in classpath

  7. Usage of API documented as @since 1.6+ This inspection finds all usages of methods that have @since tag in their documentation. This may be useful when development is performed under newer SDK version as the target platform for production解决方法

    File ->Project Structure->Project Settings -> Modules -> 你的Module名字 -> Sources -> Language Level->选个默认的就行。

  8. 1.5不支持diamond运算符,请使用source 7或更高版本以启用diamond运算符,怎么办?

    <properties>加上

    <maven.compiler.source>1.8</maven.compiler.source>

    <maven.compiler.target>1.8</maven.compiler.target>或

    <build>

    <plugins>

    <plugin>

    <groupId>org.apache.maven.plugins</groupId>

    <artifactId>maven-compiler-plugin</artifactId>

    <version>3.6.1</version>

    <configuration>

    <source>1.8</source>

    <target>1.8</target>

    </configuration>

    </plugin>

    </plugins>

    </build>

  9. ** WARNING ** : Your ApplicationContext is unlikely to start due to a @ComponentScan of the default package. 因为application.java 文件不能直接放在main/java文件夹下,必须要建一个包把他放进去

  10. 热部署参看http://www.cnblogs.com/java-zhao/p/5502398.html

    http://blog.csdn.net/jsshaojinjie/article/details/64125458

    <!-- 用于将应用打成可直接运行的jar(该jar就是用于生产环境中的jar) 值得注意的是,如果没有引用spring-boot-starter-parent做parent, 且采用了上述的第二种方式,这里也要做出相应的改动 -->

    <plugin>

    <groupId>org.springframework.boot</groupId>

    <artifactId>spring-boot-maven-plugin</artifactId>

    <configuration>

    <fork>true</fork><!-- 如果没有该项配置,肯呢个devtools不会起作用,即应用不会restart -->

    </configuration>

    </plugin>

    <!-- devtools可以实现页面热部署(即页面修改后会立即生效,这个可以直接在application.properties文件中配置spring.thymeleaf.cache=false来实现),实现类文件热部署(类文件修改后不会立即生效),实现对属性文件的热部署。即devtools会监听classpath下的文件变动,并且会立即重启应用(发生在保存时机),注意:因为其采用的虚拟机机制,该项重启是很快的-->

    <dependency>

    <groupId>org.springframework.boot</groupId>

    <artifactId>spring-boot-devtools</artifactId>

    <optional>true</optional><!-- optional=true,依赖不会传递,该项目依赖devtools;之后依赖myboot项目的项目如果想要使用devtools,需要重新引入 -->

    </dependency>

    CTRL + alt + s --> 查找make project automatically --> 选中

    ctrl+shift+alt+/ --> 查找Registry --> 找到并勾选compiler.automake.allow.when.app.running

    关闭热部署spring.devtools.restart.enabled 属性为false

    System.setProperty("spring.devtools.restart.enabled","false");

  11. public static void main(String[] args) throws IOException {

    Properties properties= new Properties();

    //System.out.println(System.getProperty("user.dir"));

    //自己设置文件位置

    //InputStream in = new FileInputStream(System.getProperty("user.dir")

    //+"/isoft-manager/isoft-manager-pojo/app.properties");

    //Resources位置

    InputStream in=Application.class.getClassLoader().getResourceAsStream("app"

    + ".properties");

    properties.load(in);

    SpringApplication app=new SpringApplication(Application.class);

    app.setDefaultProperties(properties);

    app.run(args);

    }使用自己的启动设置

  12. 使用fastjson

    @Bean
    public HttpMessageConverters fastJsonHttpMessageConverters(){//1.需要定义一个convert转换消息的对象;FastJsonHttpMessageConverter fastJsonHttpMessageConverter = new FastJsonHttpMessageConverter();//2:添加fastJson的配置信息;FastJsonConfig fastJsonConfig = new FastJsonConfig();fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat);//3处理中文乱码问题List<MediaType> fastMediaTypes = new ArrayList<MediaType>();fastMediaTypes.add(MediaType.APPLICATION_JSON_UTF8);//4.在convert中添加配置信息.fastJsonHttpMessageConverter.setSupportedMediaTypes(fastMediaTypes);fastJsonHttpMessageConverter.setFastJsonConfig(fastJsonConfig);HttpMessageConverter<?> converter = fastJsonHttpMessageConverter;return new HttpMessageConverters(converter);}
  13. http://blog.csdn.net/xiaoyu411502/article/details/48049099application.properties配置说明

本文转自whshurk 51CTO博客,原文链接:http://blog.51cto.com/shurk/1943959,如需转载请自行联系原作者

SpringBoot自学汇总相关推荐

  1. SpringBoot笔记汇总【动力节点SpringBoot全套教程完整版】

    前言 动力节点的springboot笔记汇总,公开免费. Spring Boot教程 学习地址 动力节点springboot视频教程-专为springboot初学者打造的教程_哔哩哔哩_bilibil ...

  2. java php nodejs python旅游网站设计与开发需求分析Springboot SpringcloudVue汇总一览

    1.旅游网站设计与开发 系统主要包含了用户登录 .特色产品管理.信息介绍管理.旅游分享管理.公告新闻管理.酒店管理.类别管理.友情链接管理.留言管理.轮播图管理.旅行社管理.美食管理.评论管理.收藏管 ...

  3. SpringBoot知识点汇总

    @RestController是什么,与@Controller的区别是什么? @RestController注解相当于@ResponseBody + @Controller合在一起的作用. 1.Con ...

  4. 自学太慢了?不报班只白嫖行不行?又或者报个班,逼自己一把?

    无论你是大学生还是在职人员,想学 Java 时,都会面临两个选择,自学或者报班.报班通常太费钱,时间又不自由:自学又不知道如何下手,担心自己坚持不下来.怎么办呢? 本文将解答你自学 Java 的 N ...

  5. Spring Cloud原理

    >转载请标明出处:  >https://www.fangzhipeng.com > 本文出自[方志朋的博客](http://blog.csdn.net/forezp) >  & ...

  6. 拜托!面试请不要再问我 Spring Cloud 底层原理 ...

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. >出处:  >https://www.fangzhipeng.com > 本文出自 ...

  7. 那些年让人迷惑的同步、异步、阻塞、非阻塞

    本文为转载文章,原文链接:https://www.jianshu.com/p/3d603166f54d 在IT圈混饭吃,不管你用什么编程语言.从事前端还是后端,阻塞.非阻塞.异步.同步这些概念,都需要 ...

  8. 性能优化之道】每秒上万并发下的Spring Cloud参数优化实战

    本文为转载文章,作者:中华石杉,十余年BAT架构经验,倾囊相授.作者微信公众号:石杉的架构笔记(ID:shishan100) 一.写在前面 相信不少朋友都在自己公司使用Spring Cloud框架来构 ...

  9. 一个故事讲清楚NIO

    本文为转载文章,原文链接:http://www.cnblogs.com/LBSer/p/4622749.html 假设某银行只有10个职员.该银行的业务流程分为以下4个步骤: 1) 顾客填申请表(5分 ...

最新文章

  1. 写给大忙人的ELK最新版6.2.4学习笔记-Logstash和Filebeat解析(java异常堆栈下多行日志配置支持)...
  2. 最近公共祖先 LCA Tarjan算法
  3. 内存是新的硬盘,硬盘是新的磁带
  4. SDN(软件定义网络)
  5. SprintBoot开发官方指导文档
  6. Python继承类的方式实现多线程及控制线程数
  7. 高质量c/c++编程(9)
  8. 【C#/.NET】.NET6中全局异常处理
  9. Redis入门(一)之安装
  10. Linux给GCC编译的应用程序创建服务
  11. LeetCode 2200. 找出数组中的所有 K 近邻下标
  12. Hyperledger Fabric 1.0 从零开始(十二)——fabric-sdk-java应用【补充】
  13. String:字符串常量池
  14. 时间复杂度o(n^0.5)_算法基础1.1:算法复杂度计算(二)
  15. spring注解开发实例
  16. 下行法求最小割集案例_故障树分析方法(FTA)
  17. Linux 音频驱动(六) ALSA音频驱动之PCM Write数据传递过程
  18. 程序员需要的日常(收费)软件(都免费)
  19. 2019-02-13 思考:1000瓶药水,1瓶有毒,老鼠毒发24h,如何用最少的老鼠在24h内找出毒药?
  20. 整数n分解成素数乘积c语言,关于几种求素数的方法(C语言描述)

热门文章

  1. java----OO的概念和设计原则(转)
  2. MYSQL 更改数据库data存储目录 创建用户 创建权限 设置远程访问的权限.
  3. 总结运行SSIS包的几种方式
  4. 带有无参数的存储过程
  5. C#数据库事务原理及实践(下)
  6. Vue.js 打造酷炫的可视化数据大屏
  7. jquery 遍历java对象的属性_用jquery each标签遍历java list对象
  8. c++如何将两个if函数合并_设计一个 add 函数
  9. MySQL高级 - NULL值的判定
  10. Atomic Integer 原理分析-get方法