SpringBoot的入门

笔记:整合freemarker && mybatis + abel533通用mapper + pagehelper分页助手 && 整合Redis && 整合ActivMQ && 读取核心 及 自定义配置文件
应用服务器:jetty , tomcat , websphere , weblogic , jboss

spring的组件轻,配置重

Spring Boot 简化了基于Spring的应用开发,只需要“run”就能创建一个独立的、生产级别的Spring应用

Spring Boot 主要目标是:
?为所有 Spring 的开发提供一个从根本上更快的入门体验
?开箱即用,但通过自己设置参数,即可快速摆脱这种方式。
?提供了一些大型项目中常见的非功能性特性,如内嵌服务器、安全、指标,健康检测、外部化配置等
?绝对没有代码生成,也无需 XML 配置。

A/:引导类的注解:
1.@SpringBootApplication注解里封装了以下的注解:
@Configuration:用于定义一个配置类
@EnableAutoConfiguration :Spring Boot 会自动根据你jar 包的依赖来自动配置项目。
@ComponentScan:告诉Spring 哪个packages 的用注解标识的类会被spring
自动扫描并且装入bean 容器。默认在当前的引导类所在包以及子包下扫描。(带有@controller @service @Component,@repository)

2.整合mybatis的注解
    @MapperScan(basePackages = "")//mapper扫描
    
3.整合redies || ActiveMQ 使用注解@EnableCaching开启缓存  持久类实现序列化Serializable

4.整合ActivMQ
    //创建一个目的地交给spring管理
    @Bean
    public Queue queue() {
        return new ActiveMQQueue("itcast.queue");
    }
    
    对象jmsTemplate  发送消息
    
    // 接受消息方法的注解
    @JmsListener(destination = "itcast.queue")

B/:展示类的注解:
@RestController注解: 相当于同时使用了@Controller和@ResponseBody注解;

D/:springBoot对jsp支持不强,对模板的引擎的支持很强大:freeamrker,thymeleaf。

E/:myBatis的整合:
Mapper的接口的注解:
@Mapper:声明Mapper接口
@Select:声明这个接口所需要使用的sql,当然,有查询的注解,肯定就有增删改的注解。

F/:注解实现redis开发
1.服务类方法注解:@Cacheable注解实现缓存添加&&使用
@CacheEvict实现缓存清理

2.官网提供了三种接口RedisConnectionFactory, StringRedisTemplate 和 RedisTemplate,如下:直接注入
    @Autowired
    private RedisTemplateredisTemplate;

G/:整合ActivMQ
1.Spring Boot中内嵌了ActiveMQ服务,加入依赖后可以直接使用

2.controller中  直接注入:
    org.springframework.jms.core.JmsTemplate;   发送者;
    javax.jms.Destination;                      接受者

3.使用外部的ActiveMQ 只需要在application.properties 中添加配置
H/: **
    读取核心配置文件  及  自定义配置文件
    1.读取核心配置:
        1.1:    
            org.springframework.core.env.Environment
            @Resource
            private Environment env;
                env.getProperty("~~")
                env.getProperty("~~")
        1.2:注解:
            @Value("${~~}")
            String ~~;
    
    
2.自定义配置文件
    1.
    
        自定义配置 ~~.properties  
        需要添加依赖spring-boot-configuration-processor
    
        @ConfigurationProperties(prefix = "配置文件配置项的前缀")eg:jdbc.username : jdbc
        @PropertySource(value="classpath:配置加载属性文件的位置" )
        @Component//自动装配加入spring容器中管理
        
        需要一个bean来封装自定义的配置文件配置项后缀-->eg:jdbc.username : String username

I/:打jar包
添加spring-boot-maven-plugin依赖;执行:packages


--> 在springBoot中的application.properties 是作为springboot默认加载的配置文件存在。

    #端口配置
    server.port=8888

    1.#freeamrker配置:
    spring.freemarker.template-loader-path=classpath:~~
    spring.freemarker.suffix=.ftl
    
    2.#连接池
    spring.datasource.driverClassName=~~
    spring.datasource.url=~~
    spring.datasource.username=~~
    spring.datasource.password=~~
    
    3.#spring集成Mybatis环境
    #pojo别名扫描包
    mybatis.type-aliases-package=com.butif...
    #加载Mybatis核心配置文件
    mybatis.mapper-locations=classpath:mapper/*Mapper.xml
    mybatis.config-location=classpath:mybatis/SqlMapConfig.xml
    #配置连接池,还需要在pom.xml中加入该连接池的依赖
    #spring.datasource.type=~~
    
    
    4.#Redis 单机
    spring.redis.host=192.168.37.161
    spring.redis.port=6379
    
    5.#Redis 集群
    spring.redis.cluster.nodes=192.168.37.161:7001,
        192.168.37.161:7002,192.168.37.161:7003,
        192.168.37.161:7004,192.168.37.161:7005,192.168.37.161:7006
    
    6.#ActiveMQ
    spring.activemq.broker-url=tcp://192.168.37.161:61616

--> mybatis/SqlMapConfig.xml:中加载通用Mapper及分页助手的配置


    
        
            
                
                
                    
                    
                    
                    
                
                
                
                    
                    
                    
                    
                
            
        
    
    

--> 一个小Demo所需的依赖:

    
       org.springframework.boot
       spring-boot-starter-parent
       ~~
        
    
    
       
          org.springframework.boot
          spring-boot-starter-web
       

       
          org.springframework.boot
          spring-boot-starter-test
          test
       
    
    
    
    
        org.springframework.boot
        spring-boot-starter-freemarker
    

    
    
    
    org.springframework.boot
    spring-boot-devtools
    
    
    
    
        org.mybatis.spring.boot
        mybatis-spring-boot-starter
        ~~
    
    
    
    
      mysql
      mysql-connector-java
    
    
    
    
        com.github.abel533
        mapper
        ~~
    
    
    
        com.github.pagehelper
        pagehelper
        ~~
    
    
        com.github.jsqlparser
        jsqlparser
        ~~
    

    
    
       org.springframework.boot
       spring-boot-starter-data-redis
    
    
    
    
        org.springframework.boot
        spring-boot-starter-activemq
    
    
    
    
       org.springframework.boot
       spring-boot-configuration-processor
       true
    
    
    
    
        
            
                org.springframework.boot
                spring-boot-maven-plugin
            
        
    

你可能感兴趣的:(SpringBoot的入门)