SpringBoot学习笔记

1. SpringBoot是默认jar包嵌入式Tomact默认不支持jsp页面;可以使用摸版引擎(freemarker,thymeleaf等)

 2. resource文件夹下
    static文件夹:保存·所有的静态资源如 js,css,images;

    templates文件夹: 保存所有摸版页面与可以使用的摸版引擎

    applicaton.propertise文件中可以修改StringBoot的默认信息

    如:server.port=端口号


3.项目要在 java→包 要在同一个包里
 如果 java→包 是两个包里执行的话不会影响到

4 SpringBoot把所有功能场景都抽取出来做成了一个个的启动器(Starter)要用什么场景就导入什么启动器

5. 配置文件加载优先等级
    一级:file:config/

    二级:file:/

    三级classpath:/config/

    四级:classpath:/

  按照优先级从高到低的顺序,所有位置的文件都会被加载,优先级高的配置内容会覆盖优先级低的配置内容

6. SpringBoot如果报找不到Mapper接口那就在哪个Mapper上加@Mapper注解就能找到了

7 常用注解:

    1.@SpringBootApplication:标识一个类是主程序类用来启动程序

     他的子类@AutoConfigurationPackage注解会把主配置类的所在包及下面所有的组件扫描到Spring容器中

    2.@RestController:控制层

    3.@Controller:标注为控制层

    4.@ResponseBody:把方法返回的结果直接写入HTML中

    5.@Repository:数据访问层

    6.@Service :业务逻辑层

    7.@Component:组件层

    8.@ComponentScan:组件扫描 相当于Spring中的组件扫描把扫描到的注解打成bean

    9.@Configuration:指出该类是Bean配置的信息源 相当于xml中的<beans></beans>根标签 一般加在主类上

    10.@Bean : ※放在方法上而不是类上 相当于xml中的<bean></bean>标签 意思是产生一个bean交给spring管理

    11.@EnableAutoConfiguration: 让StringBoot根据应用所声明的依赖对Spring框架来自动配置 一般加在主类上

    12.@AutoWired:通过类型注入值 当有多个同一类型的Bean时,与@Qualifier("name")一起使用

    13.@Resource:这个也是通过类型注入值但是如果类型没有会通过名再注入一次而@AutoWired:不会

    14.@RequestMapping:用来处理请求地址映射的注解 用于类上时:所有的方法都是以该地址作为父路径

    15.@ControllerAdvice:全局异常处理

    16.@Mapper:这个是加载dao层的mapper接口上声明接口是mapper的接口

    17.@Select:声明这个接口所需要使用的sql

    18.@EnableTransactionManagement:启动注解事物管理 他等同于<tx:annotation-driven />

    19.异步方法处理注解 @EnableAsync(加在启动类上) @Async(写方法上)

        异步方法大部分都是void 如果是有返回值的这样写
        public Future<类型> 方法名(){
          return 结果;
        }
    20.@Value("${配置文件中的名}") 通过配置文件中的名 获得配置文件中的值

        例
          application.properties文件中

                      名=值
          实体类中

              @Value("${名}")

              private 类型 名

   21.@Param("属性名") 这个的作用和 parameterType的作用是一样的

        例
          mapper层

              public 返回类型 方法名(@Param("data")String data);

          mapper.xml中

              <select id="方法名" resultType="返回类型"> 不用写parameterType就能调用传进来的参数

                  select * from 表名 where 列=#{data}

              </select>


 

原文地址:https://www.cnblogs.com/HQ0422/p/10862883.html