基于ssm游戏美术外包管理信息系统源码和论文

摘 要

随着信息技术和网络技术的飞速发展,人类已进入全新信息化时代,线下管理技术已无法高效,便捷地管理信息。为了迎合时代需求,优化管理效率,各种各样的管理系统应运而生,各行各业相继进入信息管理时代,游戏美术外包管理信息系统就是信息时代变革中的产物之一。

任何系统都要遵循系统设计的基本流程,本系统也不例外,同样需要经过市场调研,需求分析,概要设计,详细设计,编码,测试这些步骤;以java语言设计为基础,实现了游戏美术外包管理信息系统。该系统基于B/S即所谓浏览器/服务器模式,应用java技术,选择MySQL作为后台数据库。系统主要包括系统首页,个人中心,用户管理,公司管理,作品信息管理,作品订单管理,外包需求管理,外包应征管理,流程追踪管理,在线交流管理,在线回复管理,管理员管理,留言反馈,系统管理等功能模块。

本文首先介绍了游戏美术外包管理信息技术发展背景与发展现状,然后遵循软件常规开发流程,首先针对系统选取适用的语言和开发平台,根据需求分析制定模块并设计数据库结构,再根据系统总体功能模块的设计绘制系统的功能模块图,流程图以及E-R图。然后,设计框架并根据设计的框架编写代码以实现系统的各个功能模块。最后,对初步完成的系统进行测试,主要是功能测试、单元测试和性能测试。测试结果表明,该系统能够实现所需的功能,运行状况尚可并无明显缺点。

关键词:游戏美术外包管理信息;java;MySQL数据库

基于ssm游戏美术外包管理信息系统源码和论文757

演示视频:

基于ssm游戏美术外包管理信息系统源码和论文


Abstract

With the rapid development of information technology and network technology, human beings have entered a new information age, offline management technology has been unable to efficiently and conveniently manage information. In order to meet the needs of The Times and optimize the management efficiency, a variety of management systems have emerged. All walks of life have entered the information management era. The game art outsourcing management information system is one of the products in the information era.

Any system should follow the basic process of system design, this system is no exception, also need to go through market research, demand analysis, outline design, detailed design, coding, testing these steps; Based on Java language design, the game art outsourcing management information system is implemented. The system is based on B/S browser/server mode, the application of Java technology, MySQL as the background database. The system mainly includes system home page, personal center, user management, company management, works information management, works order management, outsourcing demand management, outsourcing application management, process tracking management, online communication management, online response management, administrator management, message feedback, system management and other functional modules.

This article first introduced the game art outsourcing management development background and current situation of the development of information technology, and then follow the routine software development process, first of all, in view of the system and the selection of suitable language development platform, according to the requirement analysis module and database structure design, and then based on the system's overall function module design rendering system function module chart, flow diagram and e-r diagram. Then, design the framework and write code according to the designed framework to achieve each functional module of the system. Finally, the preliminary completed system is tested, mainly functional test, unit test and performance test. The test results show that the system can achieve the required functions, and the running condition is fair and there is no obvious defect.

Key words: Game art outsourcing management information; Java; The MySQL database

package com.controller;import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;import com.entity.GongsiEntity;
import com.entity.view.GongsiView;import com.service.GongsiService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;/*** 公司* 后端接口* @author * @email * @date 2022-03-29 16:14:51*/
@RestController
@RequestMapping("/gongsi")
public class GongsiController {@Autowiredprivate GongsiService gongsiService;@Autowiredprivate TokenService tokenService;/*** 登录*/@IgnoreAuth@RequestMapping(value = "/login")public R login(String username, String password, String captcha, HttpServletRequest request) {GongsiEntity user = gongsiService.selectOne(new EntityWrapper<GongsiEntity>().eq("zhanghao", username));if(user==null || !user.getMima().equals(password)) {return R.error("账号或密码不正确");}if("否".equals(user.getSfsh())) return R.error("账号已锁定,请联系管理员审核。");String token = tokenService.generateToken(user.getId(), username,"gongsi",  "公司" );return R.ok().put("token", token);}/*** 注册*/@IgnoreAuth@RequestMapping("/register")public R register(@RequestBody GongsiEntity gongsi){//ValidatorUtils.validateEntity(gongsi);GongsiEntity user = gongsiService.selectOne(new EntityWrapper<GongsiEntity>().eq("zhanghao", gongsi.getZhanghao()));if(user!=null) {return R.error("注册用户已存在");}Long uId = new Date().getTime();gongsi.setId(uId);gongsiService.insert(gongsi);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");GongsiEntity user = gongsiService.selectById(id);return R.ok().put("data", user);}/*** 密码重置*/@IgnoreAuth@RequestMapping(value = "/resetPass")public R resetPass(String username, HttpServletRequest request){GongsiEntity user = gongsiService.selectOne(new EntityWrapper<GongsiEntity>().eq("zhanghao", username));if(user==null) {return R.error("账号不存在");}user.setMima("123456");gongsiService.updateById(user);return R.ok("密码已重置为:123456");}/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,GongsiEntity gongsi, HttpServletRequest request){EntityWrapper<GongsiEntity> ew = new EntityWrapper<GongsiEntity>();PageUtils page = gongsiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, gongsi), params), params));return R.ok().put("data", page);}/*** 前端列表*/@IgnoreAuth@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,GongsiEntity gongsi, HttpServletRequest request){EntityWrapper<GongsiEntity> ew = new EntityWrapper<GongsiEntity>();PageUtils page = gongsiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, gongsi), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list( GongsiEntity gongsi){EntityWrapper<GongsiEntity> ew = new EntityWrapper<GongsiEntity>();ew.allEq(MPUtil.allEQMapPre( gongsi, "gongsi")); return R.ok().put("data", gongsiService.selectListView(ew));}/*** 查询*/@RequestMapping("/query")public R query(GongsiEntity gongsi){EntityWrapper< GongsiEntity> ew = new EntityWrapper< GongsiEntity>();ew.allEq(MPUtil.allEQMapPre( gongsi, "gongsi")); GongsiView gongsiView =  gongsiService.selectView(ew);return R.ok("查询公司成功").put("data", gongsiView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){GongsiEntity gongsi = gongsiService.selectById(id);return R.ok().put("data", gongsi);}/*** 前端详情*/@IgnoreAuth@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id){GongsiEntity gongsi = gongsiService.selectById(id);return R.ok().put("data", gongsi);}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody GongsiEntity gongsi, HttpServletRequest request){gongsi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(gongsi);GongsiEntity user = gongsiService.selectOne(new EntityWrapper<GongsiEntity>().eq("zhanghao", gongsi.getZhanghao()));if(user!=null) {return R.error("用户已存在");}gongsi.setId(new Date().getTime());gongsiService.insert(gongsi);return R.ok();}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody GongsiEntity gongsi, HttpServletRequest request){gongsi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(gongsi);GongsiEntity user = gongsiService.selectOne(new EntityWrapper<GongsiEntity>().eq("zhanghao", gongsi.getZhanghao()));if(user!=null) {return R.error("用户已存在");}gongsi.setId(new Date().getTime());gongsiService.insert(gongsi);return R.ok();}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody GongsiEntity gongsi, HttpServletRequest request){//ValidatorUtils.validateEntity(gongsi);gongsiService.updateById(gongsi);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){gongsiService.deleteBatchIds(Arrays.asList(ids));return R.ok();}/*** 提醒接口*/@RequestMapping("/remind/{columnName}/{type}")public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request, @PathVariable("type") String type,@RequestParam Map<String, Object> map) {map.put("column", columnName);map.put("type", type);if(type.equals("2")) {SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");Calendar c = Calendar.getInstance();Date remindStartDate = null;Date remindEndDate = null;if(map.get("remindstart")!=null) {Integer remindStart = Integer.parseInt(map.get("remindstart").toString());c.setTime(new Date()); c.add(Calendar.DAY_OF_MONTH,remindStart);remindStartDate = c.getTime();map.put("remindstart", sdf.format(remindStartDate));}if(map.get("remindend")!=null) {Integer remindEnd = Integer.parseInt(map.get("remindend").toString());c.setTime(new Date());c.add(Calendar.DAY_OF_MONTH,remindEnd);remindEndDate = c.getTime();map.put("remindend", sdf.format(remindEndDate));}}Wrapper<GongsiEntity> wrapper = new EntityWrapper<GongsiEntity>();if(map.get("remindstart")!=null) {wrapper.ge(columnName, map.get("remindstart"));}if(map.get("remindend")!=null) {wrapper.le(columnName, map.get("remindend"));}int count = gongsiService.selectCount(wrapper);return R.ok().put("count", count);}}
package com.controller;import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;import com.entity.ZaixianhuifuEntity;
import com.entity.view.ZaixianhuifuView;import com.service.ZaixianhuifuService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;/*** 在线回复* 后端接口* @author * @email * @date 2022-03-29 16:14:52*/
@RestController
@RequestMapping("/zaixianhuifu")
public class ZaixianhuifuController {@Autowiredprivate ZaixianhuifuService zaixianhuifuService;/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,ZaixianhuifuEntity zaixianhuifu, HttpServletRequest request){String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("yonghu")) {zaixianhuifu.setYonghuming((String)request.getSession().getAttribute("username"));}if(tableName.equals("gongsi")) {zaixianhuifu.setZhanghao((String)request.getSession().getAttribute("username"));}EntityWrapper<ZaixianhuifuEntity> ew = new EntityWrapper<ZaixianhuifuEntity>();PageUtils page = zaixianhuifuService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, zaixianhuifu), params), params));return R.ok().put("data", page);}/*** 前端列表*/@IgnoreAuth@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,ZaixianhuifuEntity zaixianhuifu, HttpServletRequest request){EntityWrapper<ZaixianhuifuEntity> ew = new EntityWrapper<ZaixianhuifuEntity>();PageUtils page = zaixianhuifuService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, zaixianhuifu), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list( ZaixianhuifuEntity zaixianhuifu){EntityWrapper<ZaixianhuifuEntity> ew = new EntityWrapper<ZaixianhuifuEntity>();ew.allEq(MPUtil.allEQMapPre( zaixianhuifu, "zaixianhuifu")); return R.ok().put("data", zaixianhuifuService.selectListView(ew));}/*** 查询*/@RequestMapping("/query")public R query(ZaixianhuifuEntity zaixianhuifu){EntityWrapper< ZaixianhuifuEntity> ew = new EntityWrapper< ZaixianhuifuEntity>();ew.allEq(MPUtil.allEQMapPre( zaixianhuifu, "zaixianhuifu")); ZaixianhuifuView zaixianhuifuView =  zaixianhuifuService.selectView(ew);return R.ok("查询在线回复成功").put("data", zaixianhuifuView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){ZaixianhuifuEntity zaixianhuifu = zaixianhuifuService.selectById(id);return R.ok().put("data", zaixianhuifu);}/*** 前端详情*/@IgnoreAuth@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id){ZaixianhuifuEntity zaixianhuifu = zaixianhuifuService.selectById(id);return R.ok().put("data", zaixianhuifu);}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody ZaixianhuifuEntity zaixianhuifu, HttpServletRequest request){zaixianhuifu.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(zaixianhuifu);zaixianhuifuService.insert(zaixianhuifu);return R.ok();}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody ZaixianhuifuEntity zaixianhuifu, HttpServletRequest request){zaixianhuifu.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(zaixianhuifu);zaixianhuifuService.insert(zaixianhuifu);return R.ok();}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody ZaixianhuifuEntity zaixianhuifu, HttpServletRequest request){//ValidatorUtils.validateEntity(zaixianhuifu);zaixianhuifuService.updateById(zaixianhuifu);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){zaixianhuifuService.deleteBatchIds(Arrays.asList(ids));return R.ok();}/*** 提醒接口*/@RequestMapping("/remind/{columnName}/{type}")public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request, @PathVariable("type") String type,@RequestParam Map<String, Object> map) {map.put("column", columnName);map.put("type", type);if(type.equals("2")) {SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");Calendar c = Calendar.getInstance();Date remindStartDate = null;Date remindEndDate = null;if(map.get("remindstart")!=null) {Integer remindStart = Integer.parseInt(map.get("remindstart").toString());c.setTime(new Date()); c.add(Calendar.DAY_OF_MONTH,remindStart);remindStartDate = c.getTime();map.put("remindstart", sdf.format(remindStartDate));}if(map.get("remindend")!=null) {Integer remindEnd = Integer.parseInt(map.get("remindend").toString());c.setTime(new Date());c.add(Calendar.DAY_OF_MONTH,remindEnd);remindEndDate = c.getTime();map.put("remindend", sdf.format(remindEndDate));}}Wrapper<ZaixianhuifuEntity> wrapper = new EntityWrapper<ZaixianhuifuEntity>();if(map.get("remindstart")!=null) {wrapper.ge(columnName, map.get("remindstart"));}if(map.get("remindend")!=null) {wrapper.le(columnName, map.get("remindend"));}String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("yonghu")) {wrapper.eq("yonghuming", (String)request.getSession().getAttribute("username"));}if(tableName.equals("gongsi")) {wrapper.eq("zhanghao", (String)request.getSession().getAttribute("username"));}int count = zaixianhuifuService.selectCount(wrapper);return R.ok().put("count", count);}}

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

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

相关文章

[Linux] Apache的配置与运用

一、web虚拟主机的构台服务器上运行多个网站&#xff0c;每个网站实际上并不独立占用整个服务器&#xff0c;因此称为"虚拟"虚拟主机的虚拟主机服务可以让您充分利用服务器的硬件资源&#xff0c;大大降低了建立和运营网站的成本 Httpd服务使构建虚拟主机服务器变得容…

基于SSM的志愿者管理系统

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;Vue 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#xff1a;是 目录…

C语言—每日选择题—Day51

第一题 1. 对于函数void f(int x);&#xff0c;下面调用正确的是&#xff08;&#xff09; A&#xff1a;int y f(9); B&#xff1a;f(9); C&#xff1a;f( f(9) ); D&#xff1a;xf(); 答案及解析 B 函数调用要看返回值和传参是否正确&#xff1b; A&#xff1a;错误&#xf…

ca-certificates.crt解析加载到nssdb中

openssl crl2pkcs7 -nocrl -certfile /etc/ssl/certs/ca-certificates.crt | openssl pkcs7 -print_certs -noout -text ca-certificates.crt为操作系统根证书列表。 获取证书以后使用PK11_ImportDERCert将证书导入到nssdb中 base::FilePath cert_path base::FilePath("…

6.23删除二叉搜索树中的节点(LC450-M)

算法&#xff1a; 一共有五种可能的情况&#xff1a; 第一种情况&#xff1a;没找到删除的节点&#xff0c;遍历到空节点直接返回了找到删除的节点 第二种情况&#xff1a;左右孩子都为空&#xff08;叶子节点&#xff09;&#xff0c;直接删除节点&#xff0c; 返回NULL为根…

基于springboot乐器视频学习网站设计与实现

项目描述 临近学期结束&#xff0c;还是毕业设计&#xff0c;你还在做java程序网络编程&#xff0c;期末作业&#xff0c;老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等。你想解决的问题&#xff0c;今天给大家介绍…

讲座 | 颠覆传统摄像方式乃至计算机视觉的“脉冲视觉”

传统相机拍摄视频时其实是以一定帧率进行采样&#xff0c;视频其实还是一串图片的集合&#xff0c;因此低帧率时会觉得视频卡&#xff0c;拍摄高速运动物体时会有运动模糊等等问题。然而你能想象这一切都可以被“脉冲视觉”这一前沿技术改变吗&#xff1f; 今天下午听了北京大学…

【从零开始学习JVM | 第七篇】深入了解 堆回收

前言&#xff1a; Java堆作为内存管理中最核心的一部分&#xff0c;承担着对象实例的存储和管理任务。堆内存的高效使用对于保障程序的性能和稳定性至关重要。因此&#xff0c;深入理解Java堆回收的原理、机制和优化策略&#xff0c;对于Java开发人员具有重要的意义。 本文旨在…

C++相关闲碎记录(16)

1、正则表达式 &#xff08;1&#xff09;regex的匹配和查找接口 #include <regex> #include <iostream> using namespace std;void out (bool b) {cout << ( b ? "found" : "not found") << endl; }int main() {// find XML/H…

ProroBuf C++笔记

一.什么是protobuf Protocol Buffers是Google的⼀种语⾔⽆关、平台⽆关、可扩展的序列化结构数据的⽅法&#xff0c;它可⽤于&#xff08;数据&#xff09;通信协议、数据存储等。Protocol Buffers 类⽐于XML&#xff0c;是⼀种灵活&#xff0c;⾼效&#xff0c;⾃动化机制的结…

SpringData自定义操作

一、JPQL和SQL 查询 package com.kuang.repositories;import com.kuang.pojo.Customer; import org.springframework.data.jpa.repository.Query; import org.springframework.data.repository.CrudRepository; import org.springframework.data.repository.PagingAndSortingR…

Java研学-HTML

HTML 1 介绍 HTML(Hypertext Markup Language) 超文本标记语言。静态网页&#xff0c;用于在浏览器上显示数据 超文本: 指页面内可以包含图片、链接&#xff0c;甚至音乐、程序等非文字元素。 标记语言: 使用 < > 括起来的语言 超文本标记语言的结构, 包括“头”部分&am…

javaEE -17(13000字 CSS3 入门级教程)

一&#xff1a;CSS3 简介 CSS3 是 CSS2 的升级版本&#xff0c;它在 CSS2 的基础上&#xff0c;新增了很多强大的新功能&#xff0c;从而解决一些实际面临的问题&#xff0c;CSS3 在未来会按照模块化的方式去发展&#xff1a;https://www.w3.org/Style/CSS/current-work.html …

Guardrails for Amazon Bedrock 基于具体使用案例与负责任 AI 政策实现定制式安全保障(预览版)

作为负责任的人工智能&#xff08;AI&#xff09;战略的一部分&#xff0c;您现在可以使用 Guardrails for Amazon Bedrock&#xff08;预览版&#xff09;&#xff0c;实施专为您的用例和负责任的人工智能政策而定制的保障措施&#xff0c;以此促进用户与生成式人工智能应用程…

电子/计算机专业词汇中法对照(持续更新)

文章目录 【计算机词汇】计算机基础符号数据结构与算法网络编程 | ProgrammationGit 【电气词汇】电气基础数电&模电电气 【数学词汇】基础数学电气类数学缩写控制理论 | Systme linaire/asservi | Asservissement 【管理词汇】财政|市场 |Finance|Marketing 【计算机词汇】…

TCP/UDP 的特点、区别及优缺点

1.TCP协议 传输控制协议&#xff08;TCP&#xff0c;Transmission Control Protocol&#xff09;是一种面向连接的、可靠的、基于字节流的传输层通信协议。TCP协议通过建立连接、数据确认&#xff08;编段号和确认号&#xff09;和数据重传等机制&#xff0c;保证了数据的可靠性…

智能优化算法应用:基于哈里斯鹰算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于哈里斯鹰算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于哈里斯鹰算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.哈里斯鹰算法4.实验参数设定5.算法结果6.…

【ArkTS】循环控制与List的使用

ArkTS如何进行循环渲染 现有数据如下 class Item{name:stringimage:Resourceprice:numberdicount:numberconstructor(name:string,image:Resource,price:number,dicount?:number) {this.name namethis.image imagethis.price pricethis.dicount dicount} }private items…

力扣72. 编辑距离

动态规划 思路&#xff1a; 假设 dp[i][j] 是 word1 前 i 个字母到 word2 前 j 个字母的编辑距离&#xff1b;那么状态 dp[i][j] 状态的上一个状态有&#xff1a; dp[i - 1][j]&#xff0c;word1 前 i - 1 个字母到 word2 前 j 个字母的编辑距离&#xff0c;此状态再插入一个字…

linux性能优化-上下文切换

如何理解上下文切换 Linux 是一个多任务操作系统&#xff0c;它支持远大于 CPU 数量的任务同时运行&#xff0c;这是通过频繁的上下文切换、将CPU轮流分配给不同任务从而实现的。 CPU 上下文切换&#xff0c;就是先把前一个任务的 CPU 上下文&#xff08;CPU 寄存器和程序计数…