Network Security Internet Technology Development Database Servers Mobile Phone Android Software Apple Software Computer Software News IT Information

In addition to Weibo, there is also WeChat

Please pay attention

WeChat public account

Shulou

Plug-in principle of Mybatis

2025-03-30 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Database >

Share

Shulou(Shulou.com)06/01 Report--

Lu Chunli's work notes are not as good as bad notes.

Reproduced from: deep and simple Mybatis- plug-in principle

Mybatis uses the chain of responsibility model, through dynamic agents to organize multiple interceptors (plug-ins), through these interceptors can change the default behavior of Mybatis (such as SQL rewriting, etc.), because plug-ins will go deep into the core of Mybatis, it is best to understand its principles before writing their own plug-ins in order to write safe and efficient plug-ins.

Generation of Agent chain

Mybatis supports interception of Executor, StatementHandler, PameterHandler, and ResultSetHandler, which means that these four objects are proxied.

Let's take Executor as an example. When Mybatis creates an Executor object:

Org.apache.ibatis.session.SqlSessionFactory.openSession () org.apache.ibatis.session.defaults.DefaultSqlSessionFactory.openSession () org.apache.ibatis.session.defaults.DefaultSqlSessionFactory.openSessionFromDataSource (execType, level, false) {final Executor executor = configuration.newExecutor (tx, execType);}

Description: the org.apache.ibatis.builder.xml.XMLConfigBuilder class parses the configuration file of MyBatis, gets the configured Interceptor and calls configuration.addInterceptor (interceptorInstance), and configures it in the interceptor chain.

Org.apache.ibatis.session.Configuration

Package org.apache.ibatis.session;public class Configuration {protected Environment environment; protected String logPrefix; protected Class

Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.

Views: 0

*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.

Share To

Database

Wechat

© 2024 shulou.com SLNews company. All rights reserved.

12
Report