項(xiàng)目訪問(wèn)入口
Neo4j
教程:Neo4j高性能圖數(shù)據(jù)庫(kù)從入門到實(shí)戰(zhàn)
Neo4j高性能圖數(shù)據(jù)庫(kù)從入門到實(shí)戰(zhàn)
- 教程博客:Neo4j
- 開(kāi)啟命令
醫(yī)療問(wèn)答系統(tǒng)
算法教程:醫(yī)學(xué)知識(shí)圖譜問(wèn)答系統(tǒng)
醫(yī)學(xué)知識(shí)圖譜問(wèn)答系統(tǒng)
項(xiàng)目示例:neo4j知識(shí)圖譜 Vue+flask 中藥中醫(yī)方劑大數(shù)據(jù)可視化系統(tǒng)
neo4j知識(shí)圖譜 Vue+flask 中藥中醫(yī)方劑大數(shù)據(jù)可視化系統(tǒng)
可視化技術(shù):ECharts
ECharts數(shù)據(jù)可視化項(xiàng)目、D3js:數(shù)據(jù)可視化入門D3.js
-
展示地址:數(shù)據(jù)可視化
-
子絕父相
-
立即執(zhí)行函數(shù)(function(){})();
-
ECharts官網(wǎng):Apache ECharts
隨屏幕自適應(yīng)變化
Echarts可做數(shù)據(jù)大屏
拐點(diǎn)
二選一:
-
數(shù)據(jù)可視化:基于D3.js以及Neo4j的 知識(shí)圖譜系統(tǒng)開(kāi)發(fā)記錄
-
數(shù)據(jù)可視化:Echarts+Vue3.0數(shù)據(jù)可視化項(xiàng)目構(gòu)建
flask教程:速成教程Flask web框架實(shí)戰(zhàn)
速成教程Flask web框架實(shí)戰(zhàn)
- flask教程零基礎(chǔ)玩轉(zhuǎn)Python_Flask
爬取網(wǎng)站:http://www.zhongyoo.com/name/
數(shù)據(jù)處理:pandas
提取關(guān)鍵字:textrank、tf-idf
前后端分離springboot+vue
全程干貨:程序員青戈
強(qiáng)推:1天搞定SpringBoot+Vue全棧開(kāi)發(fā)
宏觀速成教程:4小時(shí)學(xué)會(huì)Spring Boot+Vue前后端分離開(kāi)發(fā)
4小時(shí)學(xué)會(huì)Spring Boot+Vue前后端分離開(kāi)發(fā)
左側(cè)菜單點(diǎn)擊跳轉(zhuǎn):
一些小知識(shí)點(diǎn):直接跳轉(zhuǎn)用redirect、alert用來(lái)web彈出警告框、vue用axios請(qǐng)求來(lái)訪問(wèn)后端接口、跨域問(wèn)題、created()方法類似于onLaunch()、:rules=""綁定校驗(yàn)規(guī)則、this.$refs用來(lái)獲取dom元素或者組件
$router.push(‘’)適合在vue文件中跳轉(zhuǎn)路由:
this.$route.query是接收參數(shù)的、js語(yǔ)法:window.location.reload()是動(dòng)態(tài)刷新頁(yè)面
學(xué)習(xí)
uniapp云開(kāi)發(fā)
- 向前刪除是shift,向后刪除是pop,向前追加是unshift,向后追加是push
- 屬性和值一樣的情況下直接寫屬性就行
- “…”可以用來(lái)展開(kāi)對(duì)象,是展開(kāi)符
- v-model實(shí)現(xiàn)雙向綁定
- onReachBottom是觸底功能
- onPullDownRefresh是下拉刷新
- Icon圖標(biāo)鏈接
箭頭函數(shù)云對(duì)象:
JQL語(yǔ)法:
Schema中uni-id用戶體系配置
import導(dǎo)入的時(shí)候前面加個(gè)@
schema權(quán)限規(guī)則:
uni-id的logout退出登錄:
JQL的聯(lián)表查詢:
as起別名、orderBy【desc降序,asc升序】排序、limit限制條數(shù)、skip跳過(guò)指定條數(shù)、只查詢一條getOne:
unicloud-db前端組件的使用:
云端環(huán)境變量:
一些方法:【eg:loadMore、clear、reset、refresh】
uView的配置:
css中,&是父選擇器,空格代表后代選擇器,有name1 name2:last-child ,其中緊挨著:last-child的name2是用來(lái)對(duì)最后一個(gè)子元素名作限制的,也可以不寫直接用name1 :last-child ,這樣name2為空,代表不對(duì)元素名作限制,一般都是這樣的用法,直接選擇最后一個(gè)子元素,這樣比較直觀,也容易懂
block塊級(jí)元素特點(diǎn):獨(dú)占一行一個(gè)
inline內(nèi)聯(lián)元素特點(diǎn):和其他元素都在一行上
text-align: justify;//兩端對(duì)齊
text-overflow: -o-ellipsis-lastline; overflow: hidden;【用法見(jiàn):https://blog.csdn.net/Amnesiac666/article/details/124001166】 text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; line-clamp: 2; -webkit-box-orient: vertical;
align-items: center;//垂直居中
justify-content: space-around; //居中排列
吸頂效果:
position: fixed; //吸頂效果 top: var(--window-top); z-index: 10;
富文本的樣式
SelectorQuery實(shí)現(xiàn)富文本定制
數(shù)據(jù)進(jìn)行緩存setStorageSync提高性能
typeof()查看數(shù)據(jù)類型,getStorageSync()獲取緩存,setStorageSync()設(shè)置緩存
web端云數(shù)據(jù)庫(kù)
知識(shí)圖譜
KBQA(知識(shí)圖譜問(wèn)答)常用數(shù)據(jù)集
這是巨佬
【Neo4j】第 2 章:Cypher 查詢語(yǔ)言
人家處理好的數(shù)據(jù)如下:
{
"_id": {
"$oid": "5bb578b6831b973a137e3ee6"
},
"name": "肺泡蛋白質(zhì)沉積癥",
"desc": "肺泡蛋白質(zhì)沉積癥(簡(jiǎn)稱PAP),又稱Rosen-Castle-man-Liebow綜合征,是一種罕見(jiàn)疾病。該病以肺泡和細(xì)支氣管腔內(nèi)充滿PAS染色陽(yáng)性,來(lái)自肺的富磷脂蛋白質(zhì)物質(zhì)為其特征,好發(fā)于青中年,男性發(fā)病約3倍于女性。",
"category": ["疾病百科", "內(nèi)科", "呼吸內(nèi)科"],
"prevent": "1、避免感染分支桿菌病,卡氏肺囊腫肺炎,巨細(xì)胞病毒等。\n2、注意鍛煉身體,提高免疫力。",
"cause": "病因未明,推測(cè)與幾方面因素有關(guān):如大量粉塵吸入(鋁,二氧化硅等),機(jī)體免疫功能下降(尤其嬰幼兒),遺傳因素,酗酒,微生物感染等,而對(duì)于感染,有時(shí)很難確認(rèn)是原發(fā)致病因素還是繼發(fā)于肺泡蛋白沉著癥,例如巨細(xì)胞病毒,卡氏肺孢子蟲(chóng),組織胞漿菌感染等均發(fā)現(xiàn)有肺泡內(nèi)高蛋白沉著。\n雖然啟動(dòng)因素尚不明確,但基本上同意發(fā)病過(guò)程為脂質(zhì)代謝障礙所致,即由于機(jī)體內(nèi),外因素作用引起肺泡表面活性物質(zhì)的代謝異常,到目前為止,研究較多的有肺泡巨噬細(xì)胞活力,動(dòng)物實(shí)驗(yàn)證明巨噬細(xì)胞吞噬粉塵后其活力明顯下降,而病員灌洗液中的巨噬細(xì)胞內(nèi)顆粒可使正常細(xì)胞活力下降,經(jīng)支氣管肺泡灌洗治療后,其肺泡巨噬細(xì)胞活力可上升,而研究未發(fā)現(xiàn)Ⅱ型細(xì)胞生成蛋白增加,全身脂代謝也無(wú)異常,因此目前一般認(rèn)為本病與清除能力下降有關(guān)。",
"symptom": ["紫紺", "胸痛", "呼吸困難", "乏力", "毓卓"],
"yibao_status": "否",
"get_prob": "0.00002%",
"get_way": "無(wú)傳染性",
"acompany": ["多重肺部感染"],
"cure_department": ["內(nèi)科", "呼吸內(nèi)科"],
"cure_way": ["支氣管肺泡灌洗"],
"cure_lasttime": "約3個(gè)月",
"cured_prob": "約40%",
"cost_money": "根據(jù)不同醫(yī)院,收費(fèi)標(biāo)準(zhǔn)不一致,省市三甲醫(yī)院約( 8000——15000 元)",
"check": ["胸部CT檢查", "肺活檢", "支氣管鏡檢查"],
"recommand_drug": [],
"drug_detail": []
},
{
"_id": {
"$oid": "5bb578b6831b973a137e3ee7"
},
"name": "百日咳",
"desc": "百日咳(pertussis,whoopingcough)是由百日咳桿菌所致的急性呼吸道傳染病。其特征為陣發(fā)性痙攣性咳嗽,咳嗽末伴有特殊的雞鳴樣吸氣吼聲。病程較長(zhǎng),可達(dá)數(shù)周甚至3個(gè)月左右,故有百日咳之稱。多見(jiàn)于5歲以下的小兒,幼嬰患本病時(shí)易有窒息、肺炎,腦病等并發(fā)癥,病死率高。百日咳患者,陰性感染者及帶菌者為傳染源。潛伏期末到病后2-3周傳染性最強(qiáng)。百日咳經(jīng)呼吸道飛沫傳播。典型患者病程6-8周,臨床病程可分3期:1.卡他期,從發(fā)病到開(kāi)始出現(xiàn)咳嗽,一般1-2周。2,痙咳期,一般2-4周或更長(zhǎng),陣發(fā)性痙攣性咳嗽為本期特點(diǎn)。3,恢復(fù)期,一般1-2周,咳嗽發(fā)作的次數(shù)減少,程度減輕,不再出現(xiàn)陣發(fā)性痙咳。一般外周血白細(xì)胞計(jì)數(shù)明顯增高,分類以淋巴細(xì)胞為主。在診斷本病時(shí)要注意與支氣管異物及肺門淋巴結(jié)結(jié)核鑒別。近年來(lái)幼嬰及成人發(fā)病有增多趨勢(shì)。",
"category": ["疾病百科", "兒科", "小兒內(nèi)科"],
"prevent": "1、控制傳染源:在流行季節(jié),若有前驅(qū)癥狀應(yīng)及早抗生素治療。\n2、切斷傳播途徑:由于百日咳桿菌對(duì)外界抵抗力較弱,無(wú)需消毒處理,但應(yīng)保持室內(nèi)通風(fēng),衣物在陽(yáng)光下曝曬,對(duì)痰液及口鼻分泌物則應(yīng)進(jìn)行消毒處理。",
"cause": "(一)發(fā)病原因\n病原菌是鮑特菌屬(Bordetella)中的百日咳鮑特菌(B.pertussis),常稱百日咳桿菌,已知鮑特菌屬有四種桿菌,除百日咳鮑特菌外還有副百日咳鮑特菌(B.parapertussis),支氣管敗血鮑特菌(B.bronchiseptica)和鳥(niǎo)型鮑特菌(B.avium),鳥(niǎo)型鮑特菌一般不引起人類致病,僅引起鳥(niǎo)類感染,百日咳桿菌長(zhǎng)約1.0~1.5μm,寬約0.3~0.5μm,有莢膜,不能運(yùn)動(dòng),革蘭染色陰性,需氧,無(wú)芽孢,無(wú)鞭毛,用甲苯胺藍(lán)染色兩端著色較深,細(xì)菌培養(yǎng)需要大量(15%~25%)鮮血才能繁殖良好,故常以鮑-金(Border-Gengous)培養(yǎng)基(即血液,甘油,馬鈴薯)分離菌落,百日咳桿菌生長(zhǎng)緩慢,在35~37℃潮濕的環(huán)境中3~7天后,一種細(xì)小的,不透明的菌落生長(zhǎng),初次菌落隆起而光滑,為光滑(S)型,又稱I相細(xì)菌,形態(tài)高低一致,有莢膜和較強(qiáng)的毒力及抗原性,致病力強(qiáng),如將分離菌落在普通培養(yǎng)基中繼續(xù)培養(yǎng),菌落由光滑型變?yōu)榇植?R)型,稱Ⅳ相細(xì)菌,無(wú)莢膜,毒力及抗原性丟失,并失去致病力,Ⅱ相,Ⅲ相為中間過(guò)渡型,百日咳桿菌能產(chǎn)生許多毒性因子,已知有五種毒素:\n1、百日咳外毒素(PT):是存在百日咳桿菌細(xì)胞壁中一種蛋白質(zhì),過(guò)去稱作為白細(xì)胞或淋巴細(xì)胞增多促進(jìn)因子(leukocytosis or lymphocyte promoting factor,LPE),組胺致敏因子(histamin sensitizing factor,HSF),胰島素分泌活性蛋白(insulin activating protein,IAP),百日咳外毒素由五種非共價(jià)鏈亞單位(S1~S5)所組成,亞單位(S2~S5)為無(wú)毒性單位,能與宿主細(xì)胞膜結(jié)合,通過(guò)具有酶活力的亞單位S1介導(dǎo)毒性作用,S1能通過(guò)腺苷二磷酸(ADP)-核糖轉(zhuǎn)移酶的活力,催化部分ADP-核糖從煙酰胺腺嘌呤二核苷酸(NAD)中分離出來(lái),轉(zhuǎn)移至細(xì)胞膜抑制鳥(niǎo)苷三磷酸(CTP)結(jié)合即G蛋白合成,導(dǎo)致細(xì)胞變生,同時(shí)還能促使淋巴細(xì)胞增高,活化胰島細(xì)胞及增強(qiáng)免疫應(yīng)答。\n2、耐熱的內(nèi)毒素(endotoxin,ET),100℃60min只能部分破壞,180℃才能滅活,此毒素能引起機(jī)體發(fā)熱及痙咳。\n3、不耐熱毒素(HLT)這種毒素加熱55℃30min后能破壞其毒性作用,此毒素抗體對(duì)百日咳桿菌感染無(wú)保護(hù)作用。\n4、氣管細(xì)胞毒素(TCT):能損害宿主呼吸道纖毛上皮細(xì)胞,使之變性,壞死。\n5、腺苷環(huán)化酶毒素(ACT):存在百日咳桿菌細(xì)胞表面的一種酶,此酶進(jìn)入吞噬細(xì)胞后被調(diào)鈣蛋白所激活,催化cAMP的生成,干擾吞噬作用,并抑制中性粒細(xì)胞的趨化和吞噬細(xì)胞殺菌能力,使其能持續(xù)感染,ACT也是一種溶血素,能起溶血作用,百日咳的重要抗原是百日咳菌的兩種血凝活性抗原,一種為絲狀血凝素(filamentous hemagglutinin,F(xiàn)HA),因來(lái)自菌體表面菌毛故又稱菌毛抗原,F(xiàn)HA在百日咳桿菌黏附于呼吸道上皮細(xì)胞的過(guò)程中起決定作用,為致病的主要原因。實(shí)驗(yàn)發(fā)現(xiàn),F(xiàn)HA免疫小鼠能對(duì)抗百日咳桿菌致死性攻擊,因此FHA為保護(hù)性抗原,另一種凝集原(aggluginogens,AGG)為百日咳桿菌外膜及菌毛中的一種蛋白質(zhì)成分,主要含1,2,3三種血清型凝血因子,AGG-1具有種特異性;AGG-2,3具有型特異性,通過(guò)檢測(cè)凝集原的型別來(lái)了解當(dāng)?shù)亓餍星闆r,目前認(rèn)為這兩種血凝素抗原相應(yīng)抗體是保護(hù)性抗體,百日咳桿菌根據(jù)不耐熱凝集原抗原性不同分為七型凝集原,1型凝集原為所有百日咳桿菌均具備,7型凝集原為鮑特菌屬(包括副百日咳桿菌,支氣管敗血性桿菌)所共有,2~6型以不同的配合將百日咳桿菌分為不同血清型,測(cè)定血清型主要是研究流行時(shí)菌株的血清型和選擇特殊血清型菌株生產(chǎn)菌苗,此外,副百日咳桿菌與百日咳桿菌無(wú)交叉免疫,亦可引起流行,百日咳桿菌對(duì)外界理化因素抵抗力弱,55℃經(jīng)30min即被破壞,干燥數(shù)小時(shí)即可殺滅,對(duì)一般消毒劑敏感,對(duì)紫外線抵抗力弱,但在0~10℃存活較長(zhǎng)。\n(二)發(fā)病機(jī)制\n1、發(fā)病機(jī)制:百日咳發(fā)病機(jī)制不甚清楚,很可能是百日咳毒素對(duì)機(jī)體綜合作用的結(jié)果,當(dāng)細(xì)菌隨空氣飛沫浸入易感者的呼吸道后,細(xì)菌的絲狀血凝素黏附于咽喉至細(xì)支氣管黏膜的纖毛上皮細(xì)胞表面;繼之,細(xì)菌在局部繁殖并產(chǎn)生多種毒素如百日咳外毒素,腺苷環(huán)化酶等引起上皮細(xì)胞纖毛麻痹和細(xì)胞變性,使其蛋白合成降低,上皮細(xì)胞壞死脫落,以及全身反應(yīng),由于上皮細(xì)胞的病變發(fā)生和纖毛麻痹使小支氣管中黏液及壞死上皮堆聚潴留,分泌物排出受阻,不斷刺激呼吸道的周圍神經(jīng),傳入大腦皮質(zhì)及延髓咳嗽中樞,反射性引起痙攣性咳嗽,由于長(zhǎng)期刺激使咳嗽中樞形成興奮灶,以致非特異性刺激,如進(jìn)食,咽部檢查,冷風(fēng),煙霧以及注射疼痛等,均可引起反射性的痙咳,恢復(fù)期間亦可因哭泣及其他感染,誘發(fā)百日咳樣痙咳,近來(lái)研究表明百日咳發(fā)生機(jī)制與百日咳桿菌毒素類物質(zhì)損害宿主細(xì)胞免疫功能有關(guān),CD4+T細(xì)胞和Th1細(xì)胞分泌的細(xì)胞因子所介導(dǎo)的免疫反應(yīng),在百日咳桿菌感染中起重要作用。\n2、病理解剖:百日咳桿菌侵犯鼻咽,喉,氣管,支氣管黏膜,可見(jiàn)黏膜充血,上皮細(xì)胞的基底部有多核白細(xì)胞,單核細(xì)胞浸潤(rùn)及部分細(xì)胞壞死。支氣管及肺泡周圍間質(zhì)除炎癥浸潤(rùn)外,可見(jiàn)上皮細(xì)胞胞質(zhì)空泡形成,甚至核膜破裂溶解,壞死,脫落,但極少波及肺泡。若分泌物阻塞可引起肺不張,支氣管擴(kuò)張,有繼發(fā)感染者,易發(fā)生支氣管肺炎,有時(shí)可有間質(zhì)性肺炎;若發(fā)生百日咳腦病,鏡檢或肉眼可見(jiàn)腦組織充血水腫,點(diǎn)狀出血,皮質(zhì)萎縮,神經(jīng)細(xì)胞變性,腦水腫等改變,此時(shí)常可見(jiàn)到肝臟脂肪浸潤(rùn)等變化。",
"symptom": ["吸氣時(shí)有蟬鳴音", "痙攣性咳嗽", "胸悶", "肺陰虛", "抽搐", "低熱", "閆鵬輝", "驚厥"],
"yibao_status": "否",
"get_prob": "0.5%",
"easy_get": "多見(jiàn)于小兒",
"get_way": "呼吸道傳播",
"acompany": ["肺不張"],
"cure_department": ["兒科", "小兒內(nèi)科"],
"cure_way": ["藥物治療", "支持性治療"],
"cure_lasttime": "1-2個(gè)月",
"cured_prob": "98%",
"common_drug": ["穿心蓮內(nèi)酯片", "百咳靜糖漿"],
"cost_money": "根據(jù)不同醫(yī)院,收費(fèi)標(biāo)準(zhǔn)不一致,市三甲醫(yī)院約(1000-4000元)",
"check": ["耳、鼻、咽拭子細(xì)菌培養(yǎng)", "周圍血白細(xì)胞計(jì)數(shù)及分類檢驗(yàn)", "血常規(guī)", "酶聯(lián)免疫吸附試驗(yàn)", "白細(xì)胞分類計(jì)數(shù)"],
"do_eat": ["南瓜子仁", "圓白菜", "櫻桃番茄", "小白菜"],
"not_eat": ["螃蟹", "海蟹", "海蝦", "海螺"],
"recommand_eat": ["清蒸雞蛋羹", "百合雙耳雞蛋羹", "排骨湯", "羅漢果雪耳雞湯", "小黃瓜涼拌面", "黃瓜三絲湯", "黃瓜拌兔絲", "黃瓜拌皮絲"],
"recommand_drug": ["琥乙紅霉素片", "琥乙紅霉素顆粒", "百咳靜糖漿", "穿心蓮內(nèi)酯片", "紅霉素腸溶片", "環(huán)酯紅霉素片"],
"drug_detail": ["惠普森穿心蓮內(nèi)酯片(穿心蓮內(nèi)酯片)", "北京同仁堂百咳靜糖漿(百咳靜糖漿)", "邦琪藥業(yè)百咳靜糖漿(百咳靜糖漿)", "東新藥業(yè)百咳靜糖漿(百咳靜糖漿)", "達(dá)發(fā)新(環(huán)酯紅霉素片)", "康美藥業(yè)紅霉素腸溶片(紅霉素腸溶片)", "旺龍藥業(yè)琥乙紅霉素顆粒(琥乙紅霉素顆粒)", "白云山醫(yī)藥琥乙紅霉素片(琥乙紅霉素片)", "國(guó)瑞琥乙紅霉素片(琥乙紅霉素片)", "利君制藥紅霉素腸溶片(紅霉素腸溶片)", "東信藥業(yè)琥乙紅霉素顆粒(琥乙紅霉素顆粒)", "石藥歐意紅霉素腸溶片(紅霉素腸溶片)", "平光制藥紅霉素腸溶片(紅霉素腸溶片)", "北京曙光藥業(yè)紅霉素腸溶片(紅霉素腸溶片)", "迪瑞制藥琥乙紅霉素顆粒(琥乙紅霉素顆粒)", "永定制藥百咳靜糖漿(百咳靜糖漿)", "東信藥業(yè)琥乙紅霉素片(琥乙紅霉素片)", "利君制藥琥乙紅霉素片(琥乙紅霉素片)", "北京中新制藥琥乙紅霉素片(琥乙紅霉素片)", "華南藥業(yè)紅霉素腸溶片(紅霉素腸溶片)", "佐今明百咳靜糖漿(百咳靜糖漿)", "恒益藥業(yè)琥乙紅霉素顆粒(琥乙紅霉素顆粒)", "利君沙(琥乙紅霉素顆粒)"]
}
項(xiàng)目整體進(jìn)度
整個(gè)項(xiàng)目的階段應(yīng)該包括:開(kāi)發(fā)、測(cè)試、生產(chǎn)
用戶移動(dòng)端
新知識(shí)
需要了解ES6的語(yǔ)法,譬如箭頭函數(shù)、.map
等
.map() .filter() .reduce() 的用法【reduce是求總和、filter是過(guò)濾篩選、map是提取出想得到的屬性】
vue.config.js的完整配置
vue + ivew 校驗(yàn)form表單倆次密碼輸入是否一致
富文本和markdown的區(qū)別
富文本編輯器,以Word為例,輸入文字后,選擇不同的功能(通常是通過(guò)點(diǎn)擊某個(gè)圖標(biāo)),例如加粗或者調(diào)整字體大小,處理后的效果直接顯示在屏幕上,與打印出來(lái)的效果相同。所以富文本編輯器又叫“所見(jiàn)即所得”編輯器。
Markdown編輯器,輸入文字后,通常是在文字的前后同時(shí)輸入一些標(biāo)記字符,輸入后在編輯窗口也不會(huì)即時(shí)顯示出效果,需要手動(dòng)切換預(yù)覽模式查看處理效果。因?yàn)檫@些標(biāo)記字符的存在,所以Markdown本身是一種標(biāo)記語(yǔ)言。 Markdown的核心就在于通過(guò)輸入字符同時(shí)進(jìn)行排版和內(nèi)容輸入
一些平臺(tái)
-
開(kāi)始 | Vuex
-
個(gè)人中心頁(yè)面實(shí)現(xiàn)
-
iniCloud控制臺(tái)
-
高德地圖API
用戶中心頁(yè)面
flex-wrap
自動(dòng)換行 slice(0,9)
截取 splice()
刪除指定元素
uniCloud云開(kāi)發(fā)進(jìn)階篇多用戶社區(qū)博客
個(gè)人中心頁(yè)面:個(gè)人中心頁(yè)面實(shí)現(xiàn)
聊天頁(yè)面:微信聊天小程序—聊天頁(yè)面
VueX
狀態(tài)管理工具
瀏覽記錄功能教程:瀏覽記錄
瀏覽記錄
-
/<img/gi,'<img style="max-width:100%"'
正則表達(dá)式直接替換html中的img,來(lái)達(dá)到富文本中圖片處理的效果,gi表示全局匹配,//之間是正則表達(dá)式的內(nèi)容
搜索功能教程:搜索功能
搜索功能
觸底加載更多+分頁(yè)
onReachBottom() {
console.log("到底部了");
this.nowPage++;
this.stateIndex = this.nowPage * this.pageSize;
this.getData(this.urlback);
},
網(wǎng)絡(luò)緩存
Uniapp數(shù)據(jù)緩存的增刪改查
setStorage 與setStorageSync的區(qū)別
聊天頁(yè)面
uni-app實(shí)現(xiàn)聊天頁(yè)面功能(小程序)——布局篇_
uni-app實(shí)現(xiàn)聊天頁(yè)面功能——功能篇(上)
問(wèn)題
瀏覽器顯示你的連接不是專用連接怎么解決
阿里云收費(fèi)問(wèn)題
uni-App 去掉頂部導(dǎo)航欄
切記運(yùn)行的目錄
E:\3Study\2項(xiàng)目\2023大學(xué)生創(chuàng)新創(chuàng)業(yè)大賽\醫(yī)藥問(wèn)答\web\web前端\medical>
如何在word里面優(yōu)雅地插入代碼
需要用到的插件
- uni-id-pages
- uView2
- uni-dateformat 日期格式化
如果一個(gè)文件夾下沒(méi)有_init_.py文件,不會(huì)被當(dāng)做一個(gè)module
正規(guī)的json是雙引號(hào),flask如何返回一個(gè)json數(shù)據(jù) Flask——返回json數(shù)據(jù)的方法
flask解決跨域問(wèn)題解決Flask跨域問(wèn)題的幾種方式
解決uniapp中的異步同步問(wèn)題uni-app中使用異步請(qǐng)求
DOMException: Failed to execute open' on ' XML HttpRequest' :
在edge中報(bào)錯(cuò),在小程序和google中正常
問(wèn)答聊天核心實(shí)現(xiàn),
WTcrazy
的精華
async getAnswer(str) {
console.log('查詢答案中!');
return new Promise((resolve, reject) => {
uni.request({
url: str,
success: res => {
console.log(res);
resolve(res.data.answer);
}
})
})
},
//發(fā)送消息
async handleSend() {
console.log("查詢次數(shù):" + this.questionCnt);
console.log('chatmsg==' + this.chatMsg);
//如果消息不為空或者不為空白字符(包括換行符、空格等)
// if (!this.chatMsg || /^\s+$/.test(this.chatMsg)) {
if (this.chatMsg != '') {
let URL = "http://127.0.0.1:5000/query?content=" + this.chatMsg; //本地機(jī)運(yùn)行
console.log('url:' + URL);
let str = (this.questionCnt == 0 ? "第一次查詢時(shí)間稍長(zhǎng) 請(qǐng)耐心等待..." : "查詢中 請(qǐng)稍后...")
uni.showLoading({
title: str
})
// console.log(str);
await this.getAnswer(URL).then((res) => {
this.ansMsg = res
})
let obj = {
botContent: this.ansMsg,
recordId: 0,
titleId: 0,
userContent: this.chatMsg,
userId: 0
}
this.msgList.push(obj);
uni.hideLoading(); //
console.log('下面是obj');
console.log(obj);
this.chatMsg = '';
this.scrollToBottom()
console.log('下面是msgList');
console.log(this.msgList);
} else {
uni.showToast({
title: "請(qǐng)輸入問(wèn)題",
duration: 1500,
icon: "error"
})
}
this.questionCnt = this.questionCnt + 1;
}
}
學(xué)會(huì)看報(bào)錯(cuò),看懂debug真的很過(guò)癮
json.dumps是字典轉(zhuǎn)json、json.loads是字符串轉(zhuǎn)字典
Flask設(shè)置返回json格式數(shù)據(jù)
核心接口,較為快速的回答問(wèn)題
@app.route('/query', methods=["GET", "POST"])
def Query():
if request.method == 'GET':
ques = request.args.get('content', '')
ans = handler.chat_main(ques)
dic = {"question": ques, "answer": ans}
tmpStr = str(dic).replace("\\h", "")
tmpStr = tmpStr.replace("\\xa0", "")#主要是為了解決json中轉(zhuǎn)義字符問(wèn)題
json_str = tmpStr.replace("'", "\"")
return Response(json.dumps(json.loads(json_str)), mimetype='application/json')
# return json_str # 單返回這個(gè)好像也可以
elif request.method == 'POST':
return 'post'
對(duì)應(yīng)服務(wù)器截圖:
json格式在線JSON校驗(yàn)格式化工具
下面這個(gè)json格式有誤,主要在\xa0上
{
"question": "心臟病",
"answer": "病、心肌臟病。\n\x一、先天性心臟病\n1.可能由于母親在懷孕早期的疾病或服用的藥物有關(guān)。\n2.與遺傳有關(guān)。\n二、后天性心臟病\n1.冠狀動(dòng)脈心臟病:抽"
}
uniapp小程序調(diào)試超額的話可以嘗試分包
[微信小程序開(kāi)發(fā)者工具] [error] Error: Fail to open IDE 問(wèn)題解決方法
uni-app微信小程序主包大小哪里看圖解
subPackages分包加載配置
ECharts 在線構(gòu)建
小程序周期函數(shù)執(zhí)行順序:onLaunch–onLoad–onShow–onReady–onHide.
uniCloud入門-增刪改查、條件查詢
npm報(bào)錯(cuò)個(gè)人遇坑全面整理npm install 報(bào)錯(cuò)沒(méi)有匹配版本:npm ERR! code ETARGET npm ERR! notarget No matching version found for
解決npm install版本不匹配問(wèn)題: npm ERR! code ETARGET npm ERR! notarget No matching version found for_is
報(bào)錯(cuò)解決方案:Module build failed: Error: Vue packages version mismatch
解決報(bào)錯(cuò):Uncaught (in promise) NavigationDuplicated: Avoided redundant navigation to current location:
uview組件u-button設(shè)置fontsize不起作用的問(wèn)題
uniapp 背景圖片全屏顯示在整個(gè)頁(yè)面
引用iconfont彩色圖標(biāo)變黑白問(wèn)題如何UNI-APP中使用iconfont彩色圖標(biāo),這時(shí)候前面要加t-icon
對(duì)應(yīng)指令:
npm install -g iconfont-tools
iconfont-tools
//然后一路enter
密碼框小眼睛問(wèn)題
uniapp可選鏈和空值合并操作問(wèn)題
console.log(obj.arr?.abc??[])
uniapp小程序:追加數(shù)組中的對(duì)象屬性,屬性數(shù)據(jù)已經(jīng)添加,視圖不會(huì)改變
(uni-app)踩坑,數(shù)據(jù)改變,視圖不變_unipopup 彈出層視圖不更新
uni-app中使用 async + await 實(shí)現(xiàn)異步請(qǐng)求同步化
微信小程序的膠囊按鈕問(wèn)題
up主講的很清晰2.18.滑動(dòng)滾動(dòng)條動(dòng)態(tài)改變自定義子組件的信息
js ( => ) 箭頭函數(shù)
數(shù)據(jù)轉(zhuǎn)換前后
{"data":{"id":"28ef42f0012a4799954e944c85bf6ac0","time":1689089721097,"cost":46,"uid":"3ab67008e3c64226a02dac1c798b5405","addressid":"1659827abc24435b895c5385971a02c5","goodnum":3,"way":"alipay","content":"{\"cheap\":6,\"carList\":[{\"id\":\"0a81645066cb4eb391c917742db222c6\",\"name\":\"異維A酸紅霉素凝膠\",\"num\":1,\"price\":8,\"preprice\":10,\"picurls\":\"http://172.25.71.194:8081/Files/2023/07/10/da51b039dc264aa4bc668ccf217c09a2.crdownload\"},{\"id\":\"cdc5b14cc7024c5fae23277661bd2346\",\"name\":\"磺胺醋酰鈉滴眼液\",\"num\":1,\"price\":18,\"preprice\":20,\"picurls\":\"http://172.25.71.194:8081/Files/2023/07/10/fffab9700fbe492a949c7c42a5376530.jpg\"},{\"id\":\"3a354e9b6688448cbaebc8ede67be5fd\",\"name\":\"馬來(lái)噻嗎洛爾滴眼液\",\"num\":1,\"price\":20,\"preprice\":22,\"picurls\":\"http://172.25.71.194:8081/Files/2023/07/10/243827e6897d426faae29b36bcf3c3d6.webp\"}]}","address":{"id":"1659827abc24435b895c5385971a02c5","content":"中國(guó)石油大學(xué)","hostname":"郭邦豪","hostphone":"15467841256","uid":"3ab67008e3c64226a02dac1c798b5405","isDefault":false},"listProduct":null},"statusCode":200,"header":{"content-type":"application/json"},"errMsg":"request:ok"}
{
"data":{
"id":"28ef42f0012a4799954e944c85bf6ac0",
"time":1689089721097,
"cost":46,
"uid":"3ab67008e3c64226a02dac1c798b5405",
"addressid":"1659827abc24435b895c5385971a02c5",
"goodnum":3,
"way":"alipay",
"content":"{\"cheap\":6,\"carList\":[{\"id\":\"0a81645066cb4eb391c917742db222c6\",\"name\":\"異維A酸紅霉素凝膠\",\"num\":1,\"price\":8,\"preprice\":10,\"picurls\":\"http://172.25.71.194:8081/Files/2023/07/10/da51b039dc264aa4bc668ccf217c09a2.crdownload\"},{\"id\":\"cdc5b14cc7024c5fae23277661bd2346\",\"name\":\"磺胺醋酰鈉滴眼液\",\"num\":1,\"price\":18,\"preprice\":20,\"picurls\":\"http://172.25.71.194:8081/Files/2023/07/10/fffab9700fbe492a949c7c42a5376530.jpg\"},{\"id\":\"3a354e9b6688448cbaebc8ede67be5fd\",\"name\":\"馬來(lái)噻嗎洛爾滴眼液\",\"num\":1,\"price\":20,\"preprice\":22,\"picurls\":\"http://172.25.71.194:8081/Files/2023/07/10/243827e6897d426faae29b36bcf3c3d6.webp\"}]}",
"address":{
"id":"1659827abc24435b895c5385971a02c5",
"content":"中國(guó)石油大學(xué)",
"hostname":"郭邦豪",
"hostphone":"15467841256",
"uid":"3ab67008e3c64226a02dac1c798b5405",
"isDefault":false
},
"listProduct":null
},
"statusCode":200,
"header":{
"content-type":"application/json"
},
"errMsg":"request:ok"
}
uniapp 報(bào)錯(cuò)之 uview 中 u-icon 點(diǎn)擊 阻止冒泡
uniapp解析markdown直接用相應(yīng)插件,但原理應(yīng)該是先把markdown轉(zhuǎn)變成html語(yǔ)言,然后用解析html
CSS坑
flex:1 到底代表什么
對(duì)于height:100%的理解
詳解 CSS 屬性 - :before && :after_after屬性介紹
每個(gè)頁(yè)面的CSS拼寫盡量不一樣,否則有bug
淺談display:inline-block_display: inline-block;
管理員前端Web
Echarts畫知識(shí)圖譜官網(wǎng)
醫(yī)療后臺(tái)前端界面規(guī)劃
vue項(xiàng)目中修改頁(yè)面title的方法、vue中修改瀏覽器圖標(biāo)和名字的幾種方式
自定義配置vue啟動(dòng)
vue怎么獲取緩存
后端Server
從0開(kāi)始帶你手?jǐn)]一套SpringBoot+Vue后臺(tái)管理系統(tǒng)
新知識(shí)
初始準(zhǔn)備
后端接口檢測(cè)可以用
Swagger
,推薦用postman
pom配置;在
D:\Personal-Download\Java\maven-repository\org\springframework\boot\spring-boot
找本地springboot的倉(cāng)庫(kù)版本【別輕易改pom】
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.5.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.wtcrazy</groupId>
<artifactId>springboot</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>springboot</name>
<description>醫(yī)療app后端</description>
<properties>
<java.version>11</java.version>
</properties>
<dependencies>
<!-- web場(chǎng)景啟動(dòng)器 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<!--列表、字符串、json轉(zhuǎn)化-->
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<classifier>jdk15</classifier>
<version>2.4</version>
</dependency>
<!-- 啟動(dòng)熱部署-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
<!--Mybatis-plus-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.1</version>
</dependency>
<!--MybatisPlus代碼生成器-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.5.1</version>
</dependency>
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity</artifactId>
<version>1.7</version>
</dependency>
<!--郵箱發(fā)送 的場(chǎng)景啟動(dòng)器-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
<!-- 郵件 注意包補(bǔ)全 得有javax.mail-1.5.6.jar這個(gè)包-->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-email</artifactId>
<version>1.5</version>
</dependency>
<!--jdbc-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.3.1</version>
</dependency>
<!--文件操作-->
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.1.0</version>
</dependency>
<!--引入lombok-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!--集成Swagger-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.7.0</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.7.0</version>
</dependency>
</dependencies>
<build>
<!--引入本地資源-->
<resources>
<!--加載lib文件,特殊情況下會(huì)有l(wèi)ib,但大部分都靠依賴下載了-->
<resource>
<directory>lib</directory>
<targetPath>BOOT-INF/lib/</targetPath>
<includes>
<include>**/*.jar</include>
</includes>
</resource>
<!--打jar包-->
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
<include>**/*.yml</include>
<include>**/*.txt</include>
</includes>
</resource>
<!--將properties和xml文件編譯-->
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
<include>**/*.yml</include>
<include>**/*.txt</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skipTests>true</skipTests>
</configuration>
</plugin>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
banner圖
___ __ _________ ________ ________ ________ ________ ___ ___ .::::.
|\ \ |\ \|\___ ___\\ ____\|\ __ \|\ __ \|\_____ \ |\ \ / /| .::::::::.
\ \ \ \ \ \|___ \ \_\ \ \___|\ \ \|\ \ \ \|\ \\|___/ /| \ \ \/ / / :::::::::::
\ \ \ __\ \ \ \ \ \ \ \ \ \ \ _ _\ \ __ \ / / / \ \ / / ':::::::::::..
\ \ \|\__\_\ \ \ \ \ \ \ \____\ \ \\ \\ \ \ \ \ / /_/__ \/ / / :::::::::::::::'
\ \____________\ \ \__\ \ \_______\ \__\\ _\\ \__\ \__\\________\__/ / / ':::::::::::.
\|____________| \|__| \|_______|\|__|\|__|\|__|\|__|\|_______|\___/ / .::::::::::::::'
\|___|/ .:::::::::::...
::::::::::::::''
.:::. '::::::::''::::
.::::::::. ':::::' '::::
.::::':::::::. ::::: '::::.
.:::::' ':::::::::. ::::: ':::.
.:::::' ':::::::::.::::: '::.
.::::'' ':::::::::::::: '::.
.::'' ':::::::::::: :::...
..:::: ':::::::::' .:' ''''
..''''':' ':::::.'
alt+insert可以方便代碼編寫
Postman測(cè)試數(shù)據(jù)
{
"username":"WTcrazy",
"password":"123",
"phone":"45648964",
"mail":"48746846@qq.com",
"id":"45645648654456"
}
postman里面Params和Body可以同時(shí)發(fā)揮作用
集成Swagger
訪問(wèn)地址:http://localhost:8081/swagger-ui.html
/**
* 跨域配置后swagger2可能不能訪問(wèn),需要增加如下配置
* @param registry
* 對(duì)靜態(tài)資源的配置
*/
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("swagger-ui.html")
.addResourceLocations("classpath:/META-INF/resources/");
registry.addResourceHandler("doc.html")
.addResourceLocations("classpath:/META-INF/resources/");
registry.addResourceHandler("/webjars/**")
.addResourceLocations("classpath:/META-INF/resources/webjars/");
}
攔截器
@Configuration//別忘記加注解
public class WebConfig implements WebMvcConfigurer {
@Override
public void addInterceptors(InterceptorRegistry registry) {//攔截器
registry.addInterceptor(new LoginInterceptor()).addPathPatterns("/user/login");
}
}
攔截器攔截token
結(jié)合前端
uniapp中H5環(huán)境而導(dǎo)致自定義請(qǐng)求頭字段失效
uni-app設(shè)置請(qǐng)求頭無(wú)效
后端接收不到前端傳入的header參數(shù)信息
JWT
頭部、載荷、簽名
創(chuàng)建JWT
驗(yàn)證JWT
解析JWT
原理圖
request用來(lái)解析請(qǐng)求頭,前端可以把token放在請(qǐng)求頭里讓后端解析,也可以直接放表單里面攜帶
后端token可以放到redis里面【springboot整合redis】
前端token一般放入cookie或者請(qǐng)求頭Authorization
Redis
一般聯(lián)合JWT,將生成的token存儲(chǔ)到redis中,因?yàn)閞edis查詢速度塊,效率高
Docker
在部署中需要用到的容器
共享本機(jī)數(shù)據(jù)庫(kù)【安全性重要!】
讓別人連接自己的mysql數(shù)據(jù)庫(kù),共享mysql數(shù)據(jù)庫(kù)
郵箱驗(yàn)證
Mybatis多表聯(lián)查、分頁(yè)查詢
association用于一對(duì)一或者多對(duì)一
按照查詢嵌套處理
按照結(jié)果嵌套處理
collection用于一對(duì)多處理
按結(jié)果嵌套查詢
按照查詢嵌套處理
分頁(yè)
Mybaits中collection的用法詳解
文件上傳
在uni-app中 使用
uni.request()
是無(wú)法發(fā)送文件的 因?yàn)?request data參數(shù)無(wú)法接受Fromdata格式數(shù)據(jù)
那么只能曲線救國(guó)通過(guò)uni.uploadFile()
上傳文件
robotframework調(diào)用上傳文件接口報(bào)錯(cuò)“the request was rejected because no multipart boundary was found”
配置資源映射步驟: SpringBoot上傳圖片到指定位置,并返回URL
SpringBoot路徑映射配置
JSON與字符串轉(zhuǎn)化
新增:Spring上傳文件路徑配置_
let param_json = JSON.stringify(this.$data)//轉(zhuǎn)為字符串
let bookkeeping_data = JSON.parse(bookkeeping_data_string)//轉(zhuǎn)換為JSON
uniapp的前端傳來(lái)的數(shù)據(jù)一定要和Java的entity實(shí)體類里面的字段類型要一一對(duì)應(yīng)
數(shù)據(jù)交互:Java中常用的幾種JSON格式的轉(zhuǎn)換
request.getSchema(),request.getServerName(),request.getServerPort(),request.getContextPath()的含義及使用
緩存問(wèn)題
權(quán)限問(wèn)題
跨域問(wèn)題
代碼配置CorsConfig
package com.wtcrazy.config;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
@Configuration
public class CorsConfig implements WebMvcConfigurer {
@Override
public void addCorsMappings(CorsRegistry registry) {
// 一小時(shí)內(nèi)不需要再預(yù)檢
registry.addMapping("/**")
.allowedOrigins("*")
.allowCredentials(true)
.allowedHeaders(CorsConfiguration.ALL)
.allowedMethods(CorsConfiguration.ALL)
.maxAge(3600);
}
}
發(fā)行
局域網(wǎng)訪問(wèn):
//修改yml配置文件即可
server:
IP: 172.25.71.194
port: 8081
address: 0.0.0.0 #局域網(wǎng)訪問(wèn)
問(wèn)題
java: 無(wú)法訪問(wèn)org.springframework.web.bind.annotation.RequestMapping.
SpringBoot-03-修改Banner圖
Whitelabel Error Page This application has no explicit mapping for /error, so you are seeing this as a fallback. No message available 解決方法
SpringBoot 開(kāi)啟熱部署
pom依賴報(bào)錯(cuò)com.mysql:mysql-connector-j
SpringBoot項(xiàng)目報(bào)錯(cuò)解決:“Error starting ApplicationContext. To display the conditions report re-run …”_
SpringBoot 中 application.yml 文件不生效
在資源過(guò)濾的時(shí)候一定要注意啊,.txt/.yml都是我們需要過(guò)濾的對(duì)象
Restful風(fēng)格
MyBatis xml一次執(zhí)行多條sql
http響應(yīng)中狀態(tài)碼400和500的區(qū)別:
1)400-參數(shù)與控制器層所需要的參數(shù)不符合,并沒(méi)有進(jìn)入后臺(tái)服務(wù)器(控制器)里。
2)500-傳入的參數(shù)在業(yè)務(wù)處理中出現(xiàn)了異常,進(jìn)入了后臺(tái)服務(wù)器(控制器)里。
部署與運(yùn)維
部署在Linux上,要熟悉常用命令行,以下部署基于CentOS7完成
上傳Gitee
上傳gitee:Git 開(kāi)發(fā)必備 .gitignore 詳解
如何將項(xiàng)目上傳到Gitee上_項(xiàng)目上傳gitee
uni-app本地訪問(wèn)接口跨域
局域網(wǎng)訪問(wèn):Vue項(xiàng)目配置在局域網(wǎng)下訪問(wèn)方式
項(xiàng)目部署:20.SpringBoot+Vue項(xiàng)目云端部署
項(xiàng)目部署準(zhǔn)備
買的相當(dāng)于一臺(tái)裸機(jī),這個(gè)項(xiàng)目所需要的配置都要自己重新安裝部署
清除控制臺(tái)的打印信息:https://www.cnblogs.com/qianxiaox/p/13704870.html
一些文件的說(shuō)明:vue中的process.env.NODE_ENV和環(huán)境變量
新人免費(fèi)試用阿里云仨月
阿里云控制中心:云服務(wù)器管理控制臺(tái)
進(jìn)入安全組開(kāi)放所需端口
使用Xshell連接服務(wù)器
后端部署
【要下載適合于Linux版本的安裝包】
安裝與配置MySQL
【建議先看完別跟著操作,因?yàn)楹竺嬗锌游抑匦孪碌摹?/p>
查看mysql版本
MySQL下載地址:MySQL :: Download MySQL Community Server
卸載Centos7自帶mariadb
# 查找
rpm -qa|grep mariadb
# 卸載
rpm -e mariadb-libs-5.5.68-1.el7.x86_64 --nodeps
解壓mysql
# 創(chuàng)建mysql安裝包存放點(diǎn)
mkdir /usr/server/mysql
# 解壓-C可以指定解壓目錄【.tar用xvf,.gz用zxvf】rpm是離線安裝包
tar xvf mysql-8.0.28-1.el7.x86_64.rpm-bundle.tar -C mysql#
執(zhí)行安裝
# 切換到安裝目錄
cd /usr/server/mysql/
yum -y install libaio #先安裝依賴
yum -y install libncurses*
yum -y install perl perl-devel
# 安裝【強(qiáng)制安裝、忽略依賴安裝,多個(gè)一起安裝,最后一個(gè)是不會(huì)執(zhí)行的,要再次按回車】
rpm -ivh mysql-community-common-8.0.28-1.el7.x86_64.rpm#【我是安裝這個(gè)版本的,其他版本bug給我整玉玉了】
rpm -ivh mysql-community-client-plugins-8.0.28-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.28-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.28-1.el7.x86_64.rpm
rpm -ivh mysql-community-icu-data-files-8.0.28-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.28-1.el7.x86_64.rpm
【更換mysql 8.0.28版本沒(méi)有出現(xiàn)此問(wèn)題】MySQL 安裝warning: mysql-community-libs-5.7.28-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID_
下錯(cuò)包了,我Linux是x86,不能用ARM
重新下載x86安裝包后,安裝成功
啟動(dòng)Mysql
【更換mysql 8.0.28版本沒(méi)有出現(xiàn)此問(wèn)題】解決報(bào)錯(cuò)libssl.so.1.1: cannot open shared object file: No such file or directory_
systemctl status mysqld.service#查看mysql狀態(tài)
journalctl -xe#查看詳細(xì)的系統(tǒng)日志
cat /var/log/mysqld.log | grep ERROR #只查看具體的報(bào)錯(cuò)日志,省略了其他類型的日志
#啟動(dòng)mysql
systemctl start mysqld.service
#查看生成的臨時(shí)root密碼
cat /var/log/mysqld.log | grep password# _Y6.FQ0LdLjZ
修改初始隨機(jī)密碼
# /etc/my.cnf 文件中
skip-grant-tables #跳過(guò)密碼驗(yàn)證
# 登錄mysql【-u指定用戶,-p指定密碼】
mysql -u root -p
Enter password: #輸入在日志中生成的臨時(shí)密碼
# 更新root密碼 設(shè)置為root【進(jìn)入mysql切記加分號(hào)結(jié)尾】版本不同,修改密碼的語(yǔ)法也不同
update user set password=password('password') where user='root';#5.6版本
update mysql.user set authentication_string=password('password') where user='root' and Host ='localhost';#5.7以上版本
alter user 'root'@'localhost' identified by 'password';
set password for root @localhost = password('password');#8.0以上版本
# 下面操作正確
set global validate_password.policy=LOW;#設(shè)置密碼策略【設(shè)置簡(jiǎn)單了】
set global validate_password.length=1;# 【正常是不少于8位、有字母數(shù)字啥的】
flush privileges;# 刷新權(quán)限
systemctl restart mysqld #重啟MySQL
版本問(wèn)題太惡心辣:Linux系統(tǒng)下修改mysql數(shù)據(jù)庫(kù)密碼
授予遠(yuǎn)程連接權(quán)限
select host,user from user; #查看有哪些用戶
create user 'remote'@'%' identified by 'password';#創(chuàng)建用戶
drop user '用戶名'@'主機(jī)';#刪除創(chuàng)建的用戶
grant all privileges on *.* to 'remote'@'%' with grant option;#授權(quán)#因?yàn)槲覀円\(yùn)行SQL腳本【by后面是密碼】%是通配符,表示所有IP
# 刷新
flush privileges;#讓其生效
控制命令
#mysql的啟動(dòng)和關(guān)閉 狀態(tài)查看
systemctl stop mysqld
systemctl status mysqld
systemctl start mysqld
#【建議】設(shè)置為開(kāi)機(jī)自啟動(dòng)服務(wù)
systemctl enabl是e mysqld
#查看是否已經(jīng)設(shè)置自啟動(dòng)成功
systemctl list-unit-files | grep mysqld
關(guān)閉防火墻【阿里云自帶已經(jīng)關(guān)了防火墻】
firewall-cmd --state #查看防火墻狀態(tài)
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall開(kāi)機(jī)啟動(dòng)
連接服務(wù)器后進(jìn)行數(shù)據(jù)庫(kù)的遷移:
配置JDK
使用Xftp來(lái)上傳文件
jdk11下載鏈接:https://www.oracle.com/technetwork/java/javase/downloads/jdk11-downloads-5066655.html
解壓【這里jdk也要下載x86的】
tar -zvxf jdk-11.0.20_linux-x64_bin.tar.gz
編輯 /etc/profile 文件
vim /etc/profile
# 文件末尾增加
export JAVA_HOME=/usr/server/jdk-11.0.20
export PATH=${JAVA_HOME}/bin:$PATH
編輯vim ~/.bash_profile
文件【為后面的neo4j做準(zhǔn)備】
export JAVA_HOME=/usr/server/jdk-11.0.20
export PATH=$JAVA_HOME/bin:$PATH
執(zhí)行source命令,使配置立即生效
source /etc/profile
檢查是否安裝成功
java -version
打包Java項(xiàng)目
修改yml配置【包括數(shù)據(jù)庫(kù)配置和公網(wǎng)IP】
nohup java -jar springboot-0.0.1-SNAPSHOT.jar > logName.log 2>&1 & # 后臺(tái)執(zhí)行,日志輸出到對(duì)應(yīng)的log文件
配置Neo4j
按Quit()
或者Ctrl+D
可以退出python的命令界面
Linux運(yùn)行python文件:python3 *.py
Neo4j是基于Java的圖形數(shù)據(jù)庫(kù),運(yùn)行Neo4j需要啟動(dòng)JVM進(jìn)程,因此在安裝Neo4j前必須安裝JAVA SE的JDK;而與jdk11配對(duì)的neo4j為4.3.2下載Linux下neo4j的地址:Neo4j Download Center - Graph Database & Analytics
解壓
tar -zxvf neo4j-community-4.4.24-unix.tar.gz
進(jìn)入neoj4的bin目錄下
#默認(rèn)賬號(hào)密碼:neo4j/neo4j
#修改配置文件
vim ./conf/neo4j.conf
# 允許遠(yuǎn)程訪問(wèn)
dbms.connectors.default_listen_address=0.0.0.0
# 開(kāi)啟bolt服務(wù),默認(rèn)端口7687
dbms.connector.bolt.listen_address=:7687
# 開(kāi)啟http服務(wù),默認(rèn)端口7474
dbms.connector.http.listen_address=:7474
# 開(kāi)啟https服務(wù),默認(rèn)端口7473
dbms.connector.https.listen_address=:7473
#前臺(tái)啟動(dòng)命令:
./neo4j console
#后臺(tái)啟動(dòng)命令
/usr/server/neo4j-community-4.4.24/bin/neo4j start
#狀態(tài)/usr/server/neo4j-community-4.4.24/bin/
/usr/server/neo4j-community-4.4.24/bin/neo4j status
#停止
./neo4j stop
#重啟
./neo4j restart
#http訪問(wèn)
http://yourip:7474
#重置密碼
connect:bolt://yourip:7687/
username:*
password:*
#在vim中按ESC退出編輯模式,然后按/+內(nèi)容可以關(guān)鍵字搜索
輸入curl localhost:7474
命令,返回下面數(shù)據(jù),表示啟動(dòng)成功
{
"bolt_routing" : "neo4j://localhost:7687",
"transaction" : "http://localhost:7474/db/{databaseName}/tx",
"bolt_direct" : "bolt://localhost:7687",
"neo4j_version" : "4.4.24",
"neo4j_edition" : "community"
}
盡量注釋和代碼別在一行,可能會(huì)報(bào)錯(cuò)
# 查看python3.6安裝了哪些庫(kù)
ls /usr/lib/python3.6/site-packages/
yum是CentOS的默認(rèn)包管理器
# 安裝python3
sudo yum install python3
python --version # 等同于 python2
python3 --version
pip3 install 包名 #使用該命令來(lái)安裝python第三方包
python3 -m site --user-site #查找site-packages的目錄
cd /root/.local/lib/python3.6/site-packages#查看python3安裝的庫(kù)
安裝py2neo
pip3 install pytz
pip3 install neobolt
pip3 install neotime
pip3 install py2neo
安裝pyahocorasick
pip3 install pyahocorasick
- 針對(duì)報(bào)錯(cuò)sudo: cypher-shell: command not found,說(shuō)明
cypher-shell
命令的路徑未添加到超級(jí)用戶(root)的環(huán)境變量中,直接走絕對(duì)路徑
sudo /usr/server/neo4j-community-4.4.24/bin/cypher-shell
- 針對(duì)報(bào)錯(cuò)’readonly’ option is set (add!to override)”
:wq!以上命令是強(qiáng)制保存退出,然后就可以了!
Neo4j的遠(yuǎn)程連接:neo4j配置遠(yuǎn)程連接_neo4j遠(yuǎn)程訪問(wèn)
之前一直沒(méi)配好無(wú)法遠(yuǎn)程,不知道是不是因?yàn)榄h(huán)境變量的問(wèn)題NEOJ_HOME
修改config.py文件下的IP和build_medicalgraph.py下的neo4j的用戶名、密碼
Neo4j數(shù)據(jù)庫(kù)要求在使用實(shí)例之前更改密碼,即使您提供的憑據(jù)是有效的。這是為了確保在生產(chǎn)環(huán)境中不使用默認(rèn)憑據(jù)。如果您不使用默認(rèn)憑據(jù),那么管理員要求您更改密碼,因此您會(huì)收到此錯(cuò)誤消息。即neo4j要求必須更改密碼
ALTER USER neo4j SET PASSWORD 'yourpassword' # 在瀏覽器中執(zhí)行語(yǔ)句修改密碼
可以看到可以正常外網(wǎng)訪問(wèn)服務(wù)器的neo4j數(shù)據(jù)庫(kù)
服務(wù)器1核2G性能太差了,整個(gè)算法跑不起來(lái),只能把圖譜建的小一點(diǎn)了,先刪除之前建好的數(shù)據(jù)
- 運(yùn)行
build_medicalgraph.py
,將圖譜建到CentOS上
neo4j可能會(huì)因一次性查詢數(shù)據(jù)太多,而掛掉
當(dāng)python程序在執(zhí)行Cypher查詢,剛開(kāi)始程序運(yùn)行正常,過(guò)了一段時(shí)間,發(fā)現(xiàn)程序跑到一半會(huì)掛掉,原因是內(nèi)存不足。
服務(wù)器系統(tǒng)為CentOS7,2G內(nèi)存,安裝的Neo4j3.4.4社區(qū)版
- 運(yùn)行app.py文件,啟動(dòng)AI算法的后臺(tái)
我的neo4j的bin目錄在/usr/server/neo4j-community-4.4.24/bin
移動(dòng)端部署
修改entity.js和api/base.js的IP為公網(wǎng)IP
先進(jìn)行H5的配置與打包
重新打包Java項(xiàng)目上線的時(shí)候,要?dú)⑺繨ava進(jìn)程重新部署、當(dāng)然殺死進(jìn)程后,對(duì)應(yīng)之前的靜態(tài)資源鏈接都將失效,所以盡可能一次性上傳成功Java項(xiàng)目【移動(dòng)端部署成功】
Web端部署
安裝Nginx
Nginx下載地址:nginx: download
yum install epel-release#更新yml源
yum update
yum -y install nginx #【在linux里面安裝,之前上傳的安裝包就沒(méi)用了】
Nginx命令
systemctl start nginx #開(kāi)啟nginx服務(wù)
systemctl stop nginx #停止nginx服務(wù)
systemctl restart nginx #重啟nginx服務(wù)
網(wǎng)頁(yè)放到云端,但是是下載到本地上的,所有發(fā)請(qǐng)求應(yīng)該向服務(wù)器的IP發(fā)送
運(yùn)行指定打包vue項(xiàng)目
npm run build
將生成的dist目錄放到服務(wù)器至/user/web
進(jìn)入到/etc/nginx/conf.d目錄,創(chuàng)建web.conf文件,內(nèi)容如下
server {
listen 8082;//監(jiān)聽(tīng)端口
server_name locahost;//域名服務(wù)
location / {//IP下面的路徑
root /usr/web/dist;//根目錄
index index.html;//首頁(yè)
}
}
server {
listen 8080;//監(jiān)聽(tīng)端口
server_name locahost;//域名服務(wù)
location / {//IP下面的路徑
root /usr/web/h5;//根目錄
index index.html;//首頁(yè)
}
}
使配置生效
nginx -s reload
訪問(wèn)成功
常用Linux命令
mv old.cnf new.conf#重命名
chmod 777 neo4j #修改權(quán)限
ln -s JAVA_HOME/bin/java /usr/bin/java #軟鏈接
使用
env
顯示所有環(huán)境變量
核心算法
其他
Idea如何恢復(fù)項(xiàng)目打開(kāi)的詢問(wèn)彈窗,按
ctrl
+shift
+a
搜搜Confirm
文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-568898.html
文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-568898.html
到了這里,關(guān)于Springboot+Flask+Neo4j+Vue2+Vuex+Uniapp+Mybatis+Echarts+Swagger綜合項(xiàng)目學(xué)習(xí)筆記的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!