spring boot注解,BigDecimal比较,BeanUtils.copyProperties()用法

Posted yanyuechao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring boot注解,BigDecimal比较,BeanUtils.copyProperties()用法相关的知识,希望对你有一定的参考价值。

1,spring boot入口类(带main class的类)的位置

springboot入口类存放的位置,放到比常规类高一级的包内,这样项目启动时才能加载到包路径下的各个java配置类。

1,spring boot注解

1, @RestController

@RestController is a stereotype annotation that combines @ResponseBody and @Controller.

意思是:@RestController注解相当于@ResponseBody + @Controller合在一起的作用。

2, @SpringBootApplication

很多Spring Boot开发者总是使用 @Configuration , @EnableAutoConfiguration 和 @ComponentScan 注解他们的main类。由于这些注解被如此频繁地一块使用(特别是你遵循以上最佳实践时),Spring Boot提供一个方便的 @SpringBootApplication 选择。

该 @SpringBootApplication 注解等价于以默认属性使用 @Configuration , @EnableAutoConfiguration 和 @ComponentScan

@Configuration , @EnableAutoConfiguration 和 @ComponentScan [email protected]

用于springboot的入口类main()方法

3 @Configuration

注解用于java配置类,在spring boot启动过程中进行加载

4 @Component

泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。

5,@Transactional注解

用在service层上需要实现事务控制的方法上面,只用外部的方法条用才会被AOP捕获,也就是类内部的方法调用本类的其他方法并不会引起事务行为,即使被调用方法使用@Transactional注解所修饰,@Transactional应该用在controller调用service层的第一个方法。

2,从application.yml中读取配置信息的方式

比如我在yml文件中配置了一个配置信息message: 

massage:
  data:
    name: yy

我在类中想要获取他 需要这样去写,直接注入到name属性中:

@Value("${message.data.name}")
private String name;  

 

 

BigDecimal :

1, compareTo方法比较的是数据是否相等,不看区别不同的小数位,例如2与2.00是相等的。

Equals方法除了比较两者的数值是否相等,还比较小数位是否相等,以上2.equals(2.00),返回是false。

2, BigDecimal除以一个数,结果保留2位小数

sales.getRealPrice().divide(new BigDecimal(sales.getSaleAmount()), 2)

double类型的数,保留两位小数:

public static void main(String args[]){
     //保留两位有效数字
    DecimalFormat df = new DecimalFormat("###0.0#");
    String format = df.format(0.33333);
    System.out.println(format);
    // 保留两位有效数字,解决double科学计数法的形式
    String format1 = String.format("%.2f", 0.33333);
    System.out.println(format1);
}

BeanUtils.copyProperties() :

用法拷贝对象的属性,拷贝第一参数值给第二个参数

不能用于java.utils.Date属性的拷贝

 

以上是关于spring boot注解,BigDecimal比较,BeanUtils.copyProperties()用法的主要内容,如果未能解决你的问题,请参考以下文章

spring boot中使用javax.validation以及org.hibernate.validator校验入参

Spring Boot

Spring Boot实战笔记-- Spring高级话题(组合注解与元注解)

spring boot 注解大全

Spring常用表单验证注解

Spring Boot缓存注解介绍