如何自定义注解实现功能
发表于|更新于
|浏览量:
1.创建自定义注解和创建一个接口相似,但是注解的 interface 关键字需要以 @ 符号开头。
2.注解方法不能带有参数;
3.注解方法返回值类型限定为:基本类型、String、Enums、Annotation 或者是这些类型的数组;
4.注解方法可以有默认值;
5.注解本身能够包含元注解,元注解被用来注解其它注解。
文章作者: 烦恼多一点
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 非鱼小站!
相关推荐

2022-06-04
Spring 的单例实现原理
Spring 对 Bean 实例的创建是采用单例注册表的方式进行实现的,而这个注册表的缓存是 ConcurrentHashMap 对象。

2022-06-03
Spring MVC 启动流程
在 web.xml 文件中给 Spring MVC 的 Servlet 配置了 load-on-startup,所以程序启动的时候会初始化 Spring MVC,在 HttpServletBean 中将配置的 contextConfigLocation 属性设置到 Servlet 中,然后在 FrameworkServlet 中创建了 WebApplicationContext,DispatcherServlet 根据 contextConfigLocation 配置的 classpath 下的 xml 文件初始化了 Spring MVC 总的组件。

2022-05-29
说说 Spring AOP
面向切面编程,在我们的应用中,经常需要做一些事情,但是这些事情与核心业务无关,比如,要记录所有 update 方法的执行时间时间,操作人等等信息,记录到日志, 通过 Spring 的 AOP 技术,就可以在不修改 update 的代码的情况下完成该需求。

2022-06-02
Spring MVC 运行流程
Spring MVC 将所有的请求都提交给 DispatcherServlet,它会委托应用系统的其他模块负责对请求进行真正的处理工作。 DispatcherServlet 查询一个或多个 HandlerMapping,找到处理请求的 Controller. DispatcherServlet 请求提交到目标 Controller Controller 进行业务逻辑处理后,会返回一个 ModelAndView Dispatcher 查询一个或多个 ViewResolver 视图解析器,找到 ModelAndView 对象指定的视图对象 视图对象负责渲染返回给客户端。

2022-06-01
Spring 事务底层原理
划分处理单元 IOC由于 Spring 解决的问题是对单个数据库进行局部事务处理的,具体的实现首相用 Spring 中的 IOC 划分了事务处理单元。并且将对事务的各种配置放到了 IOC 容器中(设置事务管理器,设置事务的传播特性及隔离机制)。 AOP 拦截需要进行事务处理的类Spring 事务处理模块是通过 AOP 功能来实现声明式事务处理的,具体操作(比如事务实行的配置和读取,事务对象的抽象),用 TransactionProxyFactoryBean 接口来使用 AOP 功能,生成 proxy 代理对象,通过 TransactionInterceptor 完成对代理方法的拦截,将事务处理的功能编织到拦截的方法中。读取 IOC 容器事务配置属性,转化为 Spring 事务处理需要的内部数据结构(TransactionAttributeSourceAdvisor),转化为 TransactionAttribute 表示的数据对象。 对事物处理实现(事务的生成、提交、回滚、挂起)Spring 委托给具体的事务处理器实现。实现了一个抽象和适配。适配的具体事务处理器:DataSour...

2022-06-05
Spring 框架中用到了哪些设计模式
代理模式:在 AOP 和 Remoting 中被用的比较多。 单例模式:在 Spring 配置文件中定义的 Bean 默认为单例模式。 模板方法:用来解决代码重复的问题。比如. RestTemplate, JmsTemplate, JpaTemplate。 前端控制器:Spring 提供了 DispatcherServlet 来对请求进行分发。 视图帮助(View Helper ):Spring 提供了一系列的 JSP 标签,高效宏来辅助将分散的代码整合在视图里。 依赖注入:贯穿于 BeanFactory / ApplicationContext 接口的核心理念。 工厂模式:BeanFactory 用来创建对象的实例。
评论
WalineDisqus
公告
This is my Blog







