当前位置: 首页 > news >正文

多媒体网站开发建设网页

多媒体网站开发,建设网页,石狮网站建设价格,WordPress太臃肿了背景介绍 现项目使用了两个数据源,分别为A、B,两个数据库的数据结构并不相同,数据库A是用来做查询一些基本信息的,数据库B是用来保留业务操作数据的。后端是在mapper层用DS注解来区分哪些地方用数据库A,而哪些地方用数…

背景介绍

现项目使用了两个数据源,分别为A、B,两个数据库的数据结构并不相同,数据库A是用来做查询一些基本信息的,数据库B是用来保留业务操作数据的。后端是在mapper层用@DS注解来区分哪些地方用数据库A,而哪些地方用数据库B的。

现在有个新需求,业务新增一个功能,用户可以在界面选择控制模式,有两个选项,分别是作战模式和训练模式,而业务需要展示对应模式的数据,也就是说需要新增一个数据库C,用来保留训练模式下的数据,原本的数据库B用来保留作战模式下的数据,但是不管在哪种模式下,数据库A是不需要切换的。

思路

在这个需求之前,原本是用@DS注解来做数据源的切换,然后我就想是否可以使用AOP来实现这个功能,写一个切面,以@DS注解作为切入点,在mybatis执行SQL前判断执行方法所属的对象上面是否有@DS("B")注解,如果有的话,则使用反射修改注解的值为@DS("C")。想着应该是可以的,最后几经波折代码也写出来了,结果却是出乎意外,完全没有效果。

最终解决

上面使用AOP最后并没有实现想要的功能,如果有大佬知道如何用AOP解决此需求,还望赐教。

我后面是使用mybatis拦截器解决的,在mybatis执行方法时,获取方法全路径,并获取SQL语句,然后判断方法全路径是否属于数据源B所属的包(数据源A和B的mapper层在不同的包下面),是的话则在SQL语句要执行的表前面加上数据库C的名字,如select * from table 修改为 select * from C.table。

亲测有效。但始终看着有点别扭,我想肯定还有其它方法,待我好好研究一翻再来更新吧。

http://www.mnyf.cn/news/38068.html

相关文章:

  • 青白江建设局网站百度电脑版网址
  • 广东珠海网站建设如何推广我的网站
  • 苏州网站建设公司书生商友有什么平台可以推广
  • 广告设计哪里可以学百度seo网站优化服务
  • 公司部门结构图如何提高搜索引擎优化
  • 最有性价比的网站建设百度快照入口官网
  • 小勐拉网站建设百度电话销售
  • 欧美做同志网站有哪些阿里指数官网最新版本
  • b2b2c电商平台网站属于网络营销特点的是
  • 青岛网站建设 百度百度搜索指数1000是什么
  • 天津网站设计成功柚米面点培训学校哪里有
  • 宁波小网站制作推广网站seo优化技能
  • 做咖啡网站收录优美图片topit
  • 东莞优化网站建设百度风云榜
  • 建立企业门户网站搜索引擎推广的基本方法
  • 少儿编程网站海南网站制作公司
  • 免费招聘人才网站友链提交入口
  • 网站如何做绿标seo就业
  • 虚拟主机怎么上传网站网络运营是什么专业
  • 网站建设中有关层的使用的步骤百度推广有效果吗
  • 网站验证码系统企业网站设计与实现论文
  • 镇江网站建设top天津网站优化
  • 可以找题目做的网站seo中介平台
  • WordPress添加内容评论可见seo查询爱站
  • 做房地产咨询网站怎么赢利百度广告大全
  • 网站建设时间影响因素百度搜索量怎么查
  • 一流的五屏网站建设专业做网站公司
  • 代做淘宝客网站永州网站seo
  • 福田网站建设哪家便宜广告最多的网站
  • 移动微网站建设二维码培训公司