基于JAVA+SpringBoot+UniApp+Vue的前后端分离的手机移动端图书借阅平台

news2024/11/9 1:42:31

✌全网粉丝20W+,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌

🍅文末获取项目下载方式🍅


一、项目背景介绍:

随着社会信息化的快速发展,图书馆作为知识传播和学术研究的重要场所,扮演着不可替代的角色。然而,传统的图书馆借阅方式存在一些问题,如人工操作复杂、排队等待时间长、信息交流不便等。为了提高用户体验、优化图书管理效率,图书馆借阅系统的引入成为了迫切需求。

目前,一些图书馆已经开始引入计算机技术来改进借阅流程,并且不断涌现出各种图书借阅系统。这些系统通过应用先进的技术手段,例如互联网和移动设备等,实现了更高效、便捷的图书借阅方式,受到了广泛的欢迎和应用。

然而,在一些小型图书馆或教育机构中,仍然存在着借阅过程繁琐、信息不透明、借还效率低等问题。因此,开发一套基于Spring Boot、Vue.js和uni-app的图书借阅系统具有重要的实际意义和研究价值。

该系统将利用Spring Boot提供的快速开发和便捷部署的特性,基于Vue.js构建友好的用户界面,并使用uni-app实现跨平台的移动应用。通过这个系统,用户可以方便地浏览图书信息、进行在线借阅、查询借阅记录等操作;管理员可以进行图书管理、借阅管理、统计分析等工作。这将大大提高图书馆的服务质量和管理效率。

因此,本研究旨在设计与实现一套基于Spring Boot、Vue.js和uni-app的图书借阅系统,以满足用户借阅需求,提高图书馆服务质量和管理效率,促进图书馆建设的数字化和智能化进程。通过对系统的开发和实施,将探索先进技术在图书借阅领域的应用,为类似机构提供参考和借鉴。

二、项目技术简介:

  1. JAVA:Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。
  2. Vue:Vue (发音为 /vjuː/,类似 view) 是一款用于构建用户界面的JavaScript框架。它基于标准HTML、CSS和JavaScript构建,并提供了一套声明式的、组件化的编程模型,帮助开发者高效地开发用户界面。
    Vue是一个独立的社区驱动的项目,它是由尤雨溪在2014年作为其个人项目创建, 是一个成熟的、经历了无数实战考验的框架,它是目前生产环境中使用最广泛的JavaScript框架之一,可以轻松处理大多数web应用的场景,并且几乎不需要手动优化,并且Vue完全有能力处理大规模的应用。
  3. SpringBoot:Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。
  4. Mybatis-Plus:MyBatis-Plus(简称 MP)是一个 MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为 简化开发、提高效率而生。
  5. smart:微信小程序,小程序的一种,英文名Wechat Mini Program,是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或搜一下即可打开应用。
    全面开放申请后,主体类型为企业、政府、媒体、其他组织或个人的开发者,均可申请注册小程序。微信小程序、微信订阅号、微信服务号、微信企业号是并行的体系。
    微信小程序是一种不用下载就能使用的应用,也是一项创新,经过将近两年的发展,已经构造了新的微信小程序开发环境和开发者生态。微信小程序也是这么多年来中国IT行业里一个真正能够影响到普通程序员的创新成果,已经有超过150万的开发者加入到了微信小程序的开发,与我们一起共同发力推动微信小程序的发展,微信小程序应用数量超过了一百万,覆盖200多个细分的行业,日活用户达到两个亿,微信小程序还在许多城市实现了支持地铁、公交服务。微信小程序发展带来更多的就业机会,2017年小程序带动就业104万人,社会效应不断提升。
  6. Redis:redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。
    Redis 是一个高性能的key-value数据库。 redis的出现,很大程度补偿了memcached这类key/value存储的不足,在部 分场合可以对关系数据库起到很好的补充作用。它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客户端,使用很方便。

三、系统功能模块介绍:

请添加图片描述

四、数据库设计:

1:advertisement(advertisement)

字段名类型默认值列注释
idbigintNULL主键
titlevarcharNULL发送标题
typetinyintNULL类型
Banner
提示
弹窗
contenttextNULL发送内容
covervarcharNULL图片
statetinyintNULL状态
creatorbigintNULL创建者
add_timedatetimeNULL创建时间
editorbigintNULL编辑者
edit_timedatetimeNULL编辑时间
deletedtinyintNULL逻辑删除

2:attachment(attachment)

字段名类型默认值列注释
idintNULL主键
file_namevarcharNULL文件原名
file_sizeintNULL附件大小
file_typevarcharNULL附件类型
namevarcharNULL附件名称
urlvarcharNULL附件地址
save_pathvarcharNULL保存路径
add_timedatetimeNULL添加时间

3:dict(dict)

字段名类型默认值列注释
idintNULL主键
namevarcharNULL组名
codevarcharNULL编码
remarkvarcharNULL信息

4:dict_item(dict_item)

字段名类型默认值列注释
idintNULL主键
dict_idintNULL组id
namevarcharNULL名称
infovarcharNULL说明

5:notice(notice)

字段名类型默认值列注释
idbigintNULLid
titlevarcharNULL公告标题
contenttextNULL公告内容
creatorbigintNULL创建人
editorbigintNULL编辑人
add_timedatetimeNULL添加时间
edit_timedatetimeNULL编辑时间
deletedtinyintNULL删除标记

6:org(org)

字段名类型默认值列注释
idbigintNULL主键
pidbigintNULL上级
namevarcharNULL名称
shortnamevarcharNULL简称
leveltinyintNULL级别
id_pathvarcharNULL路径
name_pathvarcharNULL部门名路径
contact_namevarcharNULL联系人
phonevarcharNULL联系电话
emailvarcharNULLEmail
infovarcharNULL描述
statetinyintNULL是否有效
creatorbigintNULL创建人
add_timedatetimeNULL添加时间
editorbigintNULL编辑人
edit_timedatetimeNULL编辑时间
addressvarcharNULL地址
deletedtinyintNULL逻辑删除

7:setting(setting)

字段名类型默认值列注释
idintNULL主键
typeintNULL类型
namevarcharNULL名称
codevarcharNULL
valuevarcharNULL
value_typevarcharNULL值数据类型
infovarcharNULL说明

8:staff(staff)

字段名类型默认值列注释
idbigintNULLid
namevarcharNULL姓名
mobilevarcharNULL手机号
passwordvarcharNULL密码
birthdaydateNULL生日
gendertinyintNULL性别
id_cardvarcharNULL身份证
schoolvarcharNULL毕业院校
degreetinyintNULL学历
head_imgvarcharNULL头像
hire_datedateNULL入职日期
fire_datedateNULL离职日期
introvarcharNULL简介
statetinyintNULL在职状态
creatorbigintNULL创建人
add_timedatetimeNULL创建时间
editorbigintNULL编辑人
edit_timedatetimeNULL编辑时间
deletedtinyintNULL是否删除
org_idbigintNULL所属组织部门ID

9:‘员工角色’(staff_role)

字段名类型默认值列注释
idintNULL自增id
staff_idbigintNULL员工id
role_idintNULL角色id

10:sys_log(sys_log)

字段名类型默认值列注释
idbigintNULL主键
operatorbigintNULL操作人
user_idbigintNULL用户id
typevarcharNULL类型
infovarcharNULL信息
pathvarcharNULL路径
urlvarcharNULL请求地址
methodvarcharNULL请求方法
paramtextNULL参数
ipvarcharNULLIP地址
browser_namevarcharNULL浏览器名
browser_vervarcharNULL浏览器版本
os_namevarcharNULL系统名称
add_timedatetimeNULL日志时间
time_costintNULL响应时间毫秒
org_idbigintNULL所属组织ID

11:‘权限’(sys_permission)

字段名类型默认值列注释
idintNULL自增id
namevarcharNULL菜单名称
urlvarcharNULLurl
codevarcharNULL代码
enabledsmallintNULL是否启用 1 启用,0 禁用
group_namevarcharNULL分组

12:‘角色’(sys_role)

字段名类型默认值列注释
idintNULL自增id
namevarcharNULL角色名称
codevarcharNULL角色编码

13:‘角色权限’(sys_role_permission)

字段名类型默认值列注释
idintNULL自增id
role_idintNULL角色id
permission_idintNULL菜单id

14:‘用户表’(user)

字段名类型默认值列注释
idbigintNULL用户主键
namevarcharNULL昵称
avatarvarcharNULL头像
mobilevarcharNULL手机号/账号
passwordvarcharNULL密码
balancedecimalNULL余额
login_timesintNULL登录次数
latest_login_timedatetimeNULL上次登录时间
latest_login_ipvarcharNULL上次登录ip
remarkvarcharNULL备注
statetinyintNULL账号状态
add_timedatetimeNULL注册时间
deletedtinyintNULL逻辑删除

15:‘图书表’(z_book)

字段名类型默认值列注释
idintNULLid
info_idintNULL书本信息id
codevarcharNULL书本编号
stateintNULL状态
user_idbigintNULL借阅者
library_idintNULL图书馆id
editorbigintNULL更新者
edit_timedatetimeNULL更新时间
deletedintNULL逻辑删除

16:‘图书信息表’(z_bookinfo)

字段名类型默认值列注释
idintNULLid
codevarcharNULL图书编码
namevarcharNULL书名
authorvarcharNULL主编/作者
covervarcharNULL封面
isbnbigintNULLisbn
pressvarcharNULL出版社
versiontinyintNULL版次
public_timedateNULL出版时间
num_pagesintNULL页数
introducevarcharNULL简介
type_idintNULL类型id
creatorbigintNULL创建者
add_timedatetimeNULL创建时间
editorbigintNULL更新者
edit_timedatetimeNULL更新时间
deletedtinyintNULL逻辑删除
b_numintNULL借阅次数
v_numintNULL查看次数

17:‘图书类型表’(z_booktype)

字段名类型默认值列注释
idintNULLid
namevarcharNULL类型名字
codevarcharNULL代码
introducevarcharNULL简介
subareavarcharNULL分区
numintNULL排号

18:‘图书借阅记录’(z_borrow)

字段名类型默认值列注释
idintNULLid
bnvarcharNULL借阅号
user_idbigintNULL用户id
book_idintNULL书本号
add_timedatetimeNULL借阅时间
overdue_datedateNULL逾期日期
stateintNULL借阅状态
return_timedatetimeNULL归还时间
remarkvarcharNULL备注
deletedintNULL逻辑删除

19:z_idCard(z_idCard)

字段名类型默认值列注释
idbigintNULL
namevarcharNULL
id_novarcharNULL
stateintNULL
addressvarcharNULL
birthdayvarcharNULL
sexintNULL
ageintNULL
user_idintNULL

20:‘身份信息表’(z_idcard)

字段名类型默认值列注释
idintNULLid
namevarcharNULL名字
id_novarcharNULL身份证号码
stateintNULL审核状态
remarkvarcharNULL验证结果信息
addressvarcharNULL地址
birthdaydateNULL生日
sexintNULL性别
ageintNULL年龄
user_idbigintNULL用户id

21:‘图书馆表’(z_library)

字段名类型默认值列注释
idintNULL
namevarcharNULL名字
short_namevarcharNULL简称
codevarcharNULL编码
addressvarcharNULL地址
adminbigintNULL管理员
introducevarcharNULL介绍
creatorbigintNULL创建者
add_timedatetimeNULL创建时间
editorbigintNULL编辑者
edit_timedatetimeNULL编辑时间
deletedtinyintNULL逻辑删除

22:z_overdue(z_overdue)

字段名类型默认值列注释
idintNULLid
dnvarcharNULL逾期单号
book_idintNULL图书id
borrow_idintNULL借阅id
user_idbigintNULL用户id
overdue_datedateNULL逾期日期
return_datedateNULL归还时间
pay_typeintNULL支付方式
amountdecimalNULL金额
pay_timedatetimeNULL支付时间
stateintNULL状态
deletedtinyintNULL逻辑删除
remarkvarcharNULL备注

23:z_recharge(z_recharge)

字段名类型默认值列注释
idintNULL主键
rnvarcharNULL充值单号
user_idbigintNULL用户id
pay_typeintNULL支付方式
amountdecimalNULL充值金额
stateintNULL状态
remarkvarcharNULL备注
pay_timedatetimeNULL充值时间
deletedintNULL逻辑删除

24:z_section(z_section)

字段名类型默认值列注释
idintNULLid
titlevarcharNULL章节
contentvarcharNULL内容
info_idintNULL关联图书

五、功能模块:

  1. 小程序端(用户端)-登录注册:用户通过手机号进行登录注册,系统模拟短信验证码的功能进行校验

小程序端(用户端)-登录注册

  1. 系统首页:用户可以在系统首页查看公告信息,借阅记录,图书检索,当前借阅情况,预期缴费,以及图书推荐等功能。

    系统首页

  2. 图书详情:详情包括图书的基本信息,图书的章节目录,以及图书所在的图书馆和剩余的可借书的状态等,点击扫码借阅可以借阅图书

    3

    4

  3. 图书分类:用户可以在图书分类页面根据不同的分类检索图书,并查看图书的详细信息,也可以通过扫码借阅功能进行借书。

    图书分类

  4. 个人中心:用户可以在个人中心页面查看图书借阅即将预期情况,预期未归还情况,欠缴费单量,以及借阅记录等信息。也可以进行在线充值、模拟借书还书操作,以及管理自己的个人信息。

    个人中心

    9

  5. 运营驾驶舱:管理员可以在运营驾驶舱页面查看数据中心的统计信息。

    运营驾驶舱

  6. 用户管理:管理员可以在用户管理页面管理所有用户的账户信息以及充值记录。

    用户管理

  7. 图书管理:管理员可以在图书管理页面管理图书信息以及图书类型,同时也可以管理书店信息。

    图书管理

  8. 借阅管理:管理员可以在借阅管理页面查看所有借阅记录、预期缴费情况等信息。

    借阅管理

  9. 用户公告管理:管理员可以在用户公告管理页面管理用户公告信息。

    用户公告管理

  10. 数据中心:管理员可以在数据中心页面查看图书统计信息、用户统计信息以及借阅统计信息等。

    数据中心

  11. 部门人员管理:管理员可以在部门人员管理页面管理部门信息和员工信息。

    部门人员管理

  12. 系统管理:管理员可以在系统管理页面管理内部公告和系统参数等。

    系统管理

六、代码示例:

@RestController
@RequestMapping(USER_APP_URL_PREFIX+"/borrow")
@Api(value = "借阅记录移动端接口", tags = "移动端接口")
public class UBorrowController {
    @Autowired
    private BorrowService borrowService;

    @ApiOperation("借阅记录")
    @GetMapping("/list")
    public Object list(@RequestParam("state") Integer state) {
        BorrowListParamDTO param = new BorrowListParamDTO(UserAuthUtil.getCurrentUserId(),state);
        return borrowService.getBorrowList(param);
    }
    @ApiOperation("归还记录")
    @GetMapping("/listPage")
    public Object listPage(@RequestParam(value = "page", defaultValue = "") Integer page,
                             @RequestParam(value = "pageSize", defaultValue = "20") Integer pageSize,
                             @RequestParam(value = "state", defaultValue = "-1")Integer state) {
        BorrowListParamDTO param = new BorrowListParamDTO(UserAuthUtil.getCurrentUserId(),state);
        param.setPage(page);
        param.setPageSize(pageSize);
        return JsonResponseUtil.paginate(borrowService.getBorrowListPage(param));
    }

    @ApiOperation("删除借阅记录")
    @Log(description = "删除借阅记录", type = "借阅记录管理")
    @PostMapping("/delete")
    public Object delete(@RequestBody CommonParamDTO param) {
        if (borrowService.removeById(param.getId())) {
            return JsonResponseUtil.success();
        } else {
            return JsonResponseUtil.error("删除失败");
        }
    }
    @ApiOperation("续借")
    @Log(description = "续借", type = "用户续借", isStaff = false)
    @PostMapping("/renew")
    public Object renew(@RequestBody CommonParamDTO param) {
        UpdateWrapper<Borrow> wrapper = new UpdateWrapper<>();
        //续上30天
        wrapper.lambda().eq(Borrow::getId,param.getId()).eq(Borrow::getState,1)
                .set(Borrow::getState,2).setSql("overdue_date = DATE_ADD(overdue_date, INTERVAL 30 DAY)");
        if (borrowService.update(wrapper)) {
            return JsonResponseUtil.success();
        } else {
            return JsonResponseUtil.error("续借失败");
        }
    }

    @ApiOperation("借阅详情")
    @GetMapping("/info")
    public Object info(@RequestParam("id")Integer id) {
        return borrowService.getBorrowInfo(id);
    }
}

七、项目总结:

开发基于JAVA+SpringBoot+UniApp+Vue的前后端分离的手机移动端图书借阅平台是作为毕设作品进行设计的,这个毕设作品是我在校进行知识学习的一个毕业考核项目,也是检验我通过网络工具,图书工具等学习工具进行自学的能力水平,让我在根据程序开发的需求分析初步完成程序功能之外,还接触了程序的测试过程,了解程序测试的具体的过程,以及遇到问题怎么去寻找相应的解决办法等等,毕业作品的制作以及设计才是学校对我真正的考验。

在程序软件没能进行开发之前,我去了学校的图书馆借了有关数据库操作的书籍,在查看了sqlserver和mysql两种数据库的相关知识之后,我最后选择了我比较熟悉的mysql数据库。在编程语言的抉择上,由于自己之前接触过Java程序的开发,所以为了让我尽快在短时间内完成程序制作,我确定用Java编程语言进行程序编程。另外我从百度上下载了很多的有关信息增加,信息删除等操作的源代码,并通过不断调试以及完成配套的数据库的设计,开始完成程序的各个部分的功能。每当我粗心大意,致使我深陷程序开发困扰不能自拔之时,值得庆幸的是,我就会得到老师,还有我的寝室同学的耐心指导。

历经长达几个月的毕业作品制作,我凭借自己的知识技能,还有大家的指导帮助,能够在学校规定的时间段之内提交毕业作品。虽然已经算是完成了毕业作品,但是付出了这么多心血,还是想把这个作品做得更加完美一点。针对我的毕业作品学生信息管理系统,我觉得还有很多方面需要完善,第一就是界面上需要细微调整,比如色彩搭配有点违背广众的审美,需要细微调整,还有系统里面的字体大小也需要调大一点,太小的字体看起来有些费眼。然后在程序的功能上因为自己的入门开发水平的影响,所以目前只能做到这个境界,这个系统相比其他类似系统来说功能很简单,逻辑结构设计得也比较合理。

自己一个人完成程序的开发,我不仅亲自体验了程序的开发流程,体验到了程序开发的各种不易。这种体验也还加深了我对知识的尊重。学海无涯,知识不是大学短短四年就能学完的,在大学学到的知识在最终经历检验时,才会深深地明白自己的知识积累原来还很浅薄。所以今后不管身在何处,自己的学习心态一定要时刻体现出来,要深刻明白知识学到手里就是自己的。同时,自己也不必过多抱怨学到的知识没有用处,相信学到的知识总会有派上用处的那天。不要等到需要用时再去学习知识,那样就会导致自己错失很多本该属于自己的机遇。

八、源码获取:

大家点赞、收藏、关注、评论啦 、查看👇🏻👇🏻👇🏻获取项目下载链接,博主联系方式👇🏻👇🏻👇🏻

链接点击直达:下载链接

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

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

相关文章

『吴秋霖赠书活动 | 第三期』《Python asyncio并发编程》

文章目录 1. 写在前面2. 浅谈asyncio3. Python asyncio并发编程 不再受限于&#xff01;asyncio异步让你的程序在高并发时翱翔自如&#xff01; 声明&#xff1a;赠书活动是博主与出版社达成合作&#xff0c;只属于粉丝的专属福利 本期书籍&#xff1a;《Python asyncio并发编程…

王道计算机考研 操作系统学习笔记 + 完整思维导图篇章二: 进程管理

目录 进程与线程 进程的概念 概念 进程的组成 PCB 程序段、数据段 进程的特征 总结 进程的状态与转换 进程的状态 创建态、就绪态 运行态 阻塞态 终止态 进程的转换 进程的组织 链接方式 索引方式 总结 进程控制 什么是进程控制 如何实现进程控制 进程控制相关的原…

分类预测 | MATLAB实现SSA-CNN-LSTM-Attention数据分类预测(SE注意力机制)

分类预测 | MATLAB实现SSA-CNN-LSTM-Attention数据分类预测&#xff08;SE注意力机制&#xff09; 目录 分类预测 | MATLAB实现SSA-CNN-LSTM-Attention数据分类预测&#xff08;SE注意力机制&#xff09;分类效果基本描述模型描述程序设计参考资料 分类效果 基本描述 1.MATLAB实…

ikuai路由器通过curl模拟功能操作

模拟登录 通过调试进行分析ikuai登录流程&#xff0c;并进行模拟登录 ikuai_ip 该参数为ikuai路由器的ipusername 登录的用户password 登录密码 #!/bin/bash # # ikuai_ip10.66.0.1 usernameadmin passwordadminpwd.. cookie_nameikuai_cookie.txt useragent"User-Ag…

IPETRONIK数采与第三方软件集成

一 第三方软件 IPETRONIK公司提供IPEmotion用于车辆测试&#xff0c;但在某些特殊领域也有一些专业的软件&#xff0c;例如标定&#xff0c;则需要IPETRONIK数采来进行压力、温度、转速等信号的采集。 IPETRONIK提供了INCA和CANape插件&#xff0c;且这两款软件均可直接识别到…

克隆的虚拟机,查不到IP号

文章目录 问题解决描述解决步骤重新生成MAC地址修改一修改二 相关操作查看当前所有网卡修改网络配置文件文件内容修改修改文件名 问题解决 描述 使用克隆的虚拟机&#xff0c;网卡和原虚拟机的相同&#xff0c;会导致克隆虚拟机的网卡不可用&#xff0c;从而使用ip addr查看不…

起猛了!4090显卡对华禁售出现反转,国产显卡发展现状到底如何?

10月18号&#xff0c;英伟达向美国证券交易委员会&#xff0c;提交的最新公开文件显示&#xff1a; 除了H100/A100/H800/A800这类高性能计算卡&#xff0c;消费级旗舰显卡RTX 4090也被列入到出口管制范围内&#xff0c;对华禁售。 尽管此规定对一般人影响不大&#xff0c;但对…

AcWing算法分享系列——二分图

这是AcWing算法分享系列的第一篇文章,我们先从图论的知识下手(因为我觉得图论的只是好理解些)。 这次我们主要讲的就是二分图,二分图这次我们主要讲的就是最基础的两个板块: 二分图的判定(染色法)二分图的完美匹配(匈牙利算法)我们这一篇文章先从二分图的概念开始入手…

msvcp120.dll丢失的解决方法,有效的两种msvcp120.dll修复方法分享

如果您在打开某些软件或游戏时遇到了“计算机中缺少msvcp120.dll&#xff0c;无法启动程序”的错误提示&#xff0c;那么您遇到了一个非常常见的问题。MSVCP120.dll是Windows操作系统中的一个关键的动态链接库文件&#xff0c;它封装了许多C运行库函数。如果这个文件丢失或损坏…

多目标优化怎么偏向某个目标?通过参考点的方式可以解决

通过参考点的方式可以使算法偏向某个目标&#xff0c;其中这些参考点的某些性质符合你所需要偏向的这个目标&#xff0c; 例如决策者偏好的分子是活性较好的分子&#xff0c;那么优化后的分子也会是这个偏好 一、基于参照点集合的方法概述 近年来出现了一类基于参照点集的超多…

还用axure?一款产品经理可直接用的前端无代码工具,像设计原型那样直接搭建复杂的前端应用!— UIOTOS

先抛出问题 axure既然能画高保真模型&#xff0c;为什么不技术上优化代码&#xff0c;直接用于前端&#xff1f; 关于不能用于前端&#xff0c;有知友说代码不精简&#xff0c;有些不能实现&#xff0c;但是这些技术上应该是可以优化和解决的。那么为什么不和Dreamweaver类似…

python基础知识笔记

参考视频和资料&#xff1a;2022新版黑马程序员python教程&#xff0c;8天python从入门到精通&#xff0c;学python看这套就够了_哔哩哔哩_bilibili 最后有知识的思维导图&#xff01; Python入门学习 Day1 解释器&#xff1a;pycharm 一、Pycharm快捷键和基础 注释多行…

如何写代码实现VRP问题中车辆容量限制及时间窗要求(python)

问题研究背景 使用遗传模拟退火算法求解如下10个卸货点的VRPTW问题。为了使研究的问题更加有意义&#xff0c;本人将时间限理解为服务点一天的具体可以允许配送的时间。 如果不要求车辆从配送中心出发的时间是统一的并且为0时刻&#xff0c;那么就默认第一个配送节点是一定能赶…

Pandas与数据库交互详解

Pandas 是一个强大的数据分析库&#xff0c;可以与各种数据库进行交互&#xff0c;从而可以方便地从数据库中读取数据、分析数据&#xff0c;并将结果写回数据库中。以下是使用 Pandas 与数据库交互的一般步骤&#xff1a; 一 、数据库交互 安装必要的库&#xff1a;首先&…

性能测试jmeter命令行运行+html测试报告解读

windows下打开jmeter的运行窗口&#xff0c;可以看到提示不要用GUI模式进行负载测试&#xff0c;如果要用负载测试&#xff0c;用cli模式&#xff0c;因为GUI模式运行jmeter比较消耗性能。 命令行模式 windows下找到jemeter所在文件夹&#xff0c;打开cmd输入命令。 jmeter -n…

【分享】7-Zip压缩包的密码可以取消吗?

7-Zip压缩包设置了“密码保护”&#xff0c;后面又不想要了&#xff0c;可以取消吗&#xff1f; 首先&#xff0c;我们要分两种情况来看&#xff0c;是记得密码&#xff0c;但不想每次打开压缩包都要输入密码&#xff0c;所以想取消密码&#xff0c;还是把密码忘记了所以想取消…

TDengine小知识-数据文件命名规则

TDengine 时序数据库对数据文件有自己的命名规则&#xff0c;文件名中包含了vnodeID、时间范围、版本、文件类型等多种信息。了解数据文件命名规则&#xff0c;可以让运维工作更简单。 废话不多说&#xff0c;直接上图&#xff1a; v4&#xff1a;文件所属 Vgroup 组&#xf…

基于epoll封装非阻塞的reactor框架(附源码)

C++常用功能源码系列 文章目录 C++常用功能源码系列前言一、reactor架构二、client端reactor代码三、server端reactor代码四、单reactor架构可以实现百万并发总结前言 本文是C/C++常用功能代码封装专栏的导航贴。部分来源于实战项目中的部分功能提炼,希望能够达到你在自己的项…

【MATLAB第79期】基于MATLAB的数据抽样合集(sobol、LHS拉丁超立方抽样、Halton、正交/均匀设计、随机rand函数)

【MATLAB第79期】基于MATLAB的数据抽样合集&#xff08;sobol、LHS拉丁超立方抽样、Halton、正交/均匀设计、随机rand函数&#xff09; 一、传统函数 1.指定区间随机生成数据&#xff08;小数&#xff09; [a b]区间随机数生成: Aa(b-a)rand(m,n) m&#xff1a;待生成矩阵A…

C语言实现用递归方法求 () = ∑ (^2)

完整代码&#xff1a; // 用递归方法求 ??(??) ∑ (??^2) #include<stdio.h>int func(int n){if (n1){return 1;}else{return n*nfunc(n-1);} }int main() {int n;printf("请输入一个整数");scanf("%d",&n);printf("%d",func(…