content: package ai.llmchat.common.mybatis;
  
  import ai.llmchat.common.mybatis.handler.MybatisPlusMetaObjectHandler;
  import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
  import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
  import com.baomidou.mybatisplus.extension.plugins.inner.BlockAttackInnerInterceptor;
  import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
  import org.springframework.context.annotation.Bean;
  import org.springframework.context.annotation.Configuration;
  
  @Configuration
  public class CommonMybatisPlusConfiguration {
  
  	@Bean
  	@ConditionalOnMissingBean(MybatisPlusInterceptor.class)
  	public MybatisPlusInterceptor mybatisPlusInterceptor() {
  		MybatisPlusInterceptor mybatisPlusInterceptor = new MybatisPlusInterceptor();
  		// 针对 update 和 delete 语句防止全表更新与删除
  		mybatisPlusInterceptor.addInnerInterceptor(new BlockAttackInnerInterceptor());
  		return mybatisPlusInterceptor;
  	}
  
  	/**
  	 * 自动填充字段
  	 * @return
  	 */
  	@Bean
  	@ConditionalOnMissingBean(MetaObjectHandler.class)
  	public MetaObjectHandler metaObjectHandler() {
  		return new MybatisPlusMetaObjectHandler();
  	}
  
  }
  