基于微信小程序的青少年生理健康知识小助手
基于微信小程序的青少年生理健康知识小助手
✌全网粉丝20W+,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌
🍅文末获取项目下载方式🍅
一、项目背景介绍:
对于一个人而言,生命与健康必然是其最重要的一项,而且在如今这个科学技术高速发展的年代,很多影响健康的疾病可以通过早期的医学观察、医学测试等方式发现其病发潜在风险。因此一些相关的医学测试对于发现状况和及时治疗的作用是很有意义的。通过系列研究表明,当代青少年的生理和发育普遍发展时间过早、心理问题较为严重、生活习惯需改善等问题。对于以上问题如果可以通过生理健康知识科普和测试便可以让青少年了解到自己的情况和对生理健康问题的改善。
如果将医学相关的测试与互联网技术相结合后,可以让用户在移动设备上进行医学相关测试的内容填写,让由特定的医学相关算法进行计算和演练,给到用户相关测试结果。通过以上一系列的流程我认为可以让用户体验、记录、了解自己的生理健康情况,可以让用户不用到指定的医院、诊所等地方进行医学相关测试,同时省去用户预约的步骤,让用户可以更便捷的享受医学与互联网技术结合的成果,这对于用户而言是非常可行的。现如今互联网中微信小程序这一新型计算机程序非常热门,其“微小、不用安装程序、基于微信平台”等特点让越来越多的用户所体验其功能,因此基于微信小程序的青少年生理健康知识小助手对于青少年用户群体是十分有帮助的。
二、项目技术简介:
- JAVA:Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。
- Spring:Spring框架是一个开放源代码的J2EE应用程序框架,由Rod Johnson发起,是针对bean的生命周期进行管理的轻量级容器(lightweight container)。 Spring解决了开发者在J2EE开发中遇到的许多常见的问题,提供了功能强大IOC、AOP及Web MVC等功能。Spring可以单独应用于构筑应用程序,也可以和Struts、Webwork、Tapestry等众多Web框架组合使用,并且可以与 Swing等桌面应用程序AP组合。因此, Spring不仅仅能应用于J2EE应用程序之中,也可以应用于桌面应用程序以及小应用程序之中。Spring框架主要由七部分组成,分别是 Spring Core、 Spring AOP、 Spring ORM、 Spring DAO、Spring Context、 Spring Web和 Spring Web MVC。
- Mybatis-Plus:MyBatis-Plus(简称 MP)是一个 MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为 简化开发、提高效率而生。
- Jsp:JSP(全称JavaServer Pages)是由Sun Microsystems公司主导创建的一种动态网页技术标准。JSP部署于网络服务器上,可以响应客户端发送的请求,并根据请求内容动态地生成HTML、XML或其他格式文档的Web网页,然后返回给请求者。JSP技术以Java语言作为脚本语言,为用户的HTTP请求提供服务,并能与服务器上的其它Java程序共同处理复杂的业务需求。
JSP将Java代码和特定变动内容嵌入到静态的页面中,实现以静态页面为模板,动态生成其中的部分内容。JSP引入了被称为“JSP动作”的XML标签,用来调用内建功能。另外,可以创建JSP标签库,然后像使用标准HTML或XML标签一样使用它们。标签库能增强功能和服务器性能,而且不受跨平台问题的限制。JSP文件在运行时会被其编译器转换成更原始的Servlet代码。JSP编译器可以把JSP文件编译成用Java代码写的Servlet,然后再由Java编译器来编译成能快速执行的二进制机器码,也可以直接编译成二进制码。 - smart:微信小程序,小程序的一种,英文名Wechat Mini Program,是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或搜一下即可打开应用。
全面开放申请后,主体类型为企业、政府、媒体、其他组织或个人的开发者,均可申请注册小程序。微信小程序、微信订阅号、微信服务号、微信企业号是并行的体系。
微信小程序是一种不用下载就能使用的应用,也是一项创新,经过将近两年的发展,已经构造了新的微信小程序开发环境和开发者生态。微信小程序也是这么多年来中国IT行业里一个真正能够影响到普通程序员的创新成果,已经有超过150万的开发者加入到了微信小程序的开发,与我们一起共同发力推动微信小程序的发展,微信小程序应用数量超过了一百万,覆盖200多个细分的行业,日活用户达到两个亿,微信小程序还在许多城市实现了支持地铁、公交服务。微信小程序发展带来更多的就业机会,2017年小程序带动就业104万人,社会效应不断提升。 - Spring-Mvc:Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,从而在使用Spring进行WEB开发时,可以选择使用Spring的Spring MVC框架或集成其他MVC开发框。
- Html:HTML的全称为超文本标记语言,是一种标记语言。它包括一系列标签.通过这些标签可以将网络上的文档格式统一,使分散的Internet资源连接为一个逻辑整体。HTML文本是由HTML命令组成的描述性文本,HTML命令可以说明文字,图形、动画、声音、表格、链接等。
超文本是一种组织信息的方式,它通过超级链接方法将文本中的文字、图表与其他信息媒体相关联。这些相互关联的信息媒体可能在同一文本中,也可能是其他文件,或是地理位置相距遥远的某台计算机上的文件。这种组织信息方式将分布在不同位置的信息资源用随机方式进行连接,为人们查找,检索信息提供方便。
三、系统功能模块介绍:
四、数据库设计:
1:QRTZ_BLOB_TRIGGERS(QRTZ_BLOB_TRIGGERS)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
SCHED_NAME | varchar(120) | NULL | |
TRIGGER_NAME | varchar(200) | NULL | |
TRIGGER_GROUP | varchar(200) | NULL | |
BLOB_DATA | blob | NULL |
2:QRTZ_CALENDARS(QRTZ_CALENDARS)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
SCHED_NAME | varchar(120) | NULL | |
CALENDAR_NAME | varchar(200) | NULL | |
CALENDAR | blob | NULL |
3:QRTZ_CRON_TRIGGERS(QRTZ_CRON_TRIGGERS)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
SCHED_NAME | varchar(120) | NULL | |
TRIGGER_NAME | varchar(200) | NULL | |
TRIGGER_GROUP | varchar(200) | NULL | |
CRON_EXPRESSION | varchar(120) | NULL | |
TIME_ZONE_ID | varchar(80) | NULL |
4:QRTZ_FIRED_TRIGGERS(QRTZ_FIRED_TRIGGERS)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
SCHED_NAME | varchar(120) | NULL | |
ENTRY_ID | varchar(95) | NULL | |
TRIGGER_NAME | varchar(200) | NULL | |
TRIGGER_GROUP | varchar(200) | NULL | |
INSTANCE_NAME | varchar(200) | NULL | |
FIRED_TIME | bigint(13) | NULL | |
SCHED_TIME | bigint(13) | NULL | |
PRIORITY | int(11) | NULL | |
STATE | varchar(16) | NULL | |
JOB_NAME | varchar(200) | NULL | |
JOB_GROUP | varchar(200) | NULL | |
IS_NONCONCURRENT | varchar(1) | NULL | |
REQUESTS_RECOVERY | varchar(1) | NULL |
5:QRTZ_JOB_DETAILS(QRTZ_JOB_DETAILS)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
SCHED_NAME | varchar(120) | NULL | |
JOB_NAME | varchar(200) | NULL | |
JOB_GROUP | varchar(200) | NULL | |
DESCRIPTION | varchar(250) | NULL | |
JOB_CLASS_NAME | varchar(250) | NULL | |
IS_DURABLE | varchar(1) | NULL | |
IS_NONCONCURRENT | varchar(1) | NULL | |
IS_UPDATE_DATA | varchar(1) | NULL | |
REQUESTS_RECOVERY | varchar(1) | NULL | |
JOB_DATA | blob | NULL |
6:QRTZ_LOCKS(QRTZ_LOCKS)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
SCHED_NAME | varchar(120) | NULL | |
LOCK_NAME | varchar(40) | NULL |
7:QRTZ_PAUSED_TRIGGER_GRPS(QRTZ_PAUSED_TRIGGER_GRPS)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
SCHED_NAME | varchar(120) | NULL | |
TRIGGER_GROUP | varchar(200) | NULL |
8:QRTZ_SCHEDULER_STATE(QRTZ_SCHEDULER_STATE)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
SCHED_NAME | varchar(120) | NULL | |
INSTANCE_NAME | varchar(200) | NULL | |
LAST_CHECKIN_TIME | bigint(13) | NULL | |
CHECKIN_INTERVAL | bigint(13) | NULL |
9:QRTZ_SIMPLE_TRIGGERS(QRTZ_SIMPLE_TRIGGERS)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
SCHED_NAME | varchar(120) | NULL | |
TRIGGER_NAME | varchar(200) | NULL | |
TRIGGER_GROUP | varchar(200) | NULL | |
REPEAT_COUNT | bigint(7) | NULL | |
REPEAT_INTERVAL | bigint(12) | NULL | |
TIMES_TRIGGERED | bigint(10) | NULL |
10:QRTZ_SIMPROP_TRIGGERS(QRTZ_SIMPROP_TRIGGERS)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
SCHED_NAME | varchar(120) | NULL | |
TRIGGER_NAME | varchar(200) | NULL | |
TRIGGER_GROUP | varchar(200) | NULL | |
STR_PROP_1 | varchar(512) | NULL | |
STR_PROP_2 | varchar(512) | NULL | |
STR_PROP_3 | varchar(512) | NULL | |
INT_PROP_1 | int(11) | NULL | |
INT_PROP_2 | int(11) | NULL | |
LONG_PROP_1 | bigint(20) | NULL | |
LONG_PROP_2 | bigint(20) | NULL | |
DEC_PROP_1 | VARCHAR(255) | NULL |
11:QRTZ_TRIGGERS(QRTZ_TRIGGERS)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
SCHED_NAME | varchar(120) | NULL | |
TRIGGER_NAME | varchar(200) | NULL | |
TRIGGER_GROUP | varchar(200) | NULL | |
JOB_NAME | varchar(200) | NULL | |
JOB_GROUP | varchar(200) | NULL | |
DESCRIPTION | varchar(250) | NULL | |
NEXT_FIRE_TIME | bigint(13) | NULL | |
PREV_FIRE_TIME | bigint(13) | NULL | |
PRIORITY | int(11) | NULL | |
TRIGGER_STATE | varchar(16) | NULL | |
TRIGGER_TYPE | varchar(8) | NULL | |
START_TIME | bigint(13) | NULL | |
END_TIME | bigint(13) | NULL | |
CALENDAR_NAME | varchar(200) | NULL | |
MISFIRE_INSTR | smallint(2) | NULL | |
JOB_DATA | blob | NULL |
12:banners(banners)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
banner_id | int(11) | NULL | |
content | varchar(255) | NULL | 知识内容 |
image_url | varchar(500) | NULL | |
sort | int(10) | NULL | 排序 |
is_show | int(10) | NULL | 是否展示 |
title | varchar(50) | NULL |
13:options(options)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
option_id | int(11) | NULL | |
content | varchar(255) | NULL | |
opt_type | varchar(10) | NULL | A |
14:questions(questions)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
question_id | int(10) | NULL | |
que_type | tinyint(1) | NULL | 问题类型:0:单选;1:多选; |
content | varchar(255) | NULL | 问题内容 |
answer | varchar(255) | NULL | 答案 |
score | int(10) | NULL | 分数 |
from_data | varchar(20) | NULL | 题库 |
15:schedule_job(schedule_job)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
job_id | bigint(20) | NULL | 任务id |
bean_name | varchar(200) | NULL | springbean名称 |
params | varchar(2000) | NULL | 参数 |
cron_expression | varchar(100) | NULL | cron表达式 |
status | tinyint(4) | NULL | 任务状态0:正常1:暂停 |
remark | varchar(255) | NULL | 备注 |
create_time | datetime(0) | NULL | 创建时间 |
16:schedule_job_log(schedule_job_log)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
log_id | bigint(20) | NULL | 任务日志id |
job_id | bigint(20) | NULL | 任务id |
bean_name | varchar(200) | NULL | springbean名称 |
params | varchar(2000) | NULL | 参数 |
status | tinyint(4) | NULL | 任务状态0:成功1:失败 |
error | varchar(2000) | NULL | 失败信息 |
times | int(11) | NULL | 耗时(单位:毫秒) |
create_time | datetime(0) | NULL | 创建时间 |
17:sys_captcha(sys_captcha)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
uuid | char(36) | NULL | uuid |
code | varchar(6) | NULL | 验证码 |
expire_time | datetime(0) | NULL | 过期时间 |
18:sys_log(sys_log)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
id | bigint(20) | NULL | |
username | varchar(50) | NULL | 用户名 |
operation | varchar(50) | NULL | 用户操作 |
method | varchar(200) | NULL | 请求方法 |
params | varchar(5000) | NULL | 请求参数 |
time | bigint(20) | NULL | 执行时长(毫秒) |
ip | varchar(64) | NULL | IP地址 |
create_date | datetime(0) | NULL | 创建时间 |
19:sys_menu(sys_menu)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
menu_id | bigint(20) | NULL | |
parent_id | bigint(20) | NULL | 父菜单ID,一级菜单为0 |
name | varchar(50) | NULL | 菜单名称 |
url | varchar(200) | NULL | 菜单URL |
perms | varchar(500) | NULL | 授权(多个用逗号分隔,如:user:list |
20:sys_oss(sys_oss)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
id | bigint(20) | NULL | |
url | varchar(200) | NULL | URL地址 |
create_date | datetime(0) | NULL | 创建时间 |
21:sys_role
CREATETABLEsys_role(sys_role
CREATETABLEsys_role)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
role_id | bigint(20) | NULL | |
role_name | varchar(100) | NULL | 角色名称 |
remark | varchar(100) | NULL | 备注 |
create_user_id | bigint(20) | NULL | 创建者ID |
create_time | datetime(0) | NULL | 创建时间 |
22:sys_role_menu(sys_role_menu)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
id | bigint(20) | NULL | |
role_id | bigint(20) | NULL | 角色ID |
menu_id | bigint(20) | NULL | 菜单ID |
23:sys_user(sys_user)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
user_id | bigint(20) | NULL | |
username | varchar(50) | NULL | 用户名 |
password | varchar(100) | NULL | 密码 |
salt | varchar(20) | NULL | 盐 |
varchar(100) | NULL | 邮箱 | |
mobile | varchar(100) | NULL | 手机号 |
status | tinyint(4) | NULL | 状态0:禁用1:正常 |
create_user_id | bigint(20) | NULL | 创建者ID |
create_time | datetime(0) | NULL | 创建时间 |
24:sys_user_role(sys_user_role)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
id | bigint(20) | NULL | |
user_id | bigint(20) | NULL | 用户ID |
role_id | bigint(20) | NULL | 角色ID |
25:sys_user_token(sys_user_token)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
user_id | bigint(20) | NULL | |
token | varchar(100) | NULL | token |
expire_time | datetime(0) | NULL | 过期时间 |
update_time | datetime(0) | NULL | 更新时间 |
26:tb_user(tb_user)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
user_id | bigint(20) | NULL | |
username | varchar(50) | NULL | 用户名 |
mobile | varchar(20) | NULL | 手机号 |
password | varchar(64) | NULL | 密码 |
create_time | datetime(0) | NULL | 创建时间 |
27:user_exam(user_exam)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
exam_id | int(11) | NULL | |
nick_name | varchar(100) | NULL | |
gender | varchar(10) | NULL | |
avatar_url | varchar(255) | NULL | |
score | int(10) | NULL |
28:user_score(user_score)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
score_id | int(10) | NULL | |
dan_score | int(10) | NULL | |
duo_score | int(10) | NULL | |
write_score | int(10) | NULL | |
total_score | int(10) | NULL |
29:wx_user(wx_user)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
user_id | int(10) | NULL | |
username | varchar(50) | NULL | 用户名 |
password | varchar(50) | NULL | 密码 |
phone | varchar(50) | NULL | 电话 |
user_avatar | varchar(100) | NULL | 头像 |
create_time | datetime(0) | NULL | 创建时间 |
nickname | varchar(50) | NULL | 昵称 |
sex | varchar(10) | NULL | 性别 |
五、功能模块:
-
系统的登录模块:系统的登录模块给系统提供登录的功能
-
心理测评模块的实现:心理测评模块是本系统中一大重要的用户体验功能。
六、代码示例:
系统的登录模块
wx.getUserProfile({desc: '用于完善会员资料',success: (res) => {var sessionKey = app.globalData.sessionKey;console.log("userInfo", res.userInfo)app.globalData.userInfo = res.userInfothis.setData({'userInfo': res.userInfo,'hiddenName': true})wx.request({url: 'http://localhost:8080/wx/getUserInfo',header: {"accept": "*/*",'Content-Type': 'application/x-www-form-urlencoded',},data: {'encryptedData': res.encryptedData,'iv': res.iv,'sessionKey': sessionKey,},method: 'POST',success(res) {console.log("userInfo:", res)}})}
心理测评模块的实现
List<QuestionsEntity> randomList = new ArrayList<>();boolean flag ;while (randomList.size() < 10) {flag = true;int random = (int) (Math.random() * questionsEntities.size());QuestionsEntity questionsEntity = questionsEntities.get(random);for (QuestionsEntity entity : randomList) {if (entity.getQuestionId() == questionsEntity.getQuestionId()) {flag = false;}}if (flag) {randomList.add(questionsEntity);}}
七、论文参考:
八、项目总结:
我们进入21世纪科技和人文的发展让我们对身心健康的意识逐渐加强了,人们愈来愈注重自己的身体和心理的健康。而在人群中这么一群特殊的群体,“他们时祖国的希望,祖国的未来”,他们的身心健康极其重要,这一群特殊的群体便是青少年。正如梁启超先生所说:“少年智则国智,少年富则国富,少年强则国强,少年进步则国进步”。很显然青少年的健康成长对我们赖以生存的社会环境尤其重要。因此我们要加强重视对青少年生理健康的意识,为了让我们的未来社会环境能够越来越好。青少年正处于一个人高速成长的时期,这个时期也是人的一生塑造其素质良好的身体、正确的人生价值和世界观的最重要时候,所以呵护青少年的生理健康可以让其受益一生。
伴随现代文化的发展,出现了很多通过测试、描述等方式来推出人们生理、心理健康的流行方式,同时微信小程序这种不需要安装程序,基于微信平台的一种新的开放式应用可以让用户更加便捷的体验功能,其让通过“扫码”、“搜索”等方式便可让用户实现“触手可及”的梦想。因此微信小程序也是近些年热度很高的高新科技工具。如果基于微信小程序开发,加以现在流行的问卷测试方式来推测青少年的生理健康,那么这是一个既可以让青少年用户群体可以“足不出户”就能便捷查询自己的心理健康状态,又可以在微信这个几乎“人手一个”的大规模用户平台上实现多用户推广使用。基于微信小程序的开发利用了微信开发者工具、数据库应用、网络浏览器技术等一系列技术与工具。用户在使用基于微信小程序的青少年生理健康知识小助手时,可以直接在用户手机的微信客户端进行“搜索”、“扫码”等多种方式来体验其功能,本程序的前端记录用户填写的相关问卷测试内容和数据库存储用户数据及其相关信息,在程序后台读取数据库内容计算用户填写内容的结果再通关前后端连接呈现给用户结果,让用户了解自己的生理健康情况。
九、源码获取:
大家点赞、收藏、关注、评论啦 、查看👇🏻👇🏻👇🏻获取联系方式👇🏻👇🏻👇🏻
链接点击直达:下载链接
相关文章:

基于微信小程序的青少年生理健康知识小助手
基于微信小程序的青少年生理健康知识小助手 ✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取项目下载方式🍅 一、项目…...

【scl】博图程序的导入和导出
导入或者导出博图文件的方法(也叫移植文件) 目录 前言 编辑 编辑 前言 本篇文章主要写一下关于博图文件的导入和导出,具体要怎么样才能将写好的程序或者块移植到其他地方,下面我们一起来看! 一、程序块的导入和导…...

【C语言】指针进阶
目录 一、字符指针 二、指针数组 三、数组指针 四、数组指针的使用 五、函数指针数组 六、指向函数指针数组的指针 七、回调函数 我们知道了指针的概念: 1. 指针就是个变量,用来存放地址,地址唯一标识一块内存空间。 2. 指针的大小是…...

18:CTK 总结篇(FAQ)
作者: 一去、二三里 个人微信号: iwaleon 微信公众号: 高效程序员 经过了几个月的艰苦奋战,终于到了最后一节啦,是不是和我一样,心里有点儿小激动! 回顾之前的章节,从初级 -> 进阶 -> 高级,我们针对 CTK 做了详细的分类讲解。希望通过这些知识,大家能对模块化…...

概论_第7章_参数估计_真题__求置信区间
真题 2014.10 第30题 测量某物体的质量9次, 测得平均值 x‾15.4\overline x 15.4x15.4 g, 已知测量数据 XXX ~ N(μ,0.09)N(\mu, 0.09)N(μ,0.09) (1) 求该物体质量的置信度为0.95 的置信区间; (2)为了使置信度为0.95 的置信区间…...
Go 1.21的2个语言变化
语言行为变化 Go 1.20已经于今年2月份发布,Go 1.21也不远了,我们来先堵为快,看看Go 1.21版本里几个有趣的变化。 文末附送2道面试题。 panic(nil) func main() {defer func() {print(recover() nil)}()panic(nil) }大家先想一想这段代码…...

Mysql(一)架构、存储引擎、数据结构
目录一、mysql架构二、存储引擎三、数据类型一、mysql架构 与其它数据库相比,MySQL的架构可以在多种不同场景中应用并发挥良好作用。主要体现在存储引擎的架构上,插件式的存储引擎架构将查询处理和其它的系统任务以及数据的存储提取相分离,可…...
php 项目网站怎么实现负载均衡?
负载均衡是一种通过分担请求以保证系统可用性和稳定性的技术。在 PHP 项目网站中,可以使用以下几种方法实现负载均衡:软件负载均衡:使用软件如 HAProxy、Nginx 等实现负载均衡,将请求转发到多个后端服务器上。硬件负载均衡&#x…...

win11+pytorch1.7.0+python3.8(也可以是python3.7)+cuda11.0
win11pytorch1.7.0python3.8cuda11.0写在最前面一. 软件配备二. 创建虚拟环境2.1 创建环境名称,并选择‘y’2.2.进入虚拟环境三. 安装pytorch四. 安装虚拟环境下的notebook4.1 安装ipykernel,并选择‘y’,直至安装完成4.2 将环境名注册到note…...

基于jeecgboot的flowable流程设计器的几个bug修复
因为今天在用任务监听器的时候,出现几个bug,所以一并修复与处理。 一、建立任务监听器后,删除不了 主要有两个原因,一个是点击删除没反应,实际上是弹出框跑到后面去了,说明还是z-index问题,调整…...
SAP MM 配置变式物料
创建一个变式物料大概需要经过一下几个阶段; 1、创建物料主数据(MM01); 2、创建特性值(CT04); 3、创建变量类(CL02); 4、创建配置文件(CU41&a…...
Quartz与SpringBoot 搞定任务调度
一、Quartz简介 Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用。Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的程序。Jobs可以做成标准的Java…...

SciencePlots绘图
简介 使用Python作为核心开发工具的机器学习和深度学习研究者自然会希望使用Matplotlib进行科研图表的绘制,但是Matplotlib默认的样式并不适合科研论文的出版,而SciencePlots就是为此定制的一系列科研绘图样式库,可以绘制很合适科研图表。 …...

【Spark分布式内存计算框架——Spark SQL】12. External DataSource(下)rdbms 数据
6.7 rdbms 数据 回顾在SparkCore中读取MySQL表的数据通过JdbcRDD来读取的,在SparkSQL模块中提供对应接口,提供三种方式读取数据: 方式一:单分区模式 方式二:多分区模式,可以设置列的名称,作为…...
【React】React入门--更改状态、属性、表单的非受控组件和受控组件
🎀个人主页:努力学习前端知识的小羊 感谢你们的支持:收藏🎄 点赞🍬 加关注🪐 文章目录setState属性(props)属性vs状态非受控组件受控组件setState this.state是纯js对象,在vue中,dat…...

0216-0218复习:继承
目录 继承 一、基本介绍 二、示意图 三、基本语法 四、入门案例 父类 子类1 子类2 main方法 五、继承细节 第一条 第二条 第三条 第四条 编辑 第五条 第六条 第七条 第八条 第九条 第十条 六、继承本质 七、练习题 第三题 继承 一、基本介绍 继承可以…...

【数据库】HNU数据库系统期末考试复习重点
前言 今天刚结束考试,考的范围基本没有超过这套重点内容,觉得整理的这份资料还算比较有用,遂睡前整理了下分享给大家,希望能帮到要准备数据库期末又时间紧张的学弟学妹~ 文章参考: 1.课程老师发《数据库期末考试复习…...
SCI论文写作常见连词及适用情况
And:用于连接同类或相似的词、短语或句子,表达并列关系。Moreover:用于连接两个相似或相关的想法,表达附加的信息或思想。Furthermore:用于连接两个相似或相关的想法,表达更进一步的信息或思想。In additio…...

Spring中的数据校验--进阶
分组校验 场景描述 在实际开发中经常会遇到这种情况:添加用户时,id是由后端生成的,不需要校验id是否为空,但是修改用户时就需要校验id是否为空。如果在接收参数的User实体类的id属性上添加NotNull,显然无法实现。这时…...

多种方法解决谷歌(chrome)、edge、火狐等浏览器F12打不开调试页面或调试模式(面板)的问题。
文章目录1. 文章引言2. 解决问题3. 解决该问题的其他方法1. 文章引言 不论是前端开发者,还是后端开发者,我们在调试web项目时,偶尔弹出相关错误。 此时,我们需要打开浏览器的调试模式,如下图所示: 通过浏…...

Linux应用开发之网络套接字编程(实例篇)
服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …...

微信小程序之bind和catch
这两个呢,都是绑定事件用的,具体使用有些小区别。 官方文档: 事件冒泡处理不同 bind:绑定的事件会向上冒泡,即触发当前组件的事件后,还会继续触发父组件的相同事件。例如,有一个子视图绑定了b…...

理解 MCP 工作流:使用 Ollama 和 LangChain 构建本地 MCP 客户端
🌟 什么是 MCP? 模型控制协议 (MCP) 是一种创新的协议,旨在无缝连接 AI 模型与应用程序。 MCP 是一个开源协议,它标准化了我们的 LLM 应用程序连接所需工具和数据源并与之协作的方式。 可以把它想象成你的 AI 模型 和想要使用它…...
ffmpeg(四):滤镜命令
FFmpeg 的滤镜命令是用于音视频处理中的强大工具,可以完成剪裁、缩放、加水印、调色、合成、旋转、模糊、叠加字幕等复杂的操作。其核心语法格式一般如下: ffmpeg -i input.mp4 -vf "滤镜参数" output.mp4或者带音频滤镜: ffmpeg…...
MySQL中【正则表达式】用法
MySQL 中正则表达式通过 REGEXP 或 RLIKE 操作符实现(两者等价),用于在 WHERE 子句中进行复杂的字符串模式匹配。以下是核心用法和示例: 一、基础语法 SELECT column_name FROM table_name WHERE column_name REGEXP pattern; …...
基于Java Swing的电子通讯录设计与实现:附系统托盘功能代码详解
JAVASQL电子通讯录带系统托盘 一、系统概述 本电子通讯录系统采用Java Swing开发桌面应用,结合SQLite数据库实现联系人管理功能,并集成系统托盘功能提升用户体验。系统支持联系人的增删改查、分组管理、搜索过滤等功能,同时可以最小化到系统…...
在QWebEngineView上实现鼠标、触摸等事件捕获的解决方案
这个问题我看其他博主也写了,要么要会员、要么写的乱七八糟。这里我整理一下,把问题说清楚并且给出代码,拿去用就行,照着葫芦画瓢。 问题 在继承QWebEngineView后,重写mousePressEvent或event函数无法捕获鼠标按下事…...

Python Ovito统计金刚石结构数量
大家好,我是小马老师。 本文介绍python ovito方法统计金刚石结构的方法。 Ovito Identify diamond structure命令可以识别和统计金刚石结构,但是无法直接输出结构的变化情况。 本文使用python调用ovito包的方法,可以持续统计各步的金刚石结构,具体代码如下: from ovito…...

Netty从入门到进阶(二)
二、Netty入门 1. 概述 1.1 Netty是什么 Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients. Netty是一个异步的、基于事件驱动的网络应用框架,用于…...
纯 Java 项目(非 SpringBoot)集成 Mybatis-Plus 和 Mybatis-Plus-Join
纯 Java 项目(非 SpringBoot)集成 Mybatis-Plus 和 Mybatis-Plus-Join 1、依赖1.1、依赖版本1.2、pom.xml 2、代码2.1、SqlSession 构造器2.2、MybatisPlus代码生成器2.3、获取 config.yml 配置2.3.1、config.yml2.3.2、项目配置类 2.4、ftl 模板2.4.1、…...