版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
實(shí)項(xiàng)操目JavaEE框架應(yīng)用開發(fā)(SpringBoot+VueJS)工作單元四實(shí)現(xiàn)用戶和角色管理接口CHAPTERFOUR任務(wù)3實(shí)現(xiàn)用戶新增接口任務(wù)分析本任務(wù)完成新增用戶數(shù)據(jù)的接口功能,程序業(yè)務(wù)邏輯是保存用戶數(shù)據(jù)到sys_user表,同時(shí)把該用戶對(duì)應(yīng)的角色關(guān)系保存到sys_user_role表接口輸入和返回值描述如下:URL地址HTTP請(qǐng)求支持格式輸入?yún)?shù)輸出返回值/system/userPOSTJSONSysUserVO{"msg":"操作成功","code":200}任務(wù)實(shí)施步驟1.編寫控制層代碼步驟2.編寫業(yè)務(wù)邏輯檢查規(guī)則代碼步驟3.編寫業(yè)務(wù)層代碼步驟4.編寫數(shù)據(jù)控制層代碼步驟5.運(yùn)行調(diào)試步驟1編寫控制層代碼在SysUserController中添加add方法,其中輸入?yún)?shù)使用@RequestBody將前端頁(yè)面?zhèn)鬟^來的參數(shù)自動(dòng)封裝到SysUserVO對(duì)象,返回值使用RestResult對(duì)象返回msg和code值,業(yè)務(wù)邏輯首先進(jìn)行業(yè)務(wù)邏輯規(guī)則檢查,檢查用戶賬號(hào)、手機(jī)、郵箱唯一性,通過檢查之后然后調(diào)用insertUser方法保存數(shù)據(jù)。1步驟2編寫業(yè)務(wù)邏輯檢查規(guī)則代碼在SysUserService接口中增加下面抽象方法,實(shí)現(xiàn)步驟1中檢查用戶賬號(hào)、手機(jī)、郵箱唯一性方法;在SysUserServiceImpl中增加對(duì)應(yīng)的實(shí)現(xiàn)方法;步驟3編寫業(yè)務(wù)層代碼修改SysUserService接口,實(shí)現(xiàn)步驟1中的insertUser方法;在SysUserServiceImpl中增加對(duì)應(yīng)的實(shí)現(xiàn)方法。步驟4編寫數(shù)據(jù)控制層代碼repository包下新增custom子包,新增SysUserCustomRepository接口,定義批處理添加用戶角色映射的方法。在repository\custom下新增impl子包,新建SysUserCustomRepositoryImpl實(shí)現(xiàn)類,使用EntityManager.createNativeQuery()構(gòu)建原生SQL的查詢語句,然后使用query.executeUpdate()執(zhí)行上面的查詢語句。SysUserRepository接口繼承SysUserCustomRepository接口。publicclassSysUserCustomRepositoryImplimplementsSysUserCustomRepository{
@PersistenceContextprivateEntityManagerentityManager;
@OverridepublicintbatchInsertUserRole(Long[]userIds,Long[]roles){intlength=userIds.length>roles.length?roles.length:userIds.length;StringBuffersql=newStringBuffer();sql.append("insertintosys_user_role(user_id,role_id)values");sql.append(SqlUtil.getBatchInsertSqlStr(length,2));Queryquery=entityManager.createNativeQuery(sql.toString());intparamIndex=1;for(inti=0;i<length;i++){query.setParameter(paramIndex++,userIds[i]);query.setParameter(paramIndex++,roles[i]);}returnquery.executeUpdate();}}步驟5運(yùn)行調(diào)試Postman驗(yàn)證新增用戶數(shù)據(jù)選擇“POST”模式;輸入U(xiǎn)RL地址:http://localhost:8080/system/user;在body里選擇raw->JSON,提交Json內(nèi)容;單擊“Send”按鈕,查看sys_user和sys_user_role表是否有新增數(shù)據(jù)。知識(shí)小結(jié)SpringDataJPA常用API:EntityManager.createNativeQuery()構(gòu)建原生SQL的查詢語句。Query.executeQuery方法:這個(gè)方法被用來執(zhí)行SELECT語句,它是使用最多的SQL語句。Query.executeUpdate方法:用于執(zhí)行INSERT、UPDATE或DELETE語句以及SQLDDL(數(shù)據(jù)定義語言)語句,例如CREATETABLE和DROPTABLE。任務(wù)評(píng)價(jià)技能點(diǎn)知識(shí)點(diǎn)自我評(píng)價(jià)(不熟悉/基本掌握/熟練掌握/靈活運(yùn)用)編寫原生SQL代碼SpringDataJPA的查詢API;運(yùn)用SpringDataJPA的API編寫查詢代碼拓展練習(xí)仿照任務(wù)3的操作步驟實(shí)現(xiàn)新增角色數(shù)據(jù)的接口,在Postman中訪問http://loc
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 光伏砷化鎵組件制造工安全操作考核試卷含答案
- 裝潢美術(shù)設(shè)計(jì)師崗前實(shí)操知識(shí)實(shí)踐考核試卷含答案
- 2025國(guó)考A卷《公共基礎(chǔ)知識(shí)》真題庫(kù)及答案1套
- 筒并搖工安全素養(yǎng)競(jìng)賽考核試卷含答案
- 種畜凍精制作工安全實(shí)操考核試卷含答案
- 基材人造板處理與飾面材料選配工沖突管理模擬考核試卷含答案
- 陶瓷原料準(zhǔn)備工崗前履職考核試卷含答案
- 廣告合規(guī)審查員風(fēng)險(xiǎn)識(shí)別知識(shí)考核試卷含答案
- 天然氣凈化操作工安全培訓(xùn)模擬考核試卷含答案
- 2024年澧縣事業(yè)單位聯(lián)考招聘考試歷年真題附答案
- 浙江省寧波市2024-2025學(xué)年高三上學(xué)期期末模擬檢測(cè)語文試題(原卷版+解析版)
- 生態(tài)修復(fù)技術(shù)集成-深度研究
- 中小企業(yè)專利質(zhì)量控制指引編制說明
- 旅游行業(yè)安全風(fēng)險(xiǎn)管控與隱患排查方案
- 專題15 物質(zhì)的鑒別、分離、除雜、提純與共存問題 2024年中考化學(xué)真題分類匯編
- DL-T5418-2009火電廠煙氣脫硫吸收塔施工及驗(yàn)收規(guī)程
- 復(fù)方蒲公英注射液在痤瘡中的應(yīng)用研究
- 高考數(shù)學(xué)專題:導(dǎo)數(shù)大題專練(含答案)
- 腘窩囊腫的關(guān)節(jié)鏡治療培訓(xùn)課件
- 淮安市2023-2024學(xué)年七年級(jí)上學(xué)期期末歷史試卷(含答案解析)
- 課件:曝光三要素
評(píng)論
0/150
提交評(píng)論