Spring Boot随记

  1. @Bean 注解的方法被继承后注解依然有效,依然可以被扫描和注入。

  2. SpringBoot的测试方式

    	//开启事务
    	@Transactional
    	//提供spring的测试器
    	@RunWith(SpringRunner.class)
    	//设置启动类
    	@SpringBootTest(classes = TestApplication.class)
    	public class WxAppletInfoTest {
    	@Test
    	//回滚
    	@Rollback
    	public void saveEventTest(){
    	}
    
  3. @Value 注解注入静态变量时需要写在非静态的set方法上

    	//需要加入 @Component 注解,否则不会扫描导致无法注入
    	@Component
    	public class WxAppletInfo {
    		/** 小程序 appId */
    		private static String appid;
    
    		@Value("${bootx.weixin.applet.appid:}")
    		public void setAppid(String appid) {
    			WxAppletInfo.appid = appid;
    		}
    
    注意: @Value 使用的是spel表达式, 设置默认值方式一般为{取值表达式}}:[默认值] :是空值时注入默认值,?:相当于三目运算符.
  4. 自定义配置让yml中有提示

    第一种,新建一个类set/get方法触发提示

    	@Component
    	@ConfigurationProperties(prefix = "bootx.security.shiro")
    	public class ShiroConfigYml {
    		private boolean enable;
    		public boolean isEnable() {
    			return enable;
    		}
    		public void setEnable(boolean enable) {
    			this.enable = enable;
    		}
    	}
    
  5. spring boot maven 打包插件

    	
        
            
            
                org.springframework.boot
                spring-boot-maven-plugin
                
                    
                    cn.bootx.run.Application
                    
                    run
                
                
                    
                        
                            repackage
                        
                    
                
            
        
    
    
  6. spring boot maven打包时跳过测试

    第一种 pom.xml中配置

    	
    		
        true
    
    

    其他

    • 运行指令添加参数
    • IDEA插件选择关闭测试按钮
  7. SpringBoot 使用AOP

    1. 导入spring boot的aop starter
      	
      		org.springframework.boot
      		spring-boot-starter-aop
      	
      
    2. 添加 @EnableAspectJAutoProxy开启项目的AOP功能,
      	@EnableAspectJAutoProxy
      	public class AdminAppliation {
      	}
      
    3. 编写一个带有@Aspect注解的切面类
      	@Aspect
      	@Component
      	public class WebLogAspect {
      	}
      

转载于:https://my.oschina.net/u/2555967/blog/2995572

你可能感兴趣的:(java,开发工具)