目前了解的springboot中IOC注解主要分为两类: 1. 注册bean:@Component和@Repository.@Service.@Controller .@Configuration 共同之处:这些注解都使用在类上,将类标识为Bean,由Spring扫描到后会生成一个单例bean放到容器中. 不同之处在于: @Component是一个泛化的概念,仅仅表示一个组件 (Bean) ,可以作用在任何层: @Repository.@Service.@Controller 都包含@Compo…
springboot中的常用注解个人觉得springboor中常用的注解主要可以分为三种:放入容器型注解.从容器中取出型注解和功能型注解.其中的放入容器型和从容器中取出型就是我们平时所说的控制反转和依赖注入的概念(个人版本- - - 可以看一看,别太当真 0.0) 放入容器型注解简介:个人觉得就是申明一个实例对象,然后将这个对象交给spring管理. 1.@Component:放在类上,把普通类实例化到spring容器中.可以说很多注解都是基于这个注解的. 2.@Bean: 放在方法上,用@Be…
springboot中的controller注解没有生效  , 启动的Application类没有在controller的父目录或同级目录…
本文参考了: https://blog.csdn.net/derrantcm/article/details/76652951 https://blog.csdn.net/derrantcm/article/details/73456550 通过以上可以获得springboot的许多知识. 本文只是列出本人常用的两个aware. 闲话少叙,直接上代码 BeanFactoryAware  帮助获取各种bean import org.springframework.beans.BeansExcept…
在shiroConfig配置类中增加如下代码: /** * 开启Shiro的注解(如@RequiresRoles,@RequiresPermissions),需借助SpringAOP扫描使用Shiro注解的类,并在必要时进行安全逻辑验证 * 配置以下两个bean(DefaultAdvisorAutoProxyCreator和AuthorizationAttributeSourceAdvisor)即可实现此功能 * @return */ @Bean public DefaultAdvisorAut…
项目开发中经常需要执行一些定时任务,比如需要在每天凌晨时候,分析一次前一天的日志信息.Spring为我们提供了异步执行任务调度的方式,提供TaskExecutor .TaskScheduler 接口. SpringBoot中使用两个注解:@EnableScheduling.@Scheduled来简单实现定时任务. @Scheduled参数详解 1. cron 该参数接收一个cron表达式,cron表达式是一个字符串,字符串以5或6个空格隔开,分开共6或7个域,每一个域代表一个含义. cron表达…
想要实现的功能: 我想在配置文件中设置一个开关,enabled,在开关为true的时候才实例化bean,进行相关业务逻辑的操作. 具体实现: 1:要实例化的bean 2. 配置类 代码: 想要实例化的bean:在这个类上不要加@Component注解 public class OrderMessageMonitor { public OrderMessageMonitor(ConfigContext configContext) { -- } public doSomeThing() { } }…
前言 思路与模拟业务 源码地址 https://gitee.com/houzheng1216/springboot 整体思路就是通过注解在策略类上指定约定好的type,项目启动之后将所有有注解的type获取到,根据type存储,然后在业务中根据type获取对应的策略即可 模拟订单业务,根据订单的type,需要不同的处理逻辑,比如,免费订单,半价订单等,下面是项目结构: 一 策略接口和实现 /** * 处理订单策略 */ public interface OrderStrategy { void…
1.首先在service层中的方法前添加@Transactional @Service public class UserService { @Autowired private UserMapper userMapper; public List<User> queryAll(){ System.out.println("热部署"); return userMapper.findAll(); } @Transactional public void deleteById(…
不说废话,直接进入正题: java自定义注解主要有3步:1.编写@interface接口2.编写@interface对应的处理方法进行处理3.调用处理方法 示例一:判断奇偶:比如有一个字段no要判断奇偶,是偶数就抛出异常,有以下实体类: @Data public class Book {    private   int no;    private String author;    private String bookName; } 要判断 no是奇数还是偶数,首先写注解接口IsOdd:…