建网站空间购买,做网站找人,东莞网站建设-南城石佳,电商网站建设 网站定制开发.第一个程序HelloWorld
项目创建方式#xff1a;使用 IDEA 直接创建项目
1、创建一个新项目
2、选择spring initalizr #xff0c; 可以看到默认就是去官网的快速构建工具那里实现
3、填写项目信息
4、选择初始化的组件#xff08;初学勾选 Web 即可#xff09;
5、填….第一个程序HelloWorld
项目创建方式使用 IDEA 直接创建项目
1、创建一个新项目
2、选择spring initalizr 可以看到默认就是去官网的快速构建工具那里实现
3、填写项目信息
4、选择初始化的组件初学勾选 Web 即可
5、填写项目路径
6、等待项目构建成功 项目结构分析
通过上面步骤完成了基础项目的创建。就会自动生成以下文件。
1、程序的主启动类
2、一个 application.properties 配置文件
3、一个 测试类
4、一个 pom.xml 编写一个http接口
1、在主程序的同级目录下新建一个controller包一定要在同级目录下否则识别不到
2、在包中新建一个HelloController类
RestController
public class HelloController {RequestMapping(/hello)public String hello() {return Hello World;}} 打包为jar包可以不用打开Idea用java -jar就能运行打开localhost:8080发现运行成功
点击 maven的 package如果打包成功则会在target目录下生成一个 jar 包 在文件所在位置右键打开PowerShell使用java -jar命令 .yaml配置注入
yaml基础语法
说明语法要求严格
1、空格不能省略
2、以缩进来控制层级关系只要是左边对齐的一列数据都是同一个层级的。
3、属性和值的大小写都是十分敏感的。 yaml注入配置文件
1、在springboot项目中的resources目录下新建一个文件 application.yml
2、编写一个实体类 Dog
3、思考我们原来是如何给bean注入属性值的Value给狗狗类测试一下 Component //注册bean
public class Dog {Value(阿黄)private String name;Value(18)private Integer age;
}
4、在SpringBoot的测试类下注入狗狗输出一下 SpringBootTest
class DemoApplicationTests {Autowired //将狗狗自动注入进来Dog dog;Testpublic void contextLoads() {System.out.println(dog); //打印看下狗狗对象}}
5、我们在编写一个复杂一点的实体类Person 类
6、我们来使用yaml配置的方式进行注入大家写的时候注意区别和优势我们编写一个yaml配置 person:name: qinjiangage: 3happy: falsebirth: 2000/01/01maps: {k1: v1,k2: v2}lists:- code- girl- musicdog:name: 旺财age: 1
7、我们刚才已经把person这个对象的所有值都写好了我们现在来注入到我们的类中
ConfigurationProperties(prefix person) /*
ConfigurationProperties作用
将配置文件中配置的每一个属性的值映射到这个组件中
告诉SpringBoot将本类中的所有属性和配置文件中相关的配置进行绑定
参数 prefix “person” : 将配置文件中的person下面的所有属性一一对应
*/
Component //注册bean
ConfigurationProperties(prefix person)
public class Person {private String name;private Integer age;private Boolean happy;private Date birth;private MapString,Object maps;private ListObject lists;private Dog dog;
}
8、IDEA 提示springboot配置注解处理器没有找到让我们看文档我们可以查看文档找到一个依赖
9、确认以上配置都OK之后我们去测试类中测试一下 加载指定的配置文件
PropertySource 加载指定的配置文件
configurationProperties默认从全局配置文件中获取值 1、我们去在resources目录下新建一个person.properties文件
namekuangshen
2、然后在我们的代码中指定加载person.properties文件 PropertySource(value classpath:person.properties)
Component //注册bean
public class Person {Value(${name})private String name;......
}
回顾properties配置
我们上面采用的yaml方法都是最简单的方式开发中最常用的也是springboot所推荐的那我们来唠唠其他的实现方式道理都是相同的写还是那样写配置文件除了yml还有我们之前常用的properties 我们没有讲我们来唠唠
【注意】properties配置文件在写中文的时候会有乱码 我们需要去IDEA中设置编码格式为UTF-8
settings--FileEncodings 中配置 对比小结
Value这个使用起来并不友好我们需要为每个属性单独注解赋值比较麻烦 1、ConfigurationProperties只需要写一次即可 Value则需要每个字段都添加
2、松散绑定这个什么意思呢? 比如我的yml中写的last-name这个和lastName是一样的 - 后面跟着的字母默认是大写的。这就是松散绑定。可以测试一下
3、JSR303数据校验 这个就是我们可以在字段是增加一层过滤器验证 可以保证数据的合法性
4、复杂类型封装yml中可以封装对象 使用value就不支持
结论
配置yml和配置properties都可以获取到值 强烈推荐 yml
如果我们在某个业务中只需要获取配置文件中的某个值可以使用一下 value
如果说我们专门编写了一个JavaBean来和配置文件进行一一映射就直接configurationProperties不要犹豫