基于SpringBoot+Vue的瑜伽課體驗課預約系統【附源碼】

基于SpringBoot+Vue的瑜伽課體驗課預約系統

  • 一、系統技術說明
  • 二、運行說明
  • 三、系統的演示
  • 四、系統的核心代碼演示

一、系統技術說明

框架:Springboot+Vue
數據庫:mysql 5.7(一定要5.7版本)
數據庫工具:Navicat11
開發軟件:idea
Maven包:Maven3.3.9
瀏覽器:谷歌瀏覽器/IE瀏覽器

二、運行說明

  1. 本系統分為兩個管理系統,一個前臺,一個后臺。前臺主要用于學員查看課程,預約課程,查看個人信息以及交友的目的;后臺主要用于管理教練與課程的信息。
  2. 開發環境下后端用idea啟動,前端采用node 14啟動。
  3. 后端:處理邏輯; 前端:前后臺畫面。
啟動后端的方式:
1. 把項目導入idea中
2. 找到SpringbootSchemaApplication.java
3. 點擊綠色箭頭啟動
啟動前端的方式:
1. 在前端admin的目錄下進入命令行
2. 安裝包依賴:npm install vite
3. 運行項目:npm run serve
4. 前端front同理
  1. 前臺訪問地址:http://localhost:8082/#/index/home
  2. 后臺訪問地址:http://localhost:8081/#/login
  3. 登錄的用戶名和密碼
后臺:
管理員用戶:admin
管理員密碼:admin前臺和后臺:
教練用戶:教練工號1
教練密碼:123456前臺:
學員用戶:用戶賬號1
學員密碼:123456

三、系統的演示

學員登錄后的界面
首頁展示
首頁展示
首頁展示
課程畫面
交友圈頁面
公告分享欄目
公告列表
個人中心
后臺管理
后臺-教練列表
后臺管理-預約查詢
后臺管理-提醒管理

四、系統的核心代碼演示

給大家看下系統的核心代碼,若想學習的,可以借鑒下

/*** 教練* 后端接口* @author * @email * @date 2023-12-24 18:07:02*/
@RestController
@RequestMapping("/jiaolian")
public class JiaolianController {@Autowiredprivate JiaolianService jiaolianService;@Autowiredprivate TokenService tokenService;/*** 登錄*/@IgnoreAuth@RequestMapping(value = "/login")public R login(String username, String password, String captcha, HttpServletRequest request) {JiaolianEntity u = jiaolianService.selectOne(new EntityWrapper<JiaolianEntity>().eq("jiaoliangonghao", username));if(u!=null && u.getStatus().intValue()==1) {return R.error("賬號已鎖定,請聯系管理員。");}if(u==null || !u.getMima().equals(password)) {if(u!=null) {u.setPasswordwrongnum(u.getPasswordwrongnum()+1);if(u.getPasswordwrongnum()>=3) {u.setStatus(1);}jiaolianService.updateById(u);}return R.error("賬號或密碼不正確");}String token = tokenService.generateToken(u.getId(), username,"jiaolian",  "教練" );return R.ok().put("token", token);}/*** 注冊*/@IgnoreAuth@RequestMapping("/register")public R register(@RequestBody JiaolianEntity jiaolian){//ValidatorUtils.validateEntity(jiaolian);JiaolianEntity u = jiaolianService.selectOne(new EntityWrapper<JiaolianEntity>().eq("jiaoliangonghao", jiaolian.getJiaoliangonghao()));if(u!=null) {return R.error("注冊用戶已存在");}Long uId = new Date().getTime();jiaolian.setId(uId);jiaolianService.insert(jiaolian);return R.ok();}/*** 退出*/@RequestMapping("/logout")public R logout(HttpServletRequest request) {request.getSession().invalidate();return R.ok("退出成功");}/*** 獲取用戶的session用戶信息*/@RequestMapping("/session")public R getCurrUser(HttpServletRequest request){Long id = (Long)request.getSession().getAttribute("userId");JiaolianEntity u = jiaolianService.selectById(id);return R.ok().put("data", u);}/*** 密碼重置*/@IgnoreAuth@RequestMapping(value = "/resetPass")public R resetPass(String username, HttpServletRequest request){JiaolianEntity u = jiaolianService.selectOne(new EntityWrapper<JiaolianEntity>().eq("jiaoliangonghao", username));if(u==null) {return R.error("賬號不存在");}u.setMima("123456");jiaolianService.updateById(u);return R.ok("密碼已重置為:123456");}/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,JiaolianEntity jiaolian,HttpServletRequest request){EntityWrapper<JiaolianEntity> ew = new EntityWrapper<JiaolianEntity>();PageUtils page = jiaolianService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, jiaolian), params), params));return R.ok().put("data", page);}/*** 前端列表*/@IgnoreAuth@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,JiaolianEntity jiaolian, HttpServletRequest request){EntityWrapper<JiaolianEntity> ew = new EntityWrapper<JiaolianEntity>();PageUtils page = jiaolianService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, jiaolian), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list( JiaolianEntity jiaolian){EntityWrapper<JiaolianEntity> ew = new EntityWrapper<JiaolianEntity>();ew.allEq(MPUtil.allEQMapPre( jiaolian, "jiaolian")); return R.ok().put("data", jiaolianService.selectListView(ew));}/*** 查詢*/@RequestMapping("/query")public R query(JiaolianEntity jiaolian){EntityWrapper< JiaolianEntity> ew = new EntityWrapper< JiaolianEntity>();ew.allEq(MPUtil.allEQMapPre( jiaolian, "jiaolian")); JiaolianView jiaolianView =  jiaolianService.selectView(ew);return R.ok("查詢教練成功").put("data", jiaolianView);}/*** 后端詳情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){JiaolianEntity jiaolian = jiaolianService.selectById(id);return R.ok().put("data", jiaolian);}/*** 前端詳情*/@IgnoreAuth@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id){JiaolianEntity jiaolian = jiaolianService.selectById(id);return R.ok().put("data", jiaolian);}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody JiaolianEntity jiaolian, HttpServletRequest request){jiaolian.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(jiaolian);JiaolianEntity u = jiaolianService.selectOne(new EntityWrapper<JiaolianEntity>().eq("jiaoliangonghao", jiaolian.getJiaoliangonghao()));if(u!=null) {return R.error("用戶已存在");}jiaolian.setId(new Date().getTime());jiaolianService.insert(jiaolian);return R.ok();}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody JiaolianEntity jiaolian, HttpServletRequest request){jiaolian.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(jiaolian);JiaolianEntity u = jiaolianService.selectOne(new EntityWrapper<JiaolianEntity>().eq("jiaoliangonghao", jiaolian.getJiaoliangonghao()));if(u!=null) {return R.error("用戶已存在");}jiaolian.setId(new Date().getTime());jiaolianService.insert(jiaolian);return R.ok();}/*** 修改*/@RequestMapping("/update")@Transactionalpublic R update(@RequestBody JiaolianEntity jiaolian, HttpServletRequest request){//ValidatorUtils.validateEntity(jiaolian);jiaolianService.updateById(jiaolian);//全部更新return R.ok();}/*** 刪除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){jiaolianService.deleteBatchIds(Arrays.asList(ids));return R.ok();}
}
/*** 登錄相關*/
@RequestMapping("users")
@RestController
public class UsersController{@Autowiredprivate UsersService userService;@Autowiredprivate TokenService tokenService;/*** 登錄*/@IgnoreAuth@RequestMapping(value = "/login")public R login(String username, String password, String captcha, HttpServletRequest request) {UsersEntity user = userService.selectOne(new EntityWrapper<UsersEntity>().eq("username", username));if(user==null || !user.getPassword().equals(password)) {return R.error("賬號或密碼不正確");}String token = tokenService.generateToken(user.getId(),username, "users", user.getRole());return R.ok().put("token", token);}/*** 注冊*/@IgnoreAuth@PostMapping(value = "/register")public R register(@RequestBody UsersEntity user){
//    	ValidatorUtils.validateEntity(user);if(userService.selectOne(new EntityWrapper<UsersEntity>().eq("username", user.getUsername())) !=null) {return R.error("用戶已存在");}userService.insert(user);return R.ok();}/*** 退出*/@GetMapping(value = "logout")public R logout(HttpServletRequest request) {request.getSession().invalidate();return R.ok("退出成功");}/*** 密碼重置*/@IgnoreAuth@RequestMapping(value = "/resetPass")public R resetPass(String username, HttpServletRequest request){UsersEntity user = userService.selectOne(new EntityWrapper<UsersEntity>().eq("username", username));if(user==null) {return R.error("賬號不存在");}user.setPassword("123456");userService.update(user,null);return R.ok("密碼已重置為:123456");}/*** 列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,UsersEntity user){EntityWrapper<UsersEntity> ew = new EntityWrapper<UsersEntity>();PageUtils page = userService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.allLike(ew, user), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/list")public R list( UsersEntity user){EntityWrapper<UsersEntity> ew = new EntityWrapper<UsersEntity>();ew.allEq(MPUtil.allEQMapPre( user, "user")); return R.ok().put("data", userService.selectListView(ew));}/*** 信息*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") String id){UsersEntity user = userService.selectById(id);return R.ok().put("data", user);}/*** 獲取用戶的session用戶信息*/@RequestMapping("/session")public R getCurrUser(HttpServletRequest request){Long id = (Long)request.getSession().getAttribute("userId");UsersEntity user = userService.selectById(id);return R.ok().put("data", user);}/*** 保存*/@PostMapping("/save")public R save(@RequestBody UsersEntity user){
//    	ValidatorUtils.validateEntity(user);if(userService.selectOne(new EntityWrapper<UsersEntity>().eq("username", user.getUsername())) !=null) {return R.error("用戶已存在");}userService.insert(user);return R.ok();}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody UsersEntity user){
//        ValidatorUtils.validateEntity(user);UsersEntity u = userService.selectOne(new EntityWrapper<UsersEntity>().eq("username", user.getUsername()));if(u!=null && u.getId()!=user.getId() && u.getUsername().equals(user.getUsername())) {return R.error("用戶名已存在。");}userService.updateById(user);//全部更新return R.ok();}/*** 刪除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){userService.deleteBatchIds(Arrays.asList(ids));return R.ok();}
}
/*** 預約查詢* 后端接口* @author * @email * @date 2023-12-24 18:07:02*/
@RestController
@RequestMapping("/yuyuechaxun")
public class YuyuechaxunController {@Autowiredprivate YuyuechaxunService yuyuechaxunService;/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,YuyuechaxunEntity yuyuechaxun,HttpServletRequest request){String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("jiaolian")) {yuyuechaxun.setJiaoliangonghao((String)request.getSession().getAttribute("username"));}if(tableName.equals("yonghu")) {yuyuechaxun.setYonghuzhanghao((String)request.getSession().getAttribute("username"));}EntityWrapper<YuyuechaxunEntity> ew = new EntityWrapper<YuyuechaxunEntity>();PageUtils page = yuyuechaxunService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, yuyuechaxun), params), params));return R.ok().put("data", page);}/*** 前端列表*/@IgnoreAuth@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,YuyuechaxunEntity yuyuechaxun, HttpServletRequest request){EntityWrapper<YuyuechaxunEntity> ew = new EntityWrapper<YuyuechaxunEntity>();PageUtils page = yuyuechaxunService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, yuyuechaxun), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list( YuyuechaxunEntity yuyuechaxun){EntityWrapper<YuyuechaxunEntity> ew = new EntityWrapper<YuyuechaxunEntity>();ew.allEq(MPUtil.allEQMapPre( yuyuechaxun, "yuyuechaxun")); return R.ok().put("data", yuyuechaxunService.selectListView(ew));}/*** 查詢*/@RequestMapping("/query")public R query(YuyuechaxunEntity yuyuechaxun){EntityWrapper< YuyuechaxunEntity> ew = new EntityWrapper< YuyuechaxunEntity>();ew.allEq(MPUtil.allEQMapPre( yuyuechaxun, "yuyuechaxun")); YuyuechaxunView yuyuechaxunView =  yuyuechaxunService.selectView(ew);return R.ok("查詢預約查詢成功").put("data", yuyuechaxunView);}/*** 后端詳情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){YuyuechaxunEntity yuyuechaxun = yuyuechaxunService.selectById(id);return R.ok().put("data", yuyuechaxun);}/*** 前端詳情*/@IgnoreAuth@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id){YuyuechaxunEntity yuyuechaxun = yuyuechaxunService.selectById(id);return R.ok().put("data", yuyuechaxun);}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody YuyuechaxunEntity yuyuechaxun, HttpServletRequest request){//ValidatorUtils.validateEntity(yuyuechaxun);yuyuechaxunService.insert(yuyuechaxun);return R.ok();}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody YuyuechaxunEntity yuyuechaxun, HttpServletRequest request){//ValidatorUtils.validateEntity(yuyuechaxun);yuyuechaxunService.insert(yuyuechaxun);return R.ok();}/*** 修改*/@RequestMapping("/update")@Transactionalpublic R update(@RequestBody YuyuechaxunEntity yuyuechaxun, HttpServletRequest request){//ValidatorUtils.validateEntity(yuyuechaxun);yuyuechaxunService.updateById(yuyuechaxun);//全部更新return R.ok();}/*** 刪除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){yuyuechaxunService.deleteBatchIds(Arrays.asList(ids));return R.ok();}/*** (按值統計)*/@RequestMapping("/value/{xColumnName}/{yColumnName}")public R value(@PathVariable("yColumnName") String yColumnName, @PathVariable("xColumnName") String xColumnName,HttpServletRequest request) {Map<String, Object> params = new HashMap<String, Object>();params.put("xColumn", xColumnName);params.put("yColumn", yColumnName);EntityWrapper<YuyuechaxunEntity> ew = new EntityWrapper<YuyuechaxunEntity>();String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("jiaolian")) {ew.eq("jiaoliangonghao", (String)request.getSession().getAttribute("username"));}if(tableName.equals("yonghu")) {ew.eq("yonghuzhanghao", (String)request.getSession().getAttribute("username"));}List<Map<String, Object>> result = yuyuechaxunService.selectValue(params, ew);SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");for(Map<String, Object> m : result) {for(String k : m.keySet()) {if(m.get(k) instanceof Date) {m.put(k, sdf.format((Date)m.get(k)));}}}return R.ok().put("data", result);}/*** (按值統計(多))*/@RequestMapping("/valueMul/{xColumnName}")public R valueMul(@PathVariable("xColumnName") String xColumnName,@RequestParam String yColumnNameMul, HttpServletRequest request) {String[] yColumnNames = yColumnNameMul.split(",");Map<String, Object> params = new HashMap<String, Object>();params.put("xColumn", xColumnName);List<List<Map<String, Object>>> result2 = new ArrayList<List<Map<String,Object>>>();SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");EntityWrapper<YuyuechaxunEntity> ew = new EntityWrapper<YuyuechaxunEntity>();String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("jiaolian")) {ew.eq("jiaoliangonghao", (String)request.getSession().getAttribute("username"));}if(tableName.equals("yonghu")) {ew.eq("yonghuzhanghao", (String)request.getSession().getAttribute("username"));}for(int i=0;i<yColumnNames.length;i++) {params.put("yColumn", yColumnNames[i]);List<Map<String, Object>> result = yuyuechaxunService.selectValue(params, ew);for(Map<String, Object> m : result) {for(String k : m.keySet()) {if(m.get(k) instanceof Date) {m.put(k, sdf.format((Date)m.get(k)));}}}result2.add(result);}return R.ok().put("data", result2);}/*** (按值統計)時間統計類型*/@RequestMapping("/value/{xColumnName}/{yColumnName}/{timeStatType}")public R valueDay(@PathVariable("yColumnName") String yColumnName, @PathVariable("xColumnName") String xColumnName, @PathVariable("timeStatType") String timeStatType,HttpServletRequest request) {Map<String, Object> params = new HashMap<String, Object>();params.put("xColumn", xColumnName);params.put("yColumn", yColumnName);params.put("timeStatType", timeStatType);EntityWrapper<YuyuechaxunEntity> ew = new EntityWrapper<YuyuechaxunEntity>();String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("jiaolian")) {ew.eq("jiaoliangonghao", (String)request.getSession().getAttribute("username"));}if(tableName.equals("yonghu")) {ew.eq("yonghuzhanghao", (String)request.getSession().getAttribute("username"));}List<Map<String, Object>> result = yuyuechaxunService.selectTimeStatValue(params, ew);SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");for(Map<String, Object> m : result) {for(String k : m.keySet()) {if(m.get(k) instanceof Date) {m.put(k, sdf.format((Date)m.get(k)));}}}return R.ok().put("data", result);}/*** (按值統計)時間統計類型(多)*/@RequestMapping("/valueMul/{xColumnName}/{timeStatType}")public R valueMulDay(@PathVariable("xColumnName") String xColumnName, @PathVariable("timeStatType") String timeStatType,@RequestParam String yColumnNameMul,HttpServletRequest request) {String[] yColumnNames = yColumnNameMul.split(",");Map<String, Object> params = new HashMap<String, Object>();params.put("xColumn", xColumnName);params.put("timeStatType", timeStatType);List<List<Map<String, Object>>> result2 = new ArrayList<List<Map<String,Object>>>();SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");EntityWrapper<YuyuechaxunEntity> ew = new EntityWrapper<YuyuechaxunEntity>();String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("jiaolian")) {ew.eq("jiaoliangonghao", (String)request.getSession().getAttribute("username"));}if(tableName.equals("yonghu")) {ew.eq("yonghuzhanghao", (String)request.getSession().getAttribute("username"));}for(int i=0;i<yColumnNames.length;i++) {params.put("yColumn", yColumnNames[i]);List<Map<String, Object>> result = yuyuechaxunService.selectTimeStatValue(params, ew);for(Map<String, Object> m : result) {for(String k : m.keySet()) {if(m.get(k) instanceof Date) {m.put(k, sdf.format((Date)m.get(k)));}}}result2.add(result);}return R.ok().put("data", result2);}/*** 分組統計*/@RequestMapping("/group/{columnName}")public R group(@PathVariable("columnName") String columnName,HttpServletRequest request) {Map<String, Object> params = new HashMap<String, Object>();params.put("column", columnName);EntityWrapper<YuyuechaxunEntity> ew = new EntityWrapper<YuyuechaxunEntity>();String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("jiaolian")) {ew.eq("jiaoliangonghao", (String)request.getSession().getAttribute("username"));}if(tableName.equals("yonghu")) {ew.eq("yonghuzhanghao", (String)request.getSession().getAttribute("username"));}List<Map<String, Object>> result = yuyuechaxunService.selectGroup(params, ew);SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");for(Map<String, Object> m : result) {for(String k : m.keySet()) {if(m.get(k) instanceof Date) {m.put(k, sdf.format((Date)m.get(k)));}}}return R.ok().put("data", result);}
}

如果覺得系統不錯,歡迎點贊關注收藏。
源碼鏈接:(夸克網盤)
鏈接:https://pan.quark.cn/s/093cbd886c8a
提取碼:DWQD

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/71946.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/71946.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/71946.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

sparkTTS window 安裝

SparkTTS 的簡介 Spark-TTS是一種基于SpardAudio團隊提出的 BiCodec 構建的新系統&#xff0c;BiCodec 是一種單流語音編解碼器&#xff0c;可將語音策略性地分解為兩種互補的標記類型&#xff1a;用于語言內容的低比特率語義標記和用于說話者特定屬性的固定長度全局標記。這種…

從零開始:使用 Python 實現機器學習的基礎與實踐

文章大綱&#xff1a; 引言 機器學習的定義與應用場景。Python 在機器學習領域的優勢。本文目標&#xff1a;通過 Python 實現一個簡單的機器學習項目。 環境準備 安裝 Python 和必要的庫&#xff08;如 NumPy、Pandas、Scikit-learn&#xff09;。使用 Jupyter Notebook 或 V…

ApoorvCTF Rust語言逆向實戰

上周參加了國外的比賽&#xff0c;名稱叫&#xff1a;ApoorvCTF 看一下老外的比賽跟我們有什么不同&#xff0c;然后我根據國內比賽對比發現&#xff0c;他們考點還是很有意思的&#xff0c;反正都是逆向&#xff0c;哈哈哈 Rusty Vault 題目描述&#xff1a; In the heart…

Git和GitHub基礎教學

文章目錄 1. 前言2. 歷史3. 下載安裝Git3.1 下載Git3.2 安裝Git3.3 驗證安裝是否成功 4. 配置Git5. Git基礎使用5.1 通過Git Bash使用5.1.1 創建一個新的倉庫。5.1.1.1 克隆別人的倉庫5.1.1.2 自己創建一個本地倉庫 5.1.2 管理存檔 5.2 通過Visual Studio Code使用 6. Git完成遠…

MySQL中like模糊查詢如何優化?

大家好&#xff0c;我是鋒哥。今天分享關于【MySQL中like模糊查詢如何優化?】面試題。希望對大家有幫助&#xff1b; MySQL中like模糊查詢如何優化? 1000道 互聯網大廠Java工程師 精選面試題-Java資源分享網 在 MySQL 中&#xff0c;LIKE 模糊查詢雖然非常常見&#xff0c;…

?LeetCode(數學分類) 2. 兩數相加——暴力與優化?

?LeetCode(數學分類) 2. 兩數相加——暴力與優化? 提示&#xff1a; 每個鏈表中的節點數在范圍 [1, 100] 內 0 < Node.val < 9 題目數據保證列表表示的數字不含前導零 題解&#xff1a; 暴力與優化&#xff0c;暴力即轉換為十進制解題&#xff0c;優化即直接在鏈表上進…

①Modbus TCP轉Modbus RTU/ASCII網關同步采集無需編程高速輕松組網

Modbus TCP轉Modbus RTU/ASCII網關同步采集無需編程高速輕松組網https://item.taobao.com/item.htm?ftt&id784749793551 MODBUS TCP 通信單元 MODBUS TCP 轉 RS485 MS-A1-50X1 系列概述 MS-A1-50X1 系列概述 MS-A1-50X1系列作為MODBUS TCP通信的服務器進行動作。可通…

基于PyTorch的深度學習——機器學習3

激活函數在神經網絡中作用有很多&#xff0c;主要作用是給神經網絡提供非線性建模能力。如果沒有激活函數&#xff0c;那么再多層的神經網絡也只能處理線性可分問題。 在搭建神經網絡時&#xff0c;如何選擇激活函數&#xff1f;如果搭建的神經網絡層數不多&#xff0c;選擇si…

力扣:找到一個數字的 K 美麗值(C++)

一個整數 num 的 k 美麗值定義為 num 中符合以下條件的 子字符串 數目&#xff1a; 子字符串長度為 k 。子字符串能整除 num 。 給你整數 num 和 k &#xff0c;請你返回 num 的 k 美麗值。 注意&#xff1a; 允許有 前綴 0 。0 不能整除任何值。 一個 子字符串 是一個字符串里…

C/C++藍橋杯算法真題打卡(Day3)

一、P8598 [藍橋杯 2013 省 AB] 錯誤票據 - 洛谷 算法代碼&#xff1a; #include<bits/stdc.h> using namespace std;int main() {int N;cin >> N; // 讀取數據行數unordered_map<int, int> idCount; // 用于統計每個ID出現的次數vector<int> ids; …

<建模軟件安裝教程1>Blender4.2系列

Blender4.2安裝教程 0注意&#xff1a;Windows環境下安裝 第一步&#xff0c;百度網盤提取安裝包。百度網盤鏈接&#xff1a;通過網盤分享的文件&#xff1a;blender.zip 鏈接: https://pan.baidu.com/s/1OG0jMMtN0qWDSQ6z_rE-9w 提取碼: 0309 --來自百度網盤超級會員v3的分…

C語言八股---預處理,編譯,匯編與鏈接篇

前言 從多個.c文件到達一個可執行文件的四步: ??預處理–>編譯–>匯編–>鏈接 預處理 預處理過程就是預處理器處理這些預處理指令(要不然編譯器完全不認識),最終會生成 main.i的文件 主要做的事情有如下幾點: 展開頭文件展開宏條件編譯刪除注釋添加行號等信息保留…

用Deepseek寫一個 HTML 和 JavaScript 實現一個簡單的飛機游戲

大家好&#xff01;今天我將分享如何使用 HTML 和 JavaScript 編寫一個簡單的飛機游戲。這個游戲的核心功能包括&#xff1a;控制飛機移動、發射子彈、敵機生成、碰撞檢測和得分統計。代碼簡潔易懂&#xff0c;適合初學者學習和實踐。 游戲功能概述 玩家控制&#xff1a;使用鍵…

面向高質量視頻生成的擴散模型方法-算法、架構與實現【附核心代碼】

目錄 算法原理 架構 代碼示例 算法原理 正向擴散過程&#xff1a;從真實的視頻數據開始&#xff0c;逐步向其中添加噪聲&#xff0c;隨著時間步 t 的增加&#xff0c;噪聲添加得越來越多&#xff0c;最終將原始視頻數據變成純噪聲。數學上&#xff0c;t 時刻的視頻數據與 t…

水下機器人推進器PID參數整定與MATLAB仿真

水下機器人推進器PID參數整定與MATLAB仿真 1. PID控制原理 目標:通過調節比例(P)、積分(I)、微分(D)參數,使推進器輸出力快速穩定跟蹤期望值。傳遞函數(示例):推進器動力學模型可簡化為: [ G(s) = \frac{K}{\tau s + 1} \cdot e^{-Ts} ] 其中:K為增益,τ為時間常…

游戲引擎學習第149天

今日回顧與計劃 在今天的直播中&#xff0c;我們將繼續進行游戲的開發工作&#xff0c;目標是完成資產文件&#xff08;pack file&#xff09;的測試版本。目前&#xff0c;游戲的資源&#xff08;如位圖和聲音文件&#xff09;是直接從磁盤加載的&#xff0c;而我們正在將其轉…

Java函數式接口四部曲之Consumer

Consumer 是一個函數式接口&#xff0c;位于 java.util.function 包中。它表示一個接受單個輸入參數并且不返回任何結果的操作。Consumer 通常用于需要對輸入參數執行某些操作但不產生返回值的場景。 Consumer 接口定義了一個抽象方法&#xff1a;accept(T t)&#xff1a;接受…

ForceMimic:以力為中心的模仿學習,采用力運動捕捉系統進行接觸豐富的操作

25年3月來自上海交大盧策吾教授團隊的論文“ForceMimic: Force-Centric Imitation Learning with Force-Motion Capture System for Contact-Rich Manipulation”。 在大多數接觸豐富的操作任務中&#xff0c;人類會將隨時間變化的力施加到目標物體上&#xff0c;以補償視覺引…

【愚公系列】《Python網絡爬蟲從入門到精通》045-Charles的SSL證書的安裝

標題詳情作者簡介愚公搬代碼頭銜華為云特約編輯&#xff0c;華為云云享專家&#xff0c;華為開發者專家&#xff0c;華為產品云測專家&#xff0c;CSDN博客專家&#xff0c;CSDN商業化專家&#xff0c;阿里云專家博主&#xff0c;阿里云簽約作者&#xff0c;騰訊云優秀博主&…

vulnhub靶場【digitalworld.local系列】的electrical靶機

前言 靶機&#xff1a;digitalworld.local-electrical&#xff0c;IP地址為192.168.10.12&#xff0c;后期因為卡頓&#xff0c;重新安裝&#xff0c;ip地址后面為192.168.10.11 攻擊&#xff1a;kali&#xff0c;IP地址為192.168.10.6 kali采用VMware虛擬機&#xff0c;靶機…