一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專(zhuān)注于服務(wù)器技術(shù)及軟件下載分享
分類(lèi)導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語(yǔ)言|JavaScript|易語(yǔ)言|vb.net|

服務(wù)器之家 - 編程語(yǔ)言 - Java教程 - Servlet+MyBatis項(xiàng)目轉(zhuǎn)Spring Cloud微服務(wù),多數(shù)據(jù)源配置修改建議

Servlet+MyBatis項(xiàng)目轉(zhuǎn)Spring Cloud微服務(wù),多數(shù)據(jù)源配置修改建議

2021-06-27 15:26希爾伯特 Java教程

今天小編就為大家分享一篇關(guān)于Servlet+MyBatis項(xiàng)目轉(zhuǎn)Spring Cloud微服務(wù),多數(shù)據(jù)源配置修改建議,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧

一、項(xiàng)目需求

在開(kāi)發(fā)過(guò)程中,由于技術(shù)的不斷迭代,為了提高開(kāi)發(fā)效率,需要對(duì)原有項(xiàng)目的架構(gòu)做出相應(yīng)的調(diào)整。

二、存在的問(wèn)題

為了不影響項(xiàng)目進(jìn)度,架構(gòu)調(diào)整初期只是把項(xiàng)目做了簡(jiǎn)單的maven管理,引入springboot并未做spring cloud微服務(wù)處理。但隨著項(xiàng)目的進(jìn)一步開(kāi)發(fā),急需拆分現(xiàn)有業(yè)務(wù),做微服務(wù)處理。因此架構(gòu)上的短板日益突出。spring cloud config 無(wú)法完全應(yīng)用,每次項(xiàng)目部署需要修改大量配置文件。嚴(yán)重影響開(kāi)發(fā)效率,因此便萌生了對(duì)項(xiàng)目架構(gòu)再次調(diào)整的決心。

三、調(diào)整建議

為了兼容以前的代碼版本,盡量不修改現(xiàn)有的代碼結(jié)構(gòu),以免增加額外的工作量并且為了更好的應(yīng)用cloud config。

首先,創(chuàng)建jdbcconfigbean類(lèi),用以讀取配置文件,實(shí)例代碼入如下(僅供參考):

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import org.springframework.beans.factory.annotation.value;
import org.springframework.cloud.context.config.annotation.refreshscope;
import org.springframework.stereotype.component;
@refreshscope
@component("jdbcconfigbean")
public class jdbcconfigbean {
  @value("${jdbc.driver}")
  private string driver;
  @value("${db1.jdbc.url}")
  private string url;
  @value("${db1.jdbc.username}")
  private string username;
  @value("${db1.jdbc.password}")
  private string password;
  @value("${db2.jdbc.url}")
  private string db2_url;
  @value("${db2.jdbc.username}")
  private string db2_username;
  @value("${db2.jdbc.password}")
  private string db2_password;
  // 其他數(shù)據(jù)源
  // 其他配置
  // 相應(yīng)的getter setter 方法
}

其次,創(chuàng)建數(shù)據(jù)源,代碼示例如下(僅供參考):

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
/**
 * xml mabatis xml配置文件
 * @param xml
 * @return
 **/
 public static sqlsessionfactory create(string xml){
 jdbcconfigbean jdbcconfigbean = (jdbcconfigbean) springcontextutil.getbean("jdbcconfigbean");
 properties properties = new properties();
 properties.setproperty("jdbc.driver", jdbcconfigbean.getdriver());
 properties.setproperty("db1.jdbc.url", jdbcconfigbean.geturl());
 properties.setproperty("db1.jdbc.username", jdbcconfigbean.getusername());
 properties.setproperty("db1.jdbc.password", jdbcconfigbean.getpassword());
 properties.setproperty("db2.virtual.jdbc.url", jdbcconfigbean.getdb2_url());
 properties.setproperty("db2.virtual.jdbc.username", jdbcconfigbean.getdb2_username());
 properties.setproperty("db2.virtual.jdbc.password", jdbcconfigbean.getdb2_password());
 // 其他屬性
 try {
  reader reader = resources.getresourceasreader(xml);
  sqlsessionfactorybuilder sqlsessionfactorybuilder = new sqlsessionfactorybuilder();
  return sqlsessionfactorybuilder.build(reader, properties);
 } catch (ioexception e) {
  log.error("創(chuàng)建數(shù)據(jù)源失敗:" + e.getmessage());
 }
 return null;
 }

以上,便可以做多數(shù)據(jù)元的配置,并且在不改動(dòng)現(xiàn)有代碼結(jié)構(gòu)的條件下很好的集成spring cloud config和mybatis。

四、小結(jié)

寫(xiě)作目的不是為了解決具體的問(wèn)題,因?yàn)槊總€(gè)人遇到的項(xiàng)目都不相同,問(wèn)題也不會(huì)一樣,應(yīng)用場(chǎng)景也不盡相同。對(duì)于具體問(wèn)題可能有失參考意義。但是我們也應(yīng)該看到通用的部分,比如多數(shù)據(jù)源的配置,cloud config的應(yīng)用等等。

最后需要說(shuō)明的一點(diǎn)是不要拘泥于具體的實(shí)現(xiàn),而是要體會(huì)其中的邏輯,理解技術(shù)應(yīng)用的方式。具體實(shí)現(xiàn)并不重要,重要的是解決問(wèn)題的過(guò)程以及其中的思想,為什么要這樣做,為什么可以這樣做,這樣做的好處在哪里?真正理解技術(shù),這些問(wèn)題便不難回答。

小結(jié)難免有不當(dāng)之處,歡迎諸位指正!希望可以通過(guò)不斷的討論小結(jié)精進(jìn)技術(shù)。讓我們同技術(shù)死磕到底!

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)服務(wù)器之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接

原文鏈接:https://blog.csdn.net/weixin_35971547/article/details/85632346

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 色噜噜国产精品视频一区二区 | 99视频精品国在线视频艾草 | 摸咪网在线影院在线观看 | 免费在线观看小视频 | 欧美另类videos另类粗暴 | 女人爽到喷水的视频免费 | 99re在线视频观看 | 向日葵视频app下载18岁以下勿看 | 成人丁香乱小说 | xxx86日本人| 5g在线观看 | 国产精品合集久久久久青苹果 | 24adc年龄18岁欢迎大驾光临 | 91精品手机国产露脸 | 91影视在线看免费观看 | 视频免费视频观看网站 | 婷婷综合久久中文字幕 | 国产精品高清一区二区三区 | 四虎国产| 粗了大了 整进去好爽视频 刺激一区仑乱 | 91香蕉国产视频 | 腿交hd| 亚洲国产区男人本色在线观看欧美 | 啊啊啊好大好爽视频 | 爱情岛论坛自拍永久入口 | 1024在线视频精品免费 | xxxx在线视频| 暖暖视频免费观看视频中国.韩剧 | 国产99精品免费视频看6 | 91短视频版高清在线观看免费 | 国产a一级毛片爽爽影院 | 久久99热成人精品国产 | 好爽轻点太大了太深了 | 好看的亚洲视频 | 91精品国产免费久久 | 免费被黄网站在观看 | 精品久久日日躁夜夜躁AV | 久青草国产97香蕉在线视频 | 国产免费看黄的私人影院 | 高清免费毛片 | japan孕妇孕交freehd |