ssm610学生社团管理系统+vue【已测试】

前言:👩‍💻 计算机行业的同仁们,大家好!作为专注于Java领域多年的开发者,我非常理解实践案例的重要性。以下是一些我认为有助于提升你们技能的资源:

👩‍💻 SpringBoot的精选案例推介!🔥
👩‍💻 想要把握小程序开发的精髓?这里有你需要的优选案例!🚀

点开文末链接,即可获取这些精品案例的源码。分享知识,共同进步!👇👇
📚 掌握这些案例,让你的编程之路更加顺畅。立即查看详情和获取源码!

希望这些资料能帮助你们在技术旅程中更进一步!🌟


项目名

 ssm610学生社团管理系统+vue【已测试】
技术栈

 
SSM+Vue+MySQL+Maven


一、-环境介绍

 

1.1 运行环境

 
开发语言:Java
数据库:MySQL
系统架构:B/S
后端:SSM(MyBatis)
前端:Vue
工具:IDEA,JDK1.8,Maven

 

二、-系统介绍

 
2.1 项目介绍

如今的时代,是有史以来最好的时代,随着计算机的发展到现在的移动终端的发展,国内目前信息技术已经在世界上遥遥领先,让人们感觉到处于信息大爆炸的社会。信息时代的信息处理肯定不能用之前的手工处理这样的解决方法,必须采用计算机来处理这些信息,因为传统方法对应计算机处理的信息效率上真的相差甚远。

本次使用Java技术开发的学生社团管理系统,就是运用计算机来管理学生社团信息,该系统是可以实现团长管理,社团管理,社团申请管理,社团活动管理,社团活动申请管理,论坛管理,学生管理,社团活动留言管理等功能。

学生社团管理系统使用计算机处理相关信息,主要是在数据的传输上能达到即可传递,数据不管是想要获取或者输入,都可以及时反馈,极大的提高了效率,使用的MySQL数据库也能让数据更能安全的存储。

 

关键词:学生社团管理系统;社团;社团活动

2.2 功能模块

 616ed619e03748ff9a7de34d3412e694.pngd53fdeb5a78a40cab4035135358ceed2.png7677f99613064afb85959251b11f349e.png


三、-系统展示

 
3.1部分功能图文展示

37b126af11464da1b777e6c9954fdd24.png7a76235bcf3a49f481ca176a79de625d.png2f36cc9864984ac4971c72cd10317d51.png60715dfa49a4468b8b7e4e4e3cdd6877.png5fac0a569dae4b3bb3b7ba15905fa100.png526dd6679c0a4935a715e7144d518eee.pngb35ba183f166496aa82a6d16449eaaaa.pngc407be5a9011454591ad157853b038cc.png5668afb2353f4df1a3fc9db58cd51ab5.png
四、ssm610学生社团管理系统+vue【已测试】-部分代码设计

 
4.1.部分代码以及数据库如下:


package com.controller;import java.io.File;
import java.math.BigDecimal;
import java.net.URL;
import java.text.SimpleDateFormat;
import com.alibaba.fastjson.JSONObject;
import java.util.*;
import org.springframework.beans.BeanUtils;
import javax.servlet.http.HttpServletRequest;
import org.springframework.web.context.ContextLoader;
import javax.servlet.ServletContext;
import com.service.TokenService;
import com.utils.*;
import java.lang.reflect.InvocationTargetException;import com.service.DictionaryService;
import org.apache.commons.lang3.StringUtils;
import com.annotation.IgnoreAuth;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.entity.*;
import com.entity.view.*;
import com.service.*;
import com.utils.PageUtils;
import com.utils.R;
import com.alibaba.fastjson.*;/*** 社团活动* 后端接口* @author* @email
*/
@RestController
@Controller
@RequestMapping("/shetuanhuodong")
public class ShetuanhuodongController {private static final Logger logger = LoggerFactory.getLogger(ShetuanhuodongController.class);@Autowiredprivate ShetuanhuodongService shetuanhuodongService;@Autowiredprivate TokenService tokenService;@Autowiredprivate DictionaryService dictionaryService;//级联表service@Autowiredprivate ShetuanService shetuanService;@Autowiredprivate XueshengService xueshengService;@Autowiredprivate TuanzhangService tuanzhangService;/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params, HttpServletRequest request){logger.debug("page方法:,,Controller:{},,params:{}",this.getClass().getName(),JSONObject.toJSONString(params));String role = String.valueOf(request.getSession().getAttribute("role"));if(false)return R.error(511,"永不会进入");else if("学生".equals(role))params.put("xueshengId",request.getSession().getAttribute("userId"));else if("团长".equals(role))params.put("tuanzhangId",request.getSession().getAttribute("userId"));params.put("shetuanhuodongDeleteStart",1);params.put("shetuanhuodongDeleteEnd",1);if(params.get("orderBy")==null || params.get("orderBy")==""){params.put("orderBy","id");}PageUtils page = shetuanhuodongService.queryPage(params);//字典表数据转换List<ShetuanhuodongView> list =(List<ShetuanhuodongView>)page.getList();for(ShetuanhuodongView c:list){//修改对应字典表字段dictionaryService.dictionaryConvert(c, request);}return R.ok().put("data", page);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id, HttpServletRequest request){logger.debug("info方法:,,Controller:{},,id:{}",this.getClass().getName(),id);ShetuanhuodongEntity shetuanhuodong = shetuanhuodongService.selectById(id);if(shetuanhuodong !=null){//entity转viewShetuanhuodongView view = new ShetuanhuodongView();BeanUtils.copyProperties( shetuanhuodong , view );//把实体数据重构到view中//级联表ShetuanEntity shetuan = shetuanService.selectById(shetuanhuodong.getShetuanId());if(shetuan != null){BeanUtils.copyProperties( shetuan , view ,new String[]{ "id", "createTime", "insertTime", "updateTime"});//把级联的数据添加到view中,并排除id和创建时间字段view.setShetuanId(shetuan.getId());}//修改对应字典表字段dictionaryService.dictionaryConvert(view, request);return R.ok().put("data", view);}else {return R.error(511,"查不到数据");}}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody ShetuanhuodongEntity shetuanhuodong, HttpServletRequest request){logger.debug("save方法:,,Controller:{},,shetuanhuodong:{}",this.getClass().getName(),shetuanhuodong.toString());String role = String.valueOf(request.getSession().getAttribute("role"));if(false)return R.error(511,"永远不会进入");Wrapper<ShetuanhuodongEntity> queryWrapper = new EntityWrapper<ShetuanhuodongEntity>().eq("shetuan_id", shetuanhuodong.getShetuanId()).eq("shetuanhuodong_name", shetuanhuodong.getShetuanhuodongName()).eq("shetuanhuodong_types", shetuanhuodong.getShetuanhuodongTypes()).eq("shetuanhuodong_zuida", shetuanhuodong.getShetuanhuodongZuida()).eq("shetuanhuodong_delete", shetuanhuodong.getShetuanhuodongDelete());logger.info("sql语句:"+queryWrapper.getSqlSegment());ShetuanhuodongEntity shetuanhuodongEntity = shetuanhuodongService.selectOne(queryWrapper);if(shetuanhuodongEntity==null){shetuanhuodong.setShetuanhuodongDelete(1);shetuanhuodong.setCreateTime(new Date());shetuanhuodongService.insert(shetuanhuodong);return R.ok();}else {return R.error(511,"表中有相同数据");}}/*** 后端修改*/@RequestMapping("/update")public R update(@RequestBody ShetuanhuodongEntity shetuanhuodong, HttpServletRequest request){logger.debug("update方法:,,Controller:{},,shetuanhuodong:{}",this.getClass().getName(),shetuanhuodong.toString());String role = String.valueOf(request.getSession().getAttribute("role"));
//        if(false)
//            return R.error(511,"永远不会进入");//根据字段查询是否有相同数据Wrapper<ShetuanhuodongEntity> queryWrapper = new EntityWrapper<ShetuanhuodongEntity>().notIn("id",shetuanhuodong.getId()).andNew().eq("shetuan_id", shetuanhuodong.getShetuanId()).eq("shetuanhuodong_name", shetuanhuodong.getShetuanhuodongName()).eq("shetuanhuodong_types", shetuanhuodong.getShetuanhuodongTypes()).eq("shetuanhuodong_zuida", shetuanhuodong.getShetuanhuodongZuida()).eq("shetuanhuodong_delete", shetuanhuodong.getShetuanhuodongDelete());logger.info("sql语句:"+queryWrapper.getSqlSegment());ShetuanhuodongEntity shetuanhuodongEntity = shetuanhuodongService.selectOne(queryWrapper);if("".equals(shetuanhuodong.getShetuanhuodongPhoto()) || "null".equals(shetuanhuodong.getShetuanhuodongPhoto())){shetuanhuodong.setShetuanhuodongPhoto(null);}if(shetuanhuodongEntity==null){shetuanhuodongService.updateById(shetuanhuodong);//根据id更新return R.ok();}else {return R.error(511,"表中有相同数据");}}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Integer[] ids){logger.debug("delete:,,Controller:{},,ids:{}",this.getClass().getName(),ids.toString());ArrayList<ShetuanhuodongEntity> list = new ArrayList<>();for(Integer id:ids){ShetuanhuodongEntity shetuanhuodongEntity = new ShetuanhuodongEntity();shetuanhuodongEntity.setId(id);shetuanhuodongEntity.setShetuanhuodongDelete(2);list.add(shetuanhuodongEntity);}if(list != null && list.size() >0){shetuanhuodongService.updateBatchById(list);}return R.ok();}/*** 批量上传*/@RequestMapping("/batchInsert")public R save( String fileName){logger.debug("batchInsert方法:,,Controller:{},,fileName:{}",this.getClass().getName(),fileName);try {List<ShetuanhuodongEntity> shetuanhuodongList = new ArrayList<>();//上传的东西Map<String, List<String>> seachFields= new HashMap<>();//要查询的字段Date date = new Date();int lastIndexOf = fileName.lastIndexOf(".");if(lastIndexOf == -1){return R.error(511,"该文件没有后缀");}else{String suffix = fileName.substring(lastIndexOf);if(!".xls".equals(suffix)){return R.error(511,"只支持后缀为xls的excel文件");}else{URL resource = this.getClass().getClassLoader().getResource("static/upload/" + fileName);//获取文件路径File file = new File(resource.getFile());if(!file.exists()){return R.error(511,"找不到上传文件,请联系管理员");}else{List<List<String>> dataList = PoiUtil.poiImport(file.getPath());//读取xls文件dataList.remove(0);//删除第一行,因为第一行是提示for(List<String> data:dataList){//循环ShetuanhuodongEntity shetuanhuodongEntity = new ShetuanhuodongEntity();
//                            shetuanhuodongEntity.setShetuanId(Integer.valueOf(data.get(0)));   //团长 要改的
//                            shetuanhuodongEntity.setShetuanhuodongName(data.get(0));                    //社团活动名称 要改的
//                            shetuanhuodongEntity.setShetuanhuodongPhoto("");//照片
//                            shetuanhuodongEntity.setShetuanhuodongTypes(Integer.valueOf(data.get(0)));   //社团活动类型 要改的
//                            shetuanhuodongEntity.setShetuanhuodongZuida(Integer.valueOf(data.get(0)));   //最大活动人数 要改的
//                            shetuanhuodongEntity.setShetuanhuodongContent("");//照片
//                            shetuanhuodongEntity.setShetuanhuodongDelete(1);//逻辑删除字段
//                            shetuanhuodongEntity.setCreateTime(date);//时间shetuanhuodongList.add(shetuanhuodongEntity);//把要查询是否重复的字段放入map中}//查询是否重复shetuanhuodongService.insertBatch(shetuanhuodongList);return R.ok();}}}}catch (Exception e){return R.error(511,"批量插入数据异常,请联系管理员");}}/*** 前端列表*/@IgnoreAuth@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params, HttpServletRequest request){logger.debug("list方法:,,Controller:{},,params:{}",this.getClass().getName(),JSONObject.toJSONString(params));// 没有指定排序字段就默认id倒序if(StringUtil.isEmpty(String.valueOf(params.get("orderBy")))){params.put("orderBy","id");}PageUtils page = shetuanhuodongService.queryPage(params);//字典表数据转换List<ShetuanhuodongView> list =(List<ShetuanhuodongView>)page.getList();for(ShetuanhuodongView c:list)dictionaryService.dictionaryConvert(c, request); //修改对应字典表字段return R.ok().put("data", page);}/*** 前端详情*/@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id, HttpServletRequest request){logger.debug("detail方法:,,Controller:{},,id:{}",this.getClass().getName(),id);ShetuanhuodongEntity shetuanhuodong = shetuanhuodongService.selectById(id);if(shetuanhuodong !=null){//entity转viewShetuanhuodongView view = new ShetuanhuodongView();BeanUtils.copyProperties( shetuanhuodong , view );//把实体数据重构到view中//级联表ShetuanEntity shetuan = shetuanService.selectById(shetuanhuodong.getShetuanId());if(shetuan != null){BeanUtils.copyProperties( shetuan , view ,new String[]{ "id", "createDate"});//把级联的数据添加到view中,并排除id和创建时间字段view.setShetuanId(shetuan.getId());}//修改对应字典表字段dictionaryService.dictionaryConvert(view, request);return R.ok().put("data", view);}else {return R.error(511,"查不到数据");}}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody ShetuanhuodongEntity shetuanhuodong, HttpServletRequest request){logger.debug("add方法:,,Controller:{},,shetuanhuodong:{}",this.getClass().getName(),shetuanhuodong.toString());Wrapper<ShetuanhuodongEntity> queryWrapper = new EntityWrapper<ShetuanhuodongEntity>().eq("shetuan_id", shetuanhuodong.getShetuanId()).eq("shetuanhuodong_name", shetuanhuodong.getShetuanhuodongName()).eq("shetuanhuodong_types", shetuanhuodong.getShetuanhuodongTypes()).eq("shetuanhuodong_zuida", shetuanhuodong.getShetuanhuodongZuida()).eq("shetuanhuodong_delete", shetuanhuodong.getShetuanhuodongDelete());logger.info("sql语句:"+queryWrapper.getSqlSegment());ShetuanhuodongEntity shetuanhuodongEntity = shetuanhuodongService.selectOne(queryWrapper);if(shetuanhuodongEntity==null){shetuanhuodong.setShetuanhuodongDelete(1);shetuanhuodong.setCreateTime(new Date());shetuanhuodongService.insert(shetuanhuodong);return R.ok();}else {return R.error(511,"表中有相同数据");}}}

表4.1 论坛表

字段

注释

类型

id (主键)

主键

int(11)

forum_name

帖子标题

varchar(200)

xuesheng_id

学生

int(11)

tuanzhang_id

团长

int(11)

users_id

管理员

int(11)

forum_content

发布内容

text

super_ids

父id

int(11)

forum_state_types

帖子状态

int(11)

insert_time

发帖时间

timestamp

update_time

修改时间

timestamp

create_time

创建时间

timestamp

表4.2 社团表

字段

注释

类型

id (主键)

主键

int(11)

tuanzhang_id

团长

int(11)

shetuan_name

社团名称

varchar(200)

shetuan_photo

社团照片

varchar(200)

shetuan_types

社团类型

int(11)

shetuan_renshu

社团人数

int(11)

shetuan_clicknum

点击次数

int(11)

shetuan_content

社团详情

text

shetuan_delete

逻辑删除

int(11)

create_time

创建时间

timestamp

表4.3 社团活动表

字段

注释

类型

id (主键)

主键

int(11)

shetuan_id

团长

int(11)

shetuanhuodong_name

社团活动名称

varchar(200)

shetuanhuodong_photo

社团活动照片

varchar(200)

shetuanhuodong_types

社团活动类型

int(11)

shetuanhuodong_zuida

最大活动人数

int(11)

shetuanhuodong_content

社团活动介绍

text

shetuanhuodong_delete

逻辑删除

int(11)

create_time

创建时间

timestamp

表4.4 社团活动收藏表

字段

注释

类型

id (主键)

主键

int(11)

shetuanhuodong_id

社团活动

int(11)

xuesheng_id

学生

int(11)

shetuanhuodong_collection_types

类型

int(11)

insert_time

收藏时间

timestamp

create_time

创建时间

timestamp

表4.5 社团活动留言表

字段

注释

类型

id (主键)

主键

int(11)

shetuanhuodong_id

社团活动

int(11)

xuesheng_id

学生

int(11)

shetuanhuodong_liuyan_text

留言内容

text

insert_time

留言时间

timestamp

reply_text

回复内容

text

update_time

回复时间

timestamp

create_time

创建时间

timestamp

表4.6 社团活动申请表

字段

注释

类型

id (主键)

主键

int(11)

shetuanhuodong_order_uuid_number

订单号

varchar(200)

shetuanhuodong_id

社团活动

int(11)

xuesheng_id

学生

int(11)

shetuanhuodong_order_yesno_types

审核状态

int(11)

shetuanhuodong_order_yesno_text

审核意见

text

insert_time

预约时间

timestamp

create_time

创建时间

timestamp

表4.7 社团成员表

字段

注释

类型

id (主键)

主键

int(11)

xuesheng_id

学生

int(11)

shetuan_id

社团

int(11)

insert_time

加入时间

timestamp

create_time

创建时间

timestamp

表4.8 社团收藏表

字段

注释

类型

id (主键)

主键

int(11)

shetuan_id

社团

int(11)

xuesheng_id

学生

int(11)

shetuan_collection_types

类型

int(11)

insert_time

收藏时间

timestamp

create_time

创建时间

timestamp

表4.9 社团留言表

字段

注释

类型

id (主键)

主键

int(11)

shetuan_id

社团

int(11)

xuesheng_id

学生

int(11)

shetuan_liuyan_text

留言内容

text

insert_time

留言时间

timestamp

reply_text

回复内容

text

update_time

回复时间

timestamp

create_time

创建时间

timestamp

表4.10 社团申请表

字段

注释

类型

id (主键)

主键

int(11)

shetuan_order_uuid_number

订单号

varchar(200)

shetuan_id

社团

int(11)

xuesheng_id

学生

int(11)

shetuan_order_yesno_types

审核状态

int(11)

shetuan_order_yesno_text

审核意见

text

insert_time

预约时间

timestamp

create_time

创建时间

timestamp


五、-结束语

学生社团管理系统的开发不是一帆风顺的,虽然严格按照一定的开发流程来进行学生社团管理系统的开发,但是中间出现了很多突发情况。当题目选择之后,就开始查找资料,也不知道是查找方式问题还是阅历问题,感觉资料查的都是相关资料,但是当查到资料后看的一头雾水,好多都是与学生社团管理系统开发不相关的,像浪里淘沙一样过滤了很多无用的东西才收集到一点点对自己可用的。当定下功能功能的时候,又开始对功能进行分析,反复的判断功能直接的关系,是否存在逻辑问题。数据库的设计也是一大问题,也许是开发经验不足,当数据库设计好后,编码到一半发现考虑问题不够重复,编码实现太复杂,需要在对数据库表重新设计,返工很多遍。在开发过程中,看到同伴们在努力的开发自己也埋头苦干,最终实现了学生社团管理系统。

本次使用Java技术开发的学生社团管理系统,就是运用计算机来管理学生社团信息,该系统是可以实现团长管理,社团管理,社团申请管理,社团活动管理,社团活动申请管理,论坛管理,学生管理,社团活动留言管理等功能。符合设计预期。

经过整体的开发了解,发现了学生社团管理系统的不足之处,首先第一点就是开发人少,时间短,属于练手项目,所以很多实际生活中可能遇到的问题并没有考虑到位,比如数据的冗余,大数据并发等,这些都是没有考虑的,在以后的日子里将会对技术方面精益求精,不断修复学生社团管理系统,让学生社团管理系统更强壮。

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/344700.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

小熊家务帮day15-day17 预约下单模块(预约下单,熔断降级,支付功能,退款功能)

目录 1 预约下单1.1 需求分析1.1.1 业务流程1.1.2 订单状态 1.2 系统设计1.2.1 订单表设计1.2.2 表结构的设置 1.3 开发远程调用接口1.3.0 复习下远程调用的开发1.3.1 查询地址簿远程接口jzo2o-api工程定义接口Customer服务实现接口 1.3.2 查询服务&服务项远程接口jzo2o-ap…

运维 之 DNS域名解析

前言 我们每天打开的网站&#xff0c;他是如何来解析&#xff0c;并且我们怎么能得到网站的内容反馈的界面呢&#xff1f;那什么是DNS呢&#xff08;DNS&#xff08;DomainNameservice&#xff0c;域名服务&#xff0c;主要用于因特网上作为域名和IP地址相互映射&#xff09;那…

【iOS】MRC下的单例模式批量创建单例

单例模式的介绍和ARC下的单例请见这篇&#xff1a;【iOS】单例模式 目录 关闭ARC环境MRC下的单例ARC下的单例批量创建单例Demo 关闭ARC环境 首先关闭ARC环境&#xff0c;即打开MRC&#xff1a; 或是指定某特定目标文件为非ARC环境&#xff1a; 双击某个类文件&#xff0c;指定…

SpringBoot2+Vue3开发课程审核流程系统

SpringBoot2Vue3开发课程审核流程系统 简介 此系统实现了课程审核全流程功能并使用了Activiti7工作流技术&#xff0c;功能包含&#xff1a;课程管理、用户管理、流程定义、课程审核&#xff08;我的申请、我的代办、我的已办&#xff09; 功能介绍 课程管理 对课程信息的管…

C++的STL 中 set.map multiset.multimap 学习使用详细讲解(含配套OJ题练习使用详细解答)

目录 一、set 1.set的介绍 2.set的使用 2.1 set的模板参数列表 2.2 set的构造 2.3 set的迭代器 2.4 set的容量 2.5 set的修改操作 2.6 set的使用举例 二、map 1.map的介绍 2.map的使用 2.1 map的模板参数说明 2.2 map的构造 2.3 map的迭代器 2.4 map的容量与元…

API测试工具

apifox 微信扫描登录 不推荐&#xff1a; Download Postman

QT creator c动态链接库的创建与调用

QT creator c动态链接库的创建与调用 QT5.15.2 1.创建dll项目 确保两类型选择正确 2.选择MinGW 64-bit 3.点击完成 pro文件参考&#xff1a; QT - guiTEMPLATE lib DEFINES QT_DLL_DEMO_LIBRARYCONFIG c17# You can make your code fail to compile if it uses deprecat…

Flutter 使用ffigen生成ffmpeg的dart接口

Flutter视频渲染系列 第一章 Android使用Texture渲染视频 第二章 Windows使用Texture渲染视频 第三章 Linux使用Texture渲染视频 第四章 全平台FFICustomPainter渲染视频 第五章 Windows使用Native窗口渲染视频 第六章 桌面端使用texture_rgba_renderer渲染视频 第七章 使用ff…

以sqlilabs靶场为例,讲解SQL注入攻击原理【54-65关】

【Less-54】 与前面的题目不同是&#xff0c;这里只能提交10次&#xff0c;一旦提交超过十次&#xff0c;数据会重新刷新&#xff0c;所有的步骤需要重来一次。 解题步骤&#xff1a; 根据测试&#xff0c;使用的是单引号闭合。 # 判断字段的数量 ?id1 order by 3 -- aaa# …

.NET MAUI 了解MVVM

MVVM 模式中有三个核心组件&#xff1a;模型、视图和视图模型。 每个组件的用途不同。 下图显示了这三个组件之间的关系。 视图 视图负责定义用户在屏幕上看到的结构、布局和外观。 理想情况下&#xff0c;每个视图在 XAML 中定义&#xff0c;代码隐藏有限&#xff0c;不包含业…

(论文翻译)Coordinate Attention for Efficient Mobile Network Design(坐标注意力 CVPR2021)

Coordinate Attention for Efficient Mobile Network Design&#xff08;CVPR2021&#xff09; 文章目录 Coordinate Attention for Efficient Mobile Network Design&#xff08;CVPR2021&#xff09;摘要1.引言2.相关工作3.方法&#xff1a;Coordinate Attention3.1.Revisit …

RHEL8/Centos8 install for PXE

PXE介绍 PXE&#xff08;Preboot Execution Environment&#xff09;是预引导执行环境的缩写。它是由Intel设计的&#xff0c;允许客户端计算机通过网络从服务器上加载操作系统镜像。PXE通常用于大规模部署操作系统&#xff0c;例如在企业或学校环境中。 PXE工作流程如下&…

C++ | Leetcode C++题解之第139题单词拆分

题目&#xff1a; 题解&#xff1a; class Solution { public:bool wordBreak(string s, vector<string>& wordDict) {auto wordDictSet unordered_set <string> ();for (auto word: wordDict) {wordDictSet.insert(word);}auto dp vector <bool> (s.…

【el-tooltips改造】Vue实现文本溢出才显示el-tooltip,否则不显示el-tooltips

实现原理&#xff1a; 使用disabled属性控制el-tooltip的content显示与隐藏&#xff1b; 目标&#xff1a; 1行省略、多行省略、可缩放页面内的文本省略都有效。 实现方式&#xff1a; 1、自定义全局指令&#xff0c;tooltipAutoShow.js代码如下&#xff08;参考的el-table中的…

04 架构核心技术之分布式消息队列

本课时的主题是分布式消息队列&#xff0c;分布式消息队列的知识结构如下图。 本课时主要介绍以下内容。 同步架构和异步架构的区别。异步架构的主要组成部分&#xff1a;消息生产者、消息消费者、分布式消息队列。异步架构的两种主要模型&#xff1a;点对点模型和发布订阅模型…

C# 异步方法async / await 任务超时处理

一、需求 如果调用一个异步方法后&#xff0c;一直不给返回值结果怎么办呢&#xff1f;这就涉及到怎么取消任务了。 二、Task取消任务 static CancellationTokenSource source new CancellationTokenSource();static void Main(string[] args){Task.Run(() >{for (int i …

【基于C++与OpenCV实现魔方图像识别和还原算法】施工总览图

文章目录 主要效果展示思维导图魔方还原算法 本系列博客长期更新&#xff0c;分为两大部分 OpenCV实现魔方六面识别 C编写科先巴二阶段还原算法实现三阶魔方的还原 主要效果展示 摄像头识别六面 3D图像构建&#xff0c;提供还原公式 动画演示还原过程 思维导图 魔方还原算法 参…

PowerDesigner导入Excel模板生成数据表

PowerDesigner导入Excel模板生成数据表 1.准备好需要导入的Excel表结构数据,模板内容如下图所示 2.打开PowerDesigner,新建一个physical data model文件,填入文件名称,选择数据库类型 3.点击Tools|Execute Commands|Edit/Run Script菜单或按下快捷键Ctrl Shift X打开脚本窗口…

免费开源图片转文字识别软件:Umi-OCR

目录 1.介绍 2.项目亮点 3.项目功能&#xff08;已实现&#xff09; 4.功能体验 5.项目集成&#xff08;调用接口&#xff09; 6.项目地址 1.介绍 Umi-OCR&#xff1a;免费&#xff0c;开源&#xff0c;可批量的离线OCR软件&#xff0c;目前适用于 Windows7 x64 及以上。…

【机器人和人工智能——自主巡航赛项】进阶篇

文章目录 案例要求创建地图rviz仿真 保存地图坐标点定位识别训练主逻辑理解语音播报模块匹配二维码识别多点导航讲解视频其余篇章 案例要求 创建地图 ./1-gmapping.sh 把多个launch文件融合在sh文件里面 rviz仿真 rviz是rose集成的可视化界面&#xff0c;查看机器人的各项数…