一、在idea搭建spring boot

1、首先下载idea

2、file-new-project 

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_springboot

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_idea_02

然后一步一步往下就可以了。

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_生产环境_03

二、小知识

1、

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_生产环境_04

启动项。

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_springboot_05

2、

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_idea_06

 

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_springboot_07

和在eclipse中配置maven一样,只不过从tomcat7:run 改成了 spring-boot:run

3、配置文件

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_生产环境_08

推荐用 yml文件:

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_ide_09

直接输入application.yml ,然后在里面敲server.  就能提示 port 等,需要注意:

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_spring_10

每个value前面都有空格,没有空格 key是黑色的,语法是不对的!!!!

4、读取配置文件

①建议使用yml文件,有两点好处:

1)层次结构清晰,分层明确

2)避免编写冗余代码

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_生产环境_11

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_idea_12

在类中获取配置文件的信息。

②、如果我们需要同时获取一个模块下的很多属性信息,一个个写很费劲。那怎么办呢??

1、

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_ide_13

编写一个配置类,类上加上 @Component、@ConfigurationProperties(prefix = "girl") 注解,然后声明需要提取的私有属性,然后生成getter/setter方法。(如果用笔记本的小伙伴一定要记住,快捷键是 alt+Fn+insert ,就因为这个,我一度怀疑我的键盘出了问题。。。。)

2、在类中注入刚才编写的配置类

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_生产环境_14

然后通过就跟我们获取实体属性一样了。

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_springboot_15

 

PS:如果出现这个问题:spring boot Configuration Annotation Proessor not found in classpath

在pom中添加:

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-configuration-processor</artifactId>
   <optional>true</optional>
</dependency>

我刚开始也报这个错,然后我以为是springboot版本号太高的问题(我用的2.0.4,教学视频是1.4.1),改了不行。然后加上从别人那黏贴上面的依赖也不行,搞的我一度想放弃,所以如果遇到这个问题,肯定是加依赖就可以解决,如果出现什么 no  dependence.....可能是你写错了,或者什么,但千万别修改别的东西!!!!

 

5、生产环境和开发环境启动项目的问题

首先,我们先新建两个yml文件用于生产环境和开发环境的配置。

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_生产环境_16

依次在application-dev.yml和application-prod.yml两个文件配置不同环境的配置信息,例如端口号、项目根目录、各种参数等。

然后在总的application.yml 配置启动项目需要加载哪个环境的yml文件。

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_生产环境_17

这样,再启动就会加载的是开发环境的,如果想要加载生产环境,就把dev改成prod。但这样就需要我们手动修改,很麻烦,再说到了生产环境,也不能打开idea启动吧(我暂时还没有打包过spingboot项目,哪位大佬看到了,给解释一下~),所以还要一种方式:

先到你的工作空间下:

执行 mvn install //maven编译一下项目

然后执行  java -jar target/girl-0.0.1-SNAPSHOT.jar --spring.profiles.active=prod  //加载生产环境的就把最好的参数改成prod,开发就dev。

6、controller

1)

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_idea_18

可以支持两个映射地址,url中写哪个都能访问的到

2)获取url中的数据

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_idea_19

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_idea_20

   

3)获取传递参数  /hello?id=10

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_spring_21

当/hello?id=  回返回null

 

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_springboot_22

3)

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_ide_23

springboot 和spring springmvc的区别

springboot是一个配置工具,一个整合工具。而springmvc是一个框架。目的就是快速开发一个基于spring的wen项目。

spring有很多的产品,例如 boot jpa cloud等。

好处:

1)简化了配置 yml、 例如spring-web.xml 中 注解不用开启、视图解析器直接在yml文件中、扫描路径 自动扫描带@RestController的

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_ide_24

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_spring_25

2)简化了部署 一个jar包,运行环境中有jdk 因为 通过 java -jar xxx.jar --spring.profile.active=

3)集成了大量的第三方配置库,基本可以实现零配置的开箱即用。新建项目的时候,可以选择很多依赖,例如activemq、redis等

 

spring boot jpa

spring boot进行数据库持久化。

1、pom中引入jpa的jar包

2、在application.yml中配置数据库信息和jpa信息(ddl-auto:①create 每次都创建一张新表 ②update 第一次会创建新表,后续有数据就不创建了   show-sql:在concle展示sql)

3、创建entiry 类上要加@Entity注解,这样才能自动创建表。包括@id  主键。这样启动项目,数据库就有这张表了。

并且cupSize对自动映射为cup_size。

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_生产环境_26

4、 写一个接口extends JpaRepository<类名,主键类型(Integer)> 

5、直接注入注入这个接口,然后可以调用一些默认方法。例如findAll、add(传进去类的实例)、findone(id)、delete(传入的是id 因为接口源码 参数 ID id,是你指定的@id 字段)、更新可以使用原生态的 update。

除此之外,还能根据接口文档命名规则自定义方法,例如在接口中写 findByAgeContaing(String age) 这样等同于 like

Spring Boot 项目在IDEA 加快启动速度 idea设置springboot启动内存_ide_27

当然你也可以在接口中自定义方法,然后用@Query(sql)去查询 :username