基于SpringBoot/SSM+Vue+uniapp的员工考勤管理系统的详细设计和实现(源码+lw+部署文档+讲解等)

[附源码]计算机毕业设计Python+uniapp考试刷题及分析系统小程序oxu3i(程序+lw+远程部署) Python3.7.7+Django+Mysql5.7+pip list+HBuilderX(Vscode也行)+uni+Vue+Pychram社区版。[附源码]计算机毕业设计Python+uniapp考试刷题及分析系统小程序oxu3i(程序+lw+远程部署)2. 前端:uni+css+javascript+jQuery+easyUI+highcharts。Django + uni小程序 +Python+Mysql 等等组成,B/S模式等等。该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程。 阅读详情

前言

🌞博主介绍:✌全网粉丝15W+,优快云特邀作者、211毕业、高级全栈开发程序员、大厂多年工作经验、码云/掘金/华为云/阿里云/InfoQ/StackOverflow/github等平台优质作者、专注于Java、小程序技术领域和毕业项目实战,以及程序定制化开发、全栈讲解、就业辅导✌🌞

👇🏻 精彩专栏 推荐订阅👇🏻
2023-2024年最值得选的微信小程序毕业设计选题大全:100个热门选题推荐✅

2023-2024年最值得选的Java毕业设计选题大全:500个热门选题推荐✅

Java精品实战案例《500套》

微信小程序项目精品案例《500套》

💯文末获取源码+数据库💯
感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及论文编写等相关问题都可以给我留言咨询,希望帮助更多的人

详细视频演示

可丝我获取更详细的演示视频

具体实现截图

在这里插入图片描述在这里插入图片描述在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

技术栈

后端框架SpringBoot

Spring Boot内置了Tomcat、Jetty和Undertow等服务器,这意味着你可以直接使用它们而不需要额外的安装和配置。Spring Boot的一个主要优点是它的自动配置功能。它可以根据你的项目中的依赖关系自动配置应用程序。这使得配置应用程序变得非常容易,因为你不需要手动配置每个依赖项。Spring Boot也提供了大量的开箱即用的功能和插件,如Spring Data、Spring Security和Spring Cloud等。这些功能使得开发者可以更快速地构建应用程序,并且可以更容易地扩展和集成其他技术。它是一个非常流行的框架,它的自动配置、内置服务器和插件等功能使得开发者可以更快、更轻松地构建高质量的应用程序。

前端框架Vue

Vue.js的核心是虚拟DOM技术。虚拟DOM是一个内存中的数据结构,它可以帮助Vue.js实现高效的DOM操作,它采用了响应式数据绑定、虚拟DOM、组件化等现代化技术,为开发者提供了一种灵活、高效、易于维护的开发模式,当数据发生变化时,UI也会自动更新,这样就使得开发者可以更加专注于数据处理,而不是手动更新UI,这就是Vue体现出来的简洁,灵活,高效。

持久层框架MyBaitsPlus

MyBatis-Plus是一款基于MyBatis框架的增强工具,旨在简化MyBatis的开发。它是一款开源的Java框架,支持多种数据库,包括MySQL、Oracle、SQL Server、PostgreSQL等。MyBatis-Plus提供了丰富的API和注解,可以通过简单的配置和使用来实现ORM操作,大大减少了手写SQL的工作量。此外,MyBatis-Plus还提供了一套代码生成器,可以自动生成实体类、Mapper接口以及XML映射文件,极大地简化了开发流程。
MyBatis-Plus还支持分页查询、动态查询、乐观锁、性能分析等实用功能,方便开发者进行高效的数据操作。通过MyBatis-Plus,开发者可以快速开发高质量的数据访问层代码,提高开发效率

系统测试

从多个角度进行测试找到系统中存在的问题是本系统首要的测试目的,通过功能测试寻找出系统缺陷并改正,确保系统没有缺陷。在测试过程中证明系统满足客户需求,发现问题和不足及时改正。测试完成之后得出测试结论。

系统测试目的

在酒店管理系统的开发周期中,系统测试是必不可少且考验耐心的过程。其重要性在于,它是保证系统质量和牢靠性的最后一道关,也是整个系统开发过程的最后一次检查。
系统测试主要是为了避免用户在使用时发生问题,增强用户体验感,为了不影响用户的使用,我们需要从多角度、多思路去考虑系统可能遇到的问题,通过不同的模拟场景来发现缺陷并解决问题。在测试的过程中也可以了解到该系统的质量情况,系统功能是否健全,系统逻辑是否顺畅。一个合格的系统测试过程完成后将大大提升系统质量和使用感。测试的目标是验证系统是否符合需求规格说明书的定义,并找出与需求规格说明书不符合或与之冲突的内容。测试过程中一定站在用户的角度考虑问题,避免一些不切实际的场景,浪费测试时间,从而可能会引起问题导致预期结果与实际结果不符。

系统功能测试

对系统功能模块进行测试,通过点击、输入边界值和必填项非必填项的验证等方法进行一系列的黑盒测试。通过编写测试用例,根据测试用例中的内容进行测试,最后得出测试结论。
登录功能测试方案:当需要登入该系统时,通过账户密码等功能点进行验证,用户在输入时需要输入与数据库内存储的数据匹配的内容,当其中某项输入错误时系统将提示输入错误。此界面对角色权限也有相应的校验,当用户角色的帐号选择管理员角色登录时,也会报错。登录功能测试用例如下表所示。

输入数据预期结果实际结果结果分析
用户名:guanliyuan 密码:123456 验证码:正确输入登入系统成功登入系统和估算结果一样
用户名:guanliyuan 密码:111111 验证码:正确输入密码错误密码错误,请重新输入密码和估算结果一样
用户名:guanliyuan 密码:123456 验证码:错误输入验证码错误验证码信息错误和估算结果一样
用户名:空 密码:123456 验证码:正确输入用户名必填请输入用户名和估算结果一样
用户名:guanliyuan 密码:空 验证码:正确输入密码错误密码错误,请重新输入密码和估算结果一样

用户管理功能测试方案:用户管理主要有添加、编辑、删除、查找用户功能。添加用户时,必填项不填,检验系统是否有非空检验;添加已有的用户信息,检验是否提示用户名已被使用;删除用户信息,系统将检验是否进行此操作;更改用户信息,更改用户信息后页面是否可以展示出来。用户管理测试用例如下表所示。

输入数据预期结果实际结果结果分析
填入用户基本信息添加成功,在用户列表中显示该用户出现在在列表中和估算结果一样
修改用户信息编辑成功,修改信息成功被修改用户信息被修改和估算结果一样
选中删除用户系统询问是否删除用户,确认后用户被删除验证码信息错误系统询问是否删除用户,确认后查找不到用户信息和估算结果一样
添加用户时不填用户名提示用户名不能为空提示用户名不能为空和估算结果一样
填入已有用户名添加失败,提示用户名重复添加失败,提示用户名重复和估算结果一样

系统测试结论

本系统主要使用黑盒测试,通过模拟用户使用系统实现各个功能编写测试用例,并进行测试。以确保系统流程的正确性。系统测试必不可少,可以使系统更加完善,该系统的可使用性也会更高。
测试该系统主要为了验证系统的功能模块是否满足我们最初的设计理念,验证各个功能模块逻辑是否正确,此系统不需要过于复杂的逻辑处理,以便于使用者操作。测试的最终目的也是围绕着用户使用展开。测试过程中所有场景都应符合用户需求,不可偏离需求目标,遇到问题时要站在用户的角度进行思考。经过一系列的测试过程后得到最终的测试结果,从测试结果可以看出,实现的系统在功能和性能方面满足设计要求。

为什么选择我

在这里插入图片描述

代码参考

@IgnoreAuth
@PostMapping(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);
}

	@Override
	public String generateToken(Long userid,String username, String tableName, String role) {
		TokenEntity tokenEntity = this.selectOne(new EntityWrapper<TokenEntity>().eq("userid", userid).eq("role", role));
		String token = CommonUtil.getRandomString(32);
		Calendar cal = Calendar.getInstance();   
    	cal.setTime(new Date());   
    	cal.add(Calendar.HOUR_OF_DAY, 1);
		if(tokenEntity!=null) {
			tokenEntity.setToken(token);
			tokenEntity.setExpiratedtime(cal.getTime());
			this.updateById(tokenEntity);
		} else {
			this.insert(new TokenEntity(userid,username, tableName, role, token, cal.getTime()));
		}
		return token;
	}



/**
 * 权限(Token)验证
 */
@Component
public class AuthorizationInterceptor implements HandlerInterceptor {

    public static final String LOGIN_TOKEN_KEY = "Token";

    @Autowired
    private TokenService tokenService;
    
	@Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {

		//支持跨域请求
        response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
        response.setHeader("Access-Control-Max-Age", "3600");
        response.setHeader("Access-Control-Allow-Credentials", "true");
        response.setHeader("Access-Control-Allow-Headers", "x-requested-with,request-source,Token, Origin,imgType, Content-Type, cache-control,postman-token,Cookie, Accept,authorization");
        response.setHeader("Access-Control-Allow-Origin", request.getHeader("Origin"));
	// 跨域时会首先发送一个OPTIONS请求,这里我们给OPTIONS请求直接返回正常状态
	if (request.getMethod().equals(RequestMethod.OPTIONS.name())) {
        	response.setStatus(HttpStatus.OK.value());
            return false;
        }
        
        IgnoreAuth annotation;
        if (handler instanceof HandlerMethod) {
            annotation = ((HandlerMethod) handler).getMethodAnnotation(IgnoreAuth.class);
        } else {
            return true;
        }

        //从header中获取token
        String token = request.getHeader(LOGIN_TOKEN_KEY);
        
        /**
         * 不需要验证权限的方法直接放过
         */
        if(annotation!=null) {
        	return true;
        }
        
        TokenEntity tokenEntity = null;
        if(StringUtils.isNotBlank(token)) {
        	tokenEntity = tokenService.getTokenEntity(token);
        }
        
        if(tokenEntity != null) {
        	request.getSession().setAttribute("userId", tokenEntity.getUserid());
        	request.getSession().setAttribute("role", tokenEntity.getRole());
        	request.getSession().setAttribute("tableName", tokenEntity.getTablename());
        	request.getSession().setAttribute("username", tokenEntity.getUsername());
        	return true;
        }
        
		PrintWriter writer = null;
		response.setCharacterEncoding("UTF-8");
		response.setContentType("application/json; charset=utf-8");
		try {
		    writer = response.getWriter();
		    writer.print(JSONObject.toJSONString(R.error(401, "请先登录")));
		} finally {
		    if(writer != null){
		        writer.close();
		    }
		}
//				throw new EIException("请先登录", 401);
		return false;
    }
}

数据库参考

-- ----------------------------
-- Table structure for token
-- ----------------------------
DROP TABLE IF EXISTS `token`;
CREATE TABLE `token` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `userid` bigint(20) NOT NULL COMMENT '用户id',
  `username` varchar(100) NOT NULL COMMENT '用户名',
  `tablename` varchar(100) DEFAULT NULL COMMENT '表名',
  `role` varchar(100) DEFAULT NULL COMMENT '角色',
  `token` varchar(200) NOT NULL COMMENT '密码',
  `addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '新增时间',
  `expiratedtime` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '过期时间',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=27 DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT='token表';

-- ----------------------------
-- Records of token
-- ----------------------------
INSERT INTO `token` VALUES ('9', '23', 'cd01', 'xuesheng', '学生', 'al6svx5qkei1wljry5o1npswhdpqcpcg', '2023-02-23 21:46:45', '2023-03-15 14:01:36');
INSERT INTO `token` VALUES ('10', '11', 'xh01', 'xuesheng', '学生', 'fahmrd9bkhqy04sq0fzrl4h9m86cu6kx', '2023-02-27 18:33:52', '2023-03-17 18:27:42');
INSERT INTO `token` VALUES ('11', '17', 'ch01', 'xuesheng', '学生', 'u5km44scxvzuv5yumdah2lhva0gp4393', '2023-02-27 18:46:19', '2023-02-27 19:48:58');
INSERT INTO `token` VALUES ('12', '1', 'admin', 'users', '管理员', 'h1pqzsb9bldh93m92j9m2sljy9bt1wdh', '2023-02-27 19:37:01', '2023-03-17 18:23:02');
INSERT INTO `token` VALUES ('13', '21', 'xiaohao', 'shezhang', '社长', 'zdm7j8h1wnfe27pkxyiuzvxxy27ykl2a', '2023-02-27 19:38:07', '2023-03-17 18:25:20');
INSERT INTO `token` VALUES ('14', '27', 'djy01', 'xuesheng', '学生', 'g3teq4335pe21nwuwj2sqkrpqoabqomm', '2023-03-15 12:56:17', '2023-03-15 14:00:16');
INSERT INTO `token` VALUES ('15', '29', 'dajiyue', 'shezhang', '社长', '0vb1x9xn7riewlp5ddma5ro7lp4u8m9j', '2023-03-15 12:58:08', '2023-03-15 14:03:48');

源码获取

有疑问私信询问我即可~
大家点赞、收藏、关注、评论啦
精彩专栏推荐订阅:在下方专栏👇🏻
Java精品实战案例《500套》
微信小程序项目精品案例《500套》

【附源码】Java计算机毕业设计软考刷题小程序(程序+LW+部署) 管理员登陆系统后,可以对首页、个人中心、用户管理、搜题管理、科目管理、用户手册管理、文本笔记管理、成绩分享管理、试题管理、用户社区、试卷管理、系统管理、考试管理等功能进行相应操作,如图5-9所示。用户管理,在用户管理页面可以对索引、用户账号、用户姓名、性别、年龄、头像、用户手机等内容进行详情、修改或删除等操作,如图5-10所示。5.是否Maven项目: 否; 阅读详情

相关推荐

Java视频文件播放实现:完整代码与详细描述

Java视频文件播放实现:完整代码与详细描述[Java视频文件播放]是一种在Java编程语言下实现视频文件播放的方法。本文将介绍如何使用Java编写代码来播放视频文件,并提供完整的代码示例和详细的描述。

ByteGlide的博客 1507

基于SpringBoot+Vue+uniapp的驾校收支管理可视化平台的详细设计和实现(源码+lw+部署文档+讲解等)

🌞博主介绍:✌全网粉丝15W+,优快云特邀作者、211毕业、高级全栈开发程序员、大厂多年工作经验、码云/掘金/华为云/阿里云/InfoQ/StackOverflow/github等平台优质作者、专注于Java、小程序技术领域和毕业项目实战,以及程序定制化开发、全栈讲解、就业辅导✌🌞👇🏻精彩专栏 推荐订阅👇🏻2023-2024年最值得选的微信小程序毕业设计选题大全:100个热门选题推荐✅2023-2024年最值得选的Java毕业设计选题大全:500个热门选题推荐✅Java精品实战案例《500套》

hwx20010805的博客 4387

一个刷题微信小程序源码.zip

一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码 一个刷题微信小程序源码

单片机设计基于单片机的自动售货机系统设计

本项目所使用的模拟软件为Proteus,由英国实验室开发。该软件是当今世界上最成熟、最完善的嵌入式系统开发和模拟平台。该系统支持各种类型的MCU(51)、PIC(AVR)、STM32(STM32),它还支持当今最受欢迎的MCU开发环境(Keil,MPLAB,IAR),是一种集成和扩充的电子电路模拟软件[23]。该软件的特点:(1)这些都达到了我们所设计的MCU软件模拟系统的要求,与其他同类产品相比,有着显著的优越性。

m0_73485055的博客 2076

反激变压器设计学习笔记

反激变压器匝比感量设计

m0_55419117的博客 5263

reCAPTCHA v3隐形验证码实战:5分钟教你用Capsolver获取0.9高分令牌

本文提供了一份reCAPTCHA v3隐形验证码的实战指南,详细解析其浏览器评分机制,并手把手教你使用Capsolver自动化获取0.9高分令牌。内容涵盖从环境侦察、关键参数(sitekey与pageAction)提取,到API调用、结果轮询及令牌使用的完整流程,旨在帮助开发者高效绕过自动化交互障碍。

weixin_29314405的博客 348

万能刷题小程序源码系统:功能强大+试题管理+题库分类+用户列表 附带完整的搭建教程

4.用户列表:系统提供了完整的用户管理功能,管理员可以查看和管理所有用户的信息,包括用户的注册信息、学习记录、成绩统计等,有助于管理员对用户的学习情况进行全面的了解和评估。2.试题管理:用户可以根据自己的需求创建不同的题库,并对试题进行详细的管理,如设置试题的难度、考点、解析等,方便用户根据自己的学习进度和需求选择合适的试题进行练习。1.功能强大:系统提供了丰富的功能,包括试题的添加、编辑、删除、查找等,还支持试题的批量导入和导出,大大节省了用户的时间成本。源码下载地址:春哥技术博客或帮企商城获取。

2301_77558505的博客 2233

变压器铁心100Hz振动噪声的COMSOL磁致伸缩仿真全流程

磁致伸缩是铁磁材料在磁场作用下发生尺寸变化的现象,也是变压器铁心振动与噪声产生的根本原因。由于应变与磁通密度近似成平方关系,50Hz电网激励下铁心振动基频为100Hz。借助COMSOL多物理场仿真,可将磁场计算结果映射为结构应力和变形,完成“电磁—结构”单向耦合分析。该技术广泛应用于变压器振动噪声预测、结构优化及故障诊断等工程场景。本文从磁致伸缩物理机理出发,系统梳理了材料参数、等效建模、边界条件设置和结果校核等关键步骤,帮助工程师掌握从磁致伸缩到结构变形的完整仿真链路,解决实际工程对标难题。

weixin_33796177的博客 313

Java基于springboot+vue的在线电动汽车销售购物商城网站

随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。本文介绍了靓车汽车销售网站的开发全过程。通过分析靓车汽车销售网站管理的不足,创建了一个计算机管理靓车汽车销售网站的方案。文章介绍了靓车汽车销售网站的系统分析部分,包括可行性分析等,系统设计部分主要介绍了系统功能设计和数据库设计。本靓车汽车销售网站管理员功能有个人中心,用户管理,车辆展示管理,车辆品牌管理,车辆型号管理,维修材料管理,材料分类管理,用户交流,留言板管理,系统管理,订单管理等。因而具有一定的实用性。

QQ860234001的专栏 1058

STDP实战:用PyTorch从零搭建脉冲神经网络(附完整代码)

本文提供了基于PyTorch从零搭建脉冲神经网络的实战教程,重点讲解了STDP学习规则的原理与工程实现。通过构建LIF神经元模型和向量化STDP层,并结合泊松编码,详细演示了如何构建一个能够进行无监督特征学习的混合网络架构,为探索神经形态计算和低功耗实时学习方案提供了完整代码与实践指南。

weixin_29056145的博客 266

别再只用串口助手了!用LabVIEW给STM32F103C8T6做个专属上位机(附完整源码)

本文详细介绍了如何利用LabVIEW为STM32F103C8T6开发定制化上位机,替代传统串口助手,实现高效数据交互。内容涵盖硬件架构设计、STM32固件优化、LabVIEW上位机开发技巧及工业级应用案例,特别适合需要实时数据采集与处理的工控场景。

weixin_42524762的博客 368

在java中实现视频处理及播放功能详解

我们知道,现在视频可以说是最火爆的多媒体手段了,所以顺带着视频处理技术也就成了目前炙手可热的技术之一了。我们作为一个Java程序员,又该怎么处理视频呢?今天Java架构栈就给大家讲解一下,如何通过Java代码来实现视频处理及播放。

关注我!带你一路 "狂飙" 到底! 1万+

[QMT量化交易小白入门]-二、如何用miniQMT获取沪深A股的板块列表、历史行情数据和实时行情数据

本专栏主要是介绍QMT的基础用法,常见函数,写策略的方法,也会分享一些量化交易的思路,大概会写100篇左右。QMT的相关资料较少,在使用过程中不断的摸索,遇到了一些问题,记录下来和大家一起沟通,共同进步,自己淋过雨了,希望大家都有一把伞。

木头大左的博客 5656

基于Springboot+vue的网上商城购物系统设计与实现

本网上商城购物系统采用的数据库是Mysql,使用springboot、vue框架开发。实现管理员:首页、个人中心、用户管理、商品分类管理、商品信息管理、订单评价管理、系统管理、订单管理,用户;首页、个人中心、订单评价管理、我的收藏管理、订单管理,前台首页;首页、商品信息、商品资讯、个人中心、后台管理、购物车、在线客服等功能。

weixin_54828627的博客 9686

包络检波电路(Envelope Detector)

把 100 kHz 载波想象成"电台的高频信号",把 1 kHz 包络想象成"主持人说话的声波"。而今天电路的工作,就是把这个"调大调小的外壳"(包络)重新剥出来,还原成主持人的声音 🎵。这是三极管开关电路的重要搭档,也是从"二极管家族"过渡到"三极管家族"的桥梁 🔌。——倍压整流看的是"幅值累积"(多个电容接力),包络检波看的是"频率分离"(高低频分开)。同样的"D1 串联 + RC 并联"拓扑,今天被赋予了"AM 解调"的新生命。——电感负载的"泄洪闸",保护三极管开关不被反向电动势击穿。

飞多学堂的博客 94

【人工智能】《Deep Dive into LLMs like ChatGPT 》—— Andrej Karpathy 第三阶段:强化学习(Reinforcement Learning, RL)

摘要:强化学习(RL)阶段通过让模型自主生成并验证答案,突破SFT阶段的模仿局限,使其在数学、代码等领域形成独特的推理路径。RL流程包括批量生成解答、自动批改筛选正确路径,并采用PPO/GRPO算法优化模型。模型会自发涌现自我检查、回滚等策略,显著提升正确率(如AIME竞赛准确率从15%升至56%)。与SFT模型相比,RL模型具备主动链式思维、验算能力,响应时间更长但效果更优,形成真正的“思考模型”。三阶段对比显示,RL通过可验证题的对错奖励机制,赋予模型超越人类范式的推理能力。

奶爸的编程之路,也就一周冷个三天 149

基于java+ssm+jsp的影院管理系统

社会和科技的不断进步带来更便利的生活,计算机技术也越来越平民化。二十一世纪是数据时代,各种信息经过统计分析都可以得到想要的结果,所以也可以更好的为人们工作、生活服务。电影是生活娱乐的一部分,特别对喜欢看电影的用户来说是非常重要的事情。把计算机技术和影院售票相结合可以更符合现代、用户的要求,实现更为方便的购买电影票的方式。本影院管理系统采用Java语言和Jsp技术,框架采用SSM,搭配MySQL数据库,运行在Idea里。本影院管理系统提供管理员、用户两种角色的服务。

Q_6310855的博客 361

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

在线刷题答题小程序开发现成源码搭建 功能丰富 支持在线考试+刷题 源码开源可二开

分享一款在线刷题答题小程序源码,功能丰富,支持在线考试和刷题二合一,含完整代码包和搭建教程。支持在线考试+刷题:支持在线考试和刷题两种模式,可以满足不同用户的需求。在刷题模式下,考生可以选择不同的知识点和难度进行练习,系统会自动记录考生的答题记录和错题集。刷题练习功能:支持刷题练习功能,考生可以选择不同的知识点和难度进行刷题练习。在线交流功能:支持在线交流功能,考生可以在考试过程中与其他考生进行交流和讨论,互相学习和帮助。

duizhangdaren的博客 1512

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

在线考试答题刷题小程序

微信小程序,考试小程序,答题小程序,刷题小程序、知识竞赛小程序,活动答题小程序。毕业设计小程序,有前后端完整源码和数据库,易于二次开发。还可用于考试预约,企业内部考核,内部培训等,职业考试刷题,基于云开发,部署简单,免服务器和域名备案。............

u013127419的博客 5258

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

基于微信小程序的家政服务管理系统小程序

基于微信小程序的家政服务管理系统借助微信开发者工具开发用户前端,使用SSM框架和Java语言开发管理员后台,使用Mysql创建数据表保存本系统产生的数据。系统可以提供信息显示和相应服务,其管理员管理家政公司,家政阿姨,家政预约以及服务项目,管理评价和留言。家政阿姨审核家政预约信息,查看家政公司和评价。用户预约家政服务并支付,评价预约的家政服务。总之,基于微信小程序的家政服务管理系统使得用户可以更加方便预约家政服务,并在线支付预约的家政服务,家政阿姨也能审核家政预约信息,查看家政预约的相关评价信息。

qq_61827376的博客 442

随时随地刷题题库小程序源码系统+完整代码包+安装部署教程

为了满足这一需求,随时随地刷题题库小程序应运而生。该小程序提供了一个便捷的刷题平台,用户可以在任何时间、任何地点进行刷题练习,提高自己的学习效率。5.跨平台支持:随时随地刷题题库小程序支持多种平台,包括手机、平板、电脑等,方便用户随时随地进行刷题练习。1.题库丰富:随时随地刷题题库小程序拥有海量题库,涵盖各个学科和领域,满足不同用户的需求。2.智能推荐:系统根据用户的刷题记录和成绩,智能推荐适合用户的题目,提高刷题效率。6.社交互动:用户可以分享自己的刷题成果,与其他用户交流学习心得,增加学习的乐趣。

2301_77558505的博客 1624

题库类小程序源码 最新题库系统源码 支持在线刷题+考试 教师培训考试均使用

在线刷题考试二合一,解决了大家一直以来的痛点,微信小程序免下载安装,打开微信就能用,非常方便,你可以用来给学生刷题,给员工刷题,给政企员工刷题,我们的是万能通用版,适合任何行业在线刷题及考试。本文分享一个最新题库系统小程序源码,在线答题考试小程序系统,该系统不仅支持在线刷题和考试,还广泛适用于教师、培训、考试等多种场景。题库管理(试题管理,添加试题,题库分类,批量导入,语音题,知识点分类等)基础设置(全局设置,首页版块,积分商城,关于我们,消息管理等)学生管理(学生列表,添加学生,导入学生等)

duizhangdaren的博客 1887

基于springboot,vue网上商城系统

2.首页:轮播图、商品分类导航、最新商品、热门商品、销量排行榜。5.我的订单:付款、取消订单、删除订单、确认收货、评价。8.收货地址:新增地址、地址列表、修改地址、删除地址、2.用户管理:新增、修改、删除、分页查询、配置角色。3.角色管理:新增、修改、删除、分页查询、分配权限。8.商品分类管理:新增、修改、删除、分页查询。7.轮播图管理:新增、修改、删除、分页查询。4.菜单管理:新增、修改、删除、分页查询。5.公告管理:新增、修改、删除、公告列表。9.商品管理:新增、修改、删除、分页查询。

IT教程资源 598

校园网课刷题小程序源码系统 带完整搭建教程

大家好啊,罗峰来给大家分享一款校园网课刷题小程序。现如今,校园网课刷题小程序可以作为学生的学习助手,提供多样化的学习方式和丰富的题目资源,帮助学生巩固所学知识、提高学习效率和成绩。源码下载地址:春哥技术博客——在线课堂知识付费小程序源码系统。

2301_77558505的博客 1825

微信线上考试在线答题刷题小程序源码 含完整前后端+安装部署详细教程

分享一个微信线上考试在线答题刷题小程序源码,支持在线刷题考试二合一,包含了前后端代码和详细的安装部署教程。用户可以在微信内快速进入考试或者练习模式,进行在线答题和刷题。该程序支持多种题型,包括选择题、判断题、填空题等,可以满足各种类型的考试和练习需求。

春哥开源研究所的博客 4105

springboot基于微信小程序考试刷题系统

微信小程序考试刷题系统是一款专为学生、考证族等人群打造的移动端学习工具。它借助微信小程序便捷、无需安装的优势,整合了丰富的题库资源、多样化的刷题模式、智能的学习分析以及便捷的社交互动功能,旨在帮助用户随时随地进行高效的学习与备考,提升学习效果和考试通过率。开发语言:Java框架:springbootJDK版本:JDK1.8服务器:tomcat7数据库:mysql 5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/idea。

qq_1262330535的博客 1292
上一篇: 基于SpringBoot/SSM+Vue+uniapp的大学教师考核管理系统的详细设计和实现(源码+lw+部署文档+讲解等)
下一篇: 基于SpringBoot/SSM+Vue+uniapp的企业人事管理系统的详细设计和实现(源码+lw+部署文档+讲解等)
花椒coding
博客等级 码龄2年 1万+粉丝 2533原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值