版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
目錄附錄附錄A:用戶注冊(cè)登錄模塊核心代碼注冊(cè):@ResponseBody @PostMapping("/admin/huiyuan/save") publicJsonResultsave(){ Stringaccountname=request.getParameter("accountname");//請(qǐng)求賬號(hào) Stringpassword=request.getParameter("password");//請(qǐng)求密碼 Stringname=request.getParameter("name");//請(qǐng)求姓名 Stringidcardno=request.getParameter("idcardno");//請(qǐng)求身份證號(hào) Stringidentity=request.getParameter("identity");//請(qǐng)求驗(yàn)證 Stringemail=request.getParameter("email");//請(qǐng)求郵箱 Stringmobile=request.getParameter("mobile");//請(qǐng)求手機(jī)號(hào) Stringaddress=request.getParameter("address");//請(qǐng)求地址 Stringtouxiang=request.getParameter("touxiang");//請(qǐng)求頭像 Stringsex=request.getParameter("sex");//請(qǐng)求性別 Stringdes=request.getParameter("des"); if(huiyuanSrv.isExist("whereaccountname='"+accountname+"'")) returnJsonResult.error(-1,"用戶名已經(jīng)存在");//判讀用戶名是否存在 Huiyuanhuiyuan=newHuiyuan(); huiyuan.setAccountname(accountname==null?"":accountname); huiyuan.setPassword(password==null?"":password);//判讀密碼是否正確 huiyuan.setPaypwd(huiyuan.getPassword()); if(mobile!=null) huiyuan.setMobile(mobile);//判讀不為空 else huiyuan.setMobile(accountname);//判讀不為空 if(address!=null) huiyuan.setAddress(address);//判讀不為空 if(sex!=null) huiyuan.setSex(sex);//判讀不為空 else huiyuan.setSex("男"); huiyuan.setNickname(accountname); huiyuan.setName(name);huiyuan.setTypeid(1); huiyuan.setRegdate(newDate()); huiyuan.setIdcardno(idcardno==null?"":idcardno); huiyuan.setLogtimes(0);//判讀不為空 huiyuan.setIdentity(identity==null?"":identity); if(touxiang!=null)//判讀不為空 huiyuan.setTouxiang(touxiang); else huiyuan.setTouxiang("/upload/nopic.jpg"); huiyuan.setEmail(email==null?"":email);//判讀不為空 huiyuan.setStatus(1); huiyuan.setYue(0.0); huiyuan.setDes(des==null?"":des); huiyuanSrv.save(huiyuan); returnJsonResult.success(1,"注冊(cè)成功");//成功 }登錄:@PostMapping("/admin/huiyuan/login") privateJsonResultlogin(){ Stringaccountname=request.getParameter("accountname");//賦值賬號(hào) Stringpassword=request.getParameter("password");//賦值密碼 Stringfilter=MessageFormat.format("whereaccountname=''{0}''andpassword=''{1}''",accountname,password); Huiyuanhuiyuan=(Huiyuan)huiyuanSrv.load(filter); if(huiyuan==null)//賬號(hào)密碼不匹配 returnJsonResult.error(-1,"系統(tǒng)賬戶和密碼不匹配"); if(!huiyuan.getPassword().equals(password))//密碼錯(cuò)誤 returnJsonResult.error(-2,"密碼錯(cuò)誤"); huiyuan.setLogtimes(huiyuan.getLogtimes()+1); huiyuanSrv.update(huiyuan); request.getSession().setAttribute("huiyuan",huiyuan); returnJsonResult.success(1,"成功登陸",huiyuan);//成功 }附錄B:商品信息模塊核心代碼基于用戶的協(xié)同過濾找出最相似用戶:Map<String,Double>mapSim=newHashMap<String,Double>();//存放相似度集合Map<String,Double>currentUserEnt=mapUsers.get(String.valueOf(id));//獲取當(dāng)前用戶//遍歷每個(gè)用戶for(Map.Entry<String,Map<String,Double>>userEnt:mapUsers.entrySet()){StringperId=userEnt.getKey();if(!newInteger(id).toString().equals(perId)){//遍歷到的用戶非當(dāng)前用戶doublesim=getUserSimilar(currentUserEnt,userEnt.getValue());System.out.println(id+"與"+perId+"的相似度為:"+String.valueOf(sim));mapSim.put(perId,sim);}}List<Map.Entry<String,Double>>wordMap=newArrayList<>(mapSim.entrySet());Collections.sort(wordMap,newComparator<Map.Entry<String,Double>>(){//根據(jù)value排序publicintcompare(Map.Entry<String,Double>o1,Map.Entry<String,Double>o2){doubleresult=o2.getValue()-o1.getValue();if(result>0)return1;elseif(result==0)return0;elsereturn-1;}});for(Map.Entry<String,Double>set:wordMap){System.out.println("map:"+set.getKey()+""+set.getValue());}StringmaxSimilar=wordMap.get(0).getKey();System.out.println("最大相識(shí)"+maxSimilar);//找出最大相似度}皮爾遜相關(guān)系數(shù)計(jì)算公式:privatestaticdoublegetUserSimilar(Map<String,Double>pm1,Map<String,Double>pm2){intn=pm1.size();//數(shù)量nDoublesxy=0.0;//Σxy=x1*y1+x2*y2+xn*ynDoublesx=0.0;//Σx=x1+x2+xnDoublesy=0.0;//Σy=y1+y2+...ynDoublesx2=0.0;//Σx2=(x1)2+(x2)2+(xn)2Doublesy2=0.0;//Σy2=(y1)2+(y2)2+(yn)2for(Map.Entry<String,Double>pme:pm1.entrySet()){Stringkey=pme.getKey();System.out.println("key:"+key);Doublex=pme.getValue();Doubley=pm2.get(key);System.out.println("x:"+String.valueOf(x)+",y:"+String.valueOf(y));if(x!=null&&y!=null){sxy+=x*y;//x*y求和sx+=x;//x求和sy+=y;//y求和sx2+=Math.pow(x,2.0);//x求和平方sy2+=Math.pow(y,2.0);//y求和平方System.out.println(":sxy:"+sxy+",sx:"+sx+",sy"+",sx2:"+sx2+",sy2:"+sy2);}}doublesd=sxy-(sx*sy)/n;doublesm=Math.sqrt((sx2-(Math.pow(sx,2)/n))*(sy2-(Math.pow(sy,2)/n)));System.out.println("sd:"+sd+",sm:"+sm);returnMath.abs(sm==0?0:sd/sm);//相應(yīng)的公式}}把相似用戶的喜好商品賦值給當(dāng)前用戶:try{ ItemSimilarityitemSimilarity=newPearsonCorrelationSimilarity(dataModel);//相似用戶的喜好賦值給當(dāng)前用戶 GenericItemBasedRecommenderrecommender=newGenericItemBasedRecommender(dataModel,itemSimilarity); List<RecommendedItem>listRecommendedItem=recommender.recommendedBecause(huiyuan.getId(),id,5);//列舉五個(gè)推薦商品
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年編輯校對(duì)(內(nèi)容審核)試題及答案
- 2025年高職汽車生產(chǎn)(生產(chǎn)管理)試題及答案
- 2026年物流管理(貨物倉儲(chǔ)規(guī)劃)試題及答案
- 2025年中職機(jī)電技術(shù)實(shí)訓(xùn)(機(jī)電實(shí)操訓(xùn)練)試題及答案
- 禁毒知識(shí)問答題課件
- 醫(yī)保消防安全培訓(xùn)內(nèi)容
- 2025廣西師范大學(xué)高層次人才公開招聘153人備考題庫及一套完整答案詳解
- 云南省怒江傈僳族自治州瀘水市多校2025-2026學(xué)年八年級(jí)上學(xué)期期末地理試題(含答案)
- 四川省資陽市2025-2026學(xué)年七年級(jí)上學(xué)期1月期末數(shù)學(xué)試題(含答案)
- 2026四川內(nèi)江高新園區(qū)管理有限責(zé)任公司招聘17人備考題庫及答案詳解(考點(diǎn)梳理)
- 2026年甘肅平?jīng)龀缧趴h機(jī)關(guān)事業(yè)單位選調(diào)30人筆試備考題庫及答案解析
- 人工智能推動(dòng)金融數(shù)據(jù)治理轉(zhuǎn)型升級(jí)研究報(bào)告2026
- 2026長治日?qǐng)?bào)社工作人員招聘勞務(wù)派遣人員5人備考題庫含答案
- 期末教師大會(huì)上校長精彩講話:師者當(dāng)備三盆水(洗頭洗手洗腳)
- 2026年濰坊職業(yè)學(xué)院?jiǎn)握芯C合素質(zhì)筆試備考試題附答案詳解
- 工兵基礎(chǔ)知識(shí)課件
- 2026年貴州省交通綜合運(yùn)輸事務(wù)中心和貴州省鐵路民航事務(wù)中心公開選調(diào)備考題庫及答案詳解參考
- 2025四川雅安市名山區(qū)茗投產(chǎn)業(yè)集團(tuán)有限公司招聘合同制員工10人參考題庫附答案
- 人工智能應(yīng)用與實(shí)踐 課件 -第5章-智能體開發(fā)與應(yīng)用
- 2025浙江紹興越城黃酒小鎮(zhèn)旅游開發(fā)有限公司編外人員第二次招聘總筆試歷年典型考點(diǎn)題庫附帶答案詳解2套試卷
- 聘用2025年3D建模合同協(xié)議
評(píng)論
0/150
提交評(píng)論