基于JavaSpringMVC+Mybatis+Jquery高校毕业设计管理系统设计和实现

基于JavaSpringMVC+Mybatis+Jquery高校毕业设计管理系统设计和实现

博主介绍:多年java开发经验,专注Java开发、定制、远程、文档编写指导等,csdn特邀作者、专注于Java技术领域
作者主页 央顺技术团队
Java毕设项目精品实战案例《1000套》
欢迎点赞 收藏 ⭐留言
文末获取源码联系方式

文章目录

  • 基于JavaSpringMVC+Mybatis+Jquery高校毕业设计管理系统设计和实现
  • 前言:
  • 功能设计:
  • 功能截图:
    • 系统首页
  • 管理员主要功能设计
  • 学生用户主要功能:
  • 老师端主要功能设计:
  • 主要数据库设计:
  • 部分代码:
  • 论文报告:
  • 总结:
  • 获取源码:

前言:

随着信息时代计算机网络技术的发展给人们带来了极大的方便,传统的毕业设计过程在很大程度上给学生、教师和管理人员带来了不便。而毕业论文对于高校学生而言是对自己在学校所学的专业知识和技能的总结,对高校的教育而言是对毕业学生最后的一次全面的考核。在毕业论文完成整个的过程中,需要学生与导师、人员的密切合作。但在现实中,某个环节内的角色由于某些原因不能一直保持着工作状态,会导致毕业论文完成的停滞。为了避免这种情况的发生,为方便教师、学生和管理者顺利完成对应角色的任务,高校需要一个专业的针对毕业论文的管理系统把完成毕业论文的所有操作都集中到一个系统中。与此同时,各种信息网站的普及给许多企业或用户带来了良好的体验和高效的管理。本系统针对现代高校计算机技术的发展,为了应对过去高校毕业生在毕业设计管理过程中遇到的效率低、交互性差、工作量大等问题而采用软件工程的设计思想,构建一个适合高校使用的基于javaweb的毕业设计管理系统。本系统是基于Windows操作系统作为服务平台,后台数据库采用MySQL数据库,服务器使用Tomcat容器、Eclipse开发工具创建java语言来构建服务页面。选择毕业设计课题管理、绩效管理等功能模块及其关系。本次毕业设计的目的是运用现代网络管理技术解决毕业设计管理中存在的问题,减少学生选择毕业设计选题的时间,和加强毕业设计过程的监控,降低教师和管理人员的工作强度。采用SpringMVC框架提高了系统开发的效率,降低了系统的复杂性,使数据库访问更加灵活。通过测试,系统的应用方便了教师和学生之间的交流,加强了过程管理,方便了结果的保存和显示。

功能设计:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
1.用户模块管理:用户登录、多角色登录、用户的查询、删除操作、用户分为不同权限、可以通过角色来灵活控制。

2.导师管理:管理员登录后可以对导师信息进行管理和添加。

3.学生管理:管理员以及老师登录后可以对学生信息进行管理和添加。

4.公告管理:管理员及老师登录后可以对公告进行管理和添、学生可以查看。

5.数据分析:管理员登录后可以查看数据分析和分数占比等。

6.审核选题:管理员登录后可以进行审核操作、同意或拒绝。

7.论文管理:管理员登录后可以查看下载论文

8.修改资料:用户可以修改自己的密码。

9.课程管理:老师上传选题课程、及查看改课程是否通过选题。

10.发布内容:老师发布任务书、开题报告、需求分析和数据库设计等。

11.审核文档:老师可以审核任务书、开题报告、需求分析和数据库设计等。

12.文档管理:老师可以查看和上传学生的论文文档。

13.提问管理:老师可以查看和回答学生的提问信息、学生可以提问

14.成绩管理:老师可以管理和查看学生的成绩信息。

15.毕业设计管理:老师可以审核学生论文及查看答辩资格名单。

16.进度管理:学生可以查看各文档的进度完成情况、比如任务书、开题等。

功能截图:

系统首页

在这里插入图片描述
分角色登录、不同角色不同权限功能
在这里插入图片描述

管理员主要功能设计

在这里插入图片描述
数据分析:
在这里插入图片描述
审核选题:
在这里插入图片描述
学生管理:
在这里插入图片描述
添加导师:
在这里插入图片描述

学生用户主要功能:

在这里插入图片描述
在这里插入图片描述
修改个人资料:
在这里插入图片描述
查看选题:
在这里插入图片描述
文档管理:各文档完成情况、查看课题资料和下载等
在这里插入图片描述
在这里插入图片描述
上传各阶段文档:和查看已经上传的文档
在这里插入图片描述
毕业设计提问以及查看问题老师回答
在这里插入图片描述
查看公告信息、成绩信息和自己的答辩资格
在这里插入图片描述

老师端主要功能设计:

在这里插入图片描述
在这里插入图片描述
课题管理:
在这里插入图片描述
学生管理:
在这里插入图片描述
发布内容:
在这里插入图片描述
审核文档:
在这里插入图片描述
文档管理:
在这里插入图片描述
成绩管理:
在这里插入图片描述
公告管理:
在这里插入图片描述
论文审核及查看答辩资格:
在这里插入图片描述

主要数据库设计:

在这里插入图片描述

部分代码:

 
@Controller
@RequestMapping(value="/teacher")
public class TeacherController {
	
	
	@Autowired
	private ITeacherService teacherService;
	
	@Autowired
	private IStudentService studentService;
	
	@Autowired
	private IDepartmentService departmentService;
	
	@Autowired
	private IAnnouncementService announcementService;
	
	
	
	/*@RequestMapping(value="/add",method=RequestMethod.GET)
	public String addTeacherForm(Model model) {
		return "teacher/addTeacher.jsp";
	}
	
	@RequestMapping(value="/add",method=RequestMethod.POST)
	public String addTeacher(HttpServletRequest request,String teacherNo, String teacherName,String sex,String inputMan,String phone,String department,Model model) throws Exception {
		teacherNo = new String(teacherNo.getBytes("iso-8859-1"),"utf-8");
		teacherName = new String(teacherName.getBytes("iso-8859-1"),"utf-8");
		sex = new String(sex.getBytes("iso-8859-1"),"utf-8");
		inputMan = new String(inputMan.getBytes("iso-8859-1"),"utf-8");
		phone = new String(phone.getBytes("iso-8859-1"),"utf-8");
		department = new String(department.getBytes("iso-8859-1"),"utf-8");
		
		Date currentTime = new Date();
		
		Teacher teacher = new Teacher();
		teacher.setTeacherNo(teacherNo);
		teacher.setTeacherName(teacherName);
		teacher.setDepartmentId(Integer.parseInt(department));
		teacher.setSex(sex);
		teacher.setInputMan(inputMan);
		teacher.setLastModifyTime(currentTime);
		teacher.setPhone(phone);
		
		int addNum = teacherService.addTeacher(teacher);
		System.out.println("添加数目:"+addNum);
		
		return "teacher/addSuccess.jsp";
	}*/
	
	@RequestMapping(value="/main",method=RequestMethod.GET)
	public String teacherMainForm() {
		return "teacher/main.jsp";
	}
	
	@RequestMapping(value="/modifyInfo",method=RequestMethod.GET)
	public String teacherModifyInfoForm() {
		return "teacher/teacherModifyInfo.jsp";
	}
	
	@RequestMapping(value="/modifyPassword",method=RequestMethod.GET)
	public String teacherModifyPasswordForm() {
		return "teacher/teacherModifyPassword.jsp";
	}
	
	@RequestMapping(value="/uploadThesisTitle",method=RequestMethod.GET)
	public String teacherUploadThesisTitleForm() {
		return "teacher/teacherUploadThesisTitle.jsp";
	}
	
	@RequestMapping(value="/modifyThesisTitle",method=RequestMethod.GET)
	public String teacherModifyThesisTitleForm() {
		return "teacher/teacherModifyThesisTitle.jsp";
	}
	
	@RequestMapping(value="/thesisResult",method=RequestMethod.GET)
	public String teacherThesisResultForm(Model model,HttpServletRequest request) {
		teacherShowAllThesisTitle(model, request);
		
		return "teacher/teacherThesisResult.jsp";
	}
	
	@RequestMapping(value="/uploadTaskBook",method=RequestMethod.GET)
	public String teacherUploadTaskBookForm() {
		return "teacher/teacherUploadTakeBook.jsp";
	}
 
	@RequestMapping(value="/uploadOpening",method=RequestMethod.GET)
	public String teacherUploadOpeningForm() {
		return "teacher/teacherUploadOpeningReport.jsp";
	}
	
	@RequestMapping(value="/uploadKeXingXing",method=RequestMethod.GET)
	public String teacherUploadKeXingXingForm() {
		return "teacher/teacherUploadKeXingXing.jsp";
	}
	
	@RequestMapping(value="/uploadXuQiu",method=RequestMethod.GET)
	public String teacherUploadXuQiuForm() {
		return "teacher/teacherUploadXuQiu.jsp";
	}
	
	@RequestMapping(value="/uploadGaiYao",method=RequestMethod.GET)
	public String teacherUploadGaiYaoForm() {
		return "teacher/teacherUploadGaiYao.jsp";
	}
	
	@RequestMapping(value="/uploadShuJuKu",method=RequestMethod.GET)
	public String teacherUploadShuJuKuForm() {
		return "teacher/teacherUploadShuJuKu.jsp";
	}
 
	@RequestMapping(value="/checkOppening")
	public String teacherCheckOppeningForm(HttpServletRequest request,Model model) {
		Teacher currentTeacher = (Teacher)request.getSession().getAttribute("teacher");
		int teacherId = currentTeacher.getId();
		List<Student> students = teacherService.getAllStudentInfo(teacherId);
		for(int i=0;i<students.size();i++) {
			int studentId = students.get(i).getId();
			StudentTaskBookOpening STBO = teacherService.getStudentOpeningByStudentId(studentId);
			if(STBO == null || "".equals(STBO)) {
				
			}else {
				String openingPath = STBO.getStudentOpeningResport();
				if(openingPath==null) {
					students.get(i).setStudentOpeningName("未上传");
					students.get(i).setOpenscore("未上传");
				}else {
					students.get(i).setStudentOpeningPath(openingPath);
					String[] str = openingPath.split("\\\\");
					String fileName = str[str.length-1].toString();
					students.get(i).setStudentOpeningName(fileName);
					students.get(i).setOpenscore(STBO.getOpenscore());
				}
				
//				int completion = STBO.getCompletion();
//				if(completion==0) {
//					students.get(i).setCompletionName("未审核");
//				}else if(completion==1) {
//					students.get(i).setCompletionName("未通过");
//				}else {
//					students.get(i).setCompletionName("审核通过");;
//				}
			}
		}
		model.addAttribute("studentList", students);
		
		return "teacher/teacherCheckOpeningReport.jsp";
	}
	
	@RequestMapping(value="/checkKexing")
	public String teacherCheckKexingForm(HttpServletRequest request,Model model) {
		Teacher currentTeacher = (Teacher)request.getSession().getAttribute("teacher");
		int teacherId = currentTeacher.getId();
		List<Student> students = teacherService.getAllStudentInfo(teacherId);
		for(int i=0;i<students.size();i++) {
			int studentId = students.get(i).getId();
			StudentTaskBookOpening STBO = teacherService.getStudentOpeningByStudentId(studentId);
			if(STBO == null || "".equals(STBO)) {
				
			}else {
				String kexingPath = STBO.getStudentKeXingXing();
				if(kexingPath==null) {
					students.get(i).setStudentKexingName("未上传");
					students.get(i).setKexingscore("未上传");
				}else {
					students.get(i).setStudentKexingPath(kexingPath);
					String[] str = kexingPath.split("\\\\");
					String fileName = str[str.length-1].toString();
					students.get(i).setStudentKexingName(fileName);
					students.get(i).setKexingscore(STBO.getKexingscore());
				}
				
			}
		}
		model.addAttribute("studentList", students);
		
		return "teacher/teacherCheckKeXing.jsp";
	}
	
	@RequestMapping(value="/checkXuqiu")
	public String teacherCheckXuqiuForm(HttpServletRequest request,Model model) {
		Teacher currentTeacher = (Teacher)request.getSession().getAttribute("teacher");
		int teacherId = currentTeacher.getId();
		List<Student> students = teacherService.getAllStudentInfo(teacherId);
		for(int i=0;i<students.size();i++) {
			int studentId = students.get(i).getId();
			StudentTaskBookOpening STBO = teacherService.getStudentOpeningByStudentId(studentId);
			if(STBO == null || "".equals(STBO)) {
				
			}else {
				String xuqiuPath = STBO.getStudentXuQiu();
				if(xuqiuPath==null) {
					students.get(i).setStudentXuqiuName("未上传");
					students.get(i).setXuqiuscore("未上传");
				}else {
					students.get(i).setStudentXuqiuPath(xuqiuPath);
					System.out.println(xuqiuPath);
					String[] str = xuqiuPath.split("\\\\");
					String fileName = str[str.length-1].toString();
					students.get(i).setStudentXuqiuName(fileName);
					students.get(i).setXuqiuscore(STBO.getXuqiuscore());
				}
				
			}
		}
		model.addAttribute("studentList", students);
		
		return "teacher/teacherCheckXuQiu.jsp";
	}
	
	
	@RequestMapping(value="/uploadThesisTitle",method=RequestMethod.POST)
	public String teacherUploadThesisTitle(Model model,HttpServletRequest request,String thesisTitle,String nandu,String liang,String from,String leixing,String thesisDesc) throws Exception {
		thesisTitle = new String(thesisTitle.getBytes("iso-8859-1"),"utf-8");
		nandu = new String(nandu.getBytes("iso-8859-1"),"utf-8");
		liang = new String(liang.getBytes("iso-8859-1"),"utf-8");
		from = new String(from.getBytes("iso-8859-1"),"utf-8");
		leixing = new String(leixing.getBytes("iso-8859-1"),"utf-8");
		thesisDesc = new String(thesisDesc.getBytes("iso-8859-1"),"utf-8");
		
		if(thesisTitle == null || "".equals(thesisTitle)) {
			model.addAttribute("message", "上传课题题目不能为空");
			return "teacher/main.jsp";
		}else if(thesisDesc == null || "".equals(thesisDesc)) {
			model.addAttribute("message", "上传课题描述不能为空");
			return "teacher/main.jsp";
		}else if(nandu == null || "".equals(nandu)) {
			model.addAttribute("message", "上传课题难度不能为空");
			return "teacher/main.jsp";
		}else if(liang == null || "".equals(liang)) {
			model.addAttribute("message", "上传课题工作量不能为空");
			return "teacher/main.jsp";
		}else if(from == null || "".equals(from)) {
			model.addAttribute("message", "上传课题来源不能为空");
			return "teacher/main.jsp";
		}else if(leixing == null || "".equals(leixing)) {
			model.addAttribute("message", "上传课题类型不能为空");
			return "teacher/main.jsp";
		}else {
			Teacher currentTeacher = (Teacher)request.getSession().getAttribute("teacher");
			int teacherId = currentTeacher.getId();
			String teacherName = currentTeacher.getTeacherName();
			Date time = new Date();
			
			ThesisTitle thesis = new ThesisTitle();
			thesis.setThesisName(thesisTitle);
			thesis.setTeacherId(teacherId);
			thesis.setSubmitTime(time);
			thesis.setInputMan(teacherName);
			thesis.setNandu(nandu);
			thesis.setLiang(liang);
			thesis.setFrom(from);
			thesis.setLeixing(leixing);
			thesis.setDescription(thesisDesc);
			
			int num = teacherService.uploadThesisTitle(thesis);
			System.out.println("添加的课题数:"+num);
			
			model.addAttribute("message", "上传成功");
			return "teacher/teacherUploadThesisTitle.jsp";
		}
		
	}
	
	
	
	
	
	@RequestMapping(value="/uploadThesis4pass")
	public String teacherUploadThesis4pass(HttpServletRequest request,@RequestParam("studentList")int studentList,@RequestParam("file") MultipartFile file, Model model) throws Exception, IOException {
		
		// System.out.println("上传课题id:"+topic4Teacher);
		
		Teacher currentTeacher = (Teacher)request.getSession().getAttribute("teacher");
		String teacherName = currentTeacher.getTeacherName();
		String studentId = String.valueOf(studentList);
		// System.out.println("当前用户:"+teacherNo);
		if(!file.isEmpty()) {
			
			File fileRoot = new File("E:\\BSM\\thesis");
			File fileDb = new File(fileRoot, studentId);
			String fileName = file.getOriginalFilename();
			
			File filePath = new File(fileDb, fileName);
			
			// filePath 是必须的 , 文件保存的路径,若是注释掉会出现,空文件异常
			if(!filePath.getParentFile().exists()) {
				filePath.getParentFile().mkdirs();
			}
			
			file.transferTo(new File(fileDb+File.separator+fileName));
			
			ThesisPaper paper = new ThesisPaper();
			paper.setStudentId(studentList);
			paper.setPaperInfo(filePath.toString());
			
			
			teacherService.uploadThesis4Pass(paper);
			
			model.addAttribute("message", "上传学生论成功");
			
			return "teacher/main.jsp";
		}else {
			model.addAttribute("message", "上传任务书出错");
			return "error.jsp";
		}
	}
	
	
	@RequestMapping(value="/checkDoubt")
	public String teacherCheckDoubtForm(HttpServletRequest request,Model model) {
		Teacher currentTeacher = (Teacher)request.getSession().getAttribute("teacher");
		int teacherId = currentTeacher.getId();
		
		List<Student> students = teacherService.getAllStudentInfo(teacherId);
		List<Doubt> doubtList = new ArrayList<Doubt>();
		for(int i=0;i<students.size();i++) {
			int studentId = students.get(i).getId();
			List<Doubt> doubts = teacherService.getAllDoubtByStudentId(studentId);
			int nn = doubts.size();
			for(int j=0;j<nn;j++) {
				Doubt db = doubts.get(j);
				String answer = db.getAnswer();
				if(answer == null || "".equals(answer)) {
					doubtList.add(db);
				}
			}
		}
		model.addAttribute("doubtList", doubtList);
		
		return "teacher/teacherCheckDoubt.jsp";
	}
	
	@RequestMapping(value="/answerDoubtForm")
	public String teacherAnswerDoubtForm() {
		return "teacher/teacherAnswerDoubt.jsp";
	}
	
	@RequestMapping(value="/answerDoubt")
	public String teacherAnswerDoubt(Model model,int id,String answer) throws Exception {
		
		answer = new String(answer.getBytes("iso-8859-1"),"utf-8");
		Doubt doubt = new Doubt();
		doubt.setId(id);
		doubt.setAnswer(answer);
		int num = teacherService.updateDoubt(doubt);
		if(num == 1) {
			model.addAttribute("message", "回复成功");
		}else {
			model.addAttribute("message", "回复失败");
		}
		
		return "teacher/main.jsp";
	}
	

论文报告:

在这里插入图片描述

总结:

经过近期对 java 面向对象程序设计、前端知识以及JAVA 框架的掌握和学习,以及这段时间这个毕业设计管理系统的开发,让我更加了解到 java 学习的重要性。在开发这个系统是哪个,我完成了多个实验以及毕业设计管理平台的功能测试,阶段的系统开发学习当中,我从认识到熟悉java,而后到能够自主运用相关技术,我发现了它确实有很多方便之处,比如java集抽象性和封装性以及继承性和多态性于一体,实现了对代码重用和代码扩充功能,提高了整体软件开发的速度和效率。比如管理员添加用户的时候报java.lang.NullPointException、解决的方法:查看控制台打印信息、发现添加的时候未填写相关信息、报java.lang.NullPointException、通过断电调试发现用户信息为空的数据项、在前端保存的时候必须填写用户完整相关信息或者数据库设置字段可以为空都可以解决、 我学习程序设计的主要目的就是提高自己实际问题的程序解决方案的关键技能和技术。

获取源码:

大家点赞、收藏、关注、评论啦
🍅查看下方微信号获取联系方式 📝
🚀🚀🚀精彩系列推荐
Java毕设项目精品实战案例《1000套》
精彩专栏推荐订阅:在下方专栏

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【C语言】结构体详解(一)

目录 1、什么是结构体? 2、结构体成分 3、结构体变量的定义与初始化 3.1、结构体变量的三种定义方式 3.2、结构体变量的初始化 4、结构体成员的访问&#xff08;两种方式&#xff09; 4.1、直接访问 4.2、间接访问 5、结构的特殊声明 5.1、不完全声明&#xff08;匿…

医院陪诊管理系统(源码+文档)

TOC) 文件包含内容 1、搭建视频 2、流程图 3、开题报告 4、数据库 5、参考文献 6、服务器接口文件 7、接口文档 8、任务书 9、功能图 10、环境搭建软件 11、十六周指导记录 12、答辩ppt模板 13、技术详解 14、前端后台管理&#xff08;管理端程序&#xff09; 15、项目截图 1…

06-JavaScript DOM对象

1. 从ECMA到W3C 我们知道&#xff0c;ECMA定义的是js的变量语法等基础的标准规范&#xff0c;而W3C是针对浏览器API提出的规范&#xff0c; 所以我们要工作不可能只了解语法&#xff0c;我们的代码要在浏览器上跑起来就需要我们去了解W3C的标准。 那么W3C规定了哪一系列的的A…

深入PostgreSQL中的pg_global表空间

pg_global表空间的位置 在PG当中&#xff0c;一个实例(cluster)初始化完以后&#xff0c;你会看到有下边两个与表空间相关的目录生成&#xff1a; $PGDATA/base $PGDATA/global 我们再用元命令\db以及相关视图看看相应的表空间信息&#xff1a; postgres# \db …

28. UE5 RPG同步面板属性(四)

在前面几篇中&#xff0c;我们实现了以下步骤&#xff1a; 首先我们需要通过c去实现创建GameplayTag&#xff0c;这样可以在c和UE里同时获取到Tag创建一个DataAsset类&#xff0c;用于设置tag对应的属性和显示内容创建AttributeMenuWidgetController实现对应逻辑 上面几步在前…

MySQL数据库下,使页面传入的数据与保存的数据编码一致

一、查询当前MySQL数据库的编码 &#xff08;1&#xff09;登录MySQL数据库&#xff08;Windows系统&#xff09;&#xff1a;winR打开命令终端&#xff0c;cd到MySQL的bin目录&#xff0c;输入mysql -u root -p&#xff0c;回车后输入登录密码 &#xff08;2&#xff09;查看…

【C++】C++入门第一课(c++关键字 | 命名空间 | c++输入输出 | 缺省参数)

目录 前言 C关键字 命名空间 1.命名空间的定义 A.标准命名空间定义 B.命名空间允许嵌套定义 C.同名命名空间的合并 2.命名空间的使用 加命名空间名称及作用限定符 使用using将命名空间中某个成员引入 使用using namespace命名空间名称引入 C的输入和输出 缺省参数…

C++类基础5——拷贝构造函数,拷贝赋值运算符(复制构造函数,复制赋值运算符)

拷贝控制操作 当定义一个类时&#xff0c;我们显式地或隐式地指定在此类望的对象拷贝&#xff0c;移动、赋值和销毁时做什么。 一个类通定义五种特殊的成员函数来控制这些操作&#xff0c;包括&#xff1a;拷贝构造函数(copy consinuctor)、拷贝赋值运算符(copy-assignment op…

如何修复开机但不显示任何内容的计算机?这里提供详细步骤

前言​ 计算机“无法开机”的最常见方式是PC实际开机但在显示器上不显示任何内容。你看到电脑机箱上的灯,可能看到里面的风扇在转,甚至可能听到声音,但屏幕上什么也没有显示,请按照我们提供的顺序尝试以下常见修复方法。 测试显示器 在对计算机的其余部分进行更复杂和耗时…

Mac 下安装maven教程

note&#xff1a;网上已经有很多该类型教程了&#xff0c;这边自身保留一份&#xff0c;方便后面使用&#xff1b; 一、安装地址&#xff1a;官网 二、安装步骤 $ tar -xvf apache-maven-3.3.9-bin.tar.gz //mac支持手动点击解压 $ sudo mv -f apache-maven-3.3.9 /usr…

C语言函数递归调用

在C语言中&#xff0c;函数可以直接或间接地调用自身&#xff0c;这种函数调用自身的过程称为递归调用。递归是一种强大的编程技巧&#xff0c;能够简化程序结构、提高代码的可读性和可维护性。本文将介绍C语言函数递归调用的原理、应用场景以及注意事项。 以下是我整理的关于…

HANA中的内存及磁盘使用统计

1. 引言 在实际使用中&#xff0c;通过HANA的admin控制台&#xff0c;确实可以得到很多重要的信息。但有的时候不如人愿&#xff0c;你需要提供相应的SQL语句得到具体的信息。 比如&#xff0c;我要得到所有的行表的内存及磁盘占用信息&#xff1b;我需要得到所有列表的内存及…

[WebGL] 实例化绘制性能测试

实例化绘制&#xff08; Instanced Drawing &#xff09;是 OpenGL / WebGL 等图形 API 中常用的性能优化技术&#xff0c;它适用于同样的模型绘制次数非常多的场景&#xff0c;能够有效的降低显存占用和图形 API 接口调用的次数&#xff0c;达到性能提升的效果。以前我只知道怎…

蓝桥杯 java 承压计算

题目: 思路&#xff1a; 1&#xff1a;其中的数字代表金属块的重量(计量单位较大) 说明每个数字后面不一定有多少个0 2&#xff1a;假设每块原料的重量都十分精确地平均落在下方的两个金属块上&#xff0c;最后&#xff0c;所有的金属块的重量都严格精确地平分落在最底层的电子…

QT 二维坐标系显示坐标点及点与点的连线-通过定时器自动添加随机数据点

QT 二维坐标系显示坐标点及点与点的连线-通过定时器自动添加随机数据点 功能介绍头文件C文件运行过程 功能介绍 上面的代码实现了一个简单的 Qt 应用程序&#xff0c;其功能包括&#xff1a; 创建一个 MainWindow 类&#xff0c;继承自 QMainWindow&#xff0c;作为应用程序的…

物联网学习1、什么是 MQTT?

MQTT&#xff08;Message Queuing Telemetry Transport&#xff09;是一种轻量级、基于发布-订阅模式的消息传输协议&#xff0c;适用于资源受限的设备和低带宽、高延迟或不稳定的网络环境。它在物联网应用中广受欢迎&#xff0c;能够实现传感器、执行器和其它设备之间的高效通…

FLASH的读取与写入

FLASH的写入 结合HAL库所给参数&#xff1a; 查阅具体使用芯片的参考手册。 就不在详细解释&#xff0c;英文自行翻译。具体代码如下&#xff1a; /*FLASH写入程序*/ void WriteFlashTest(uint32_t L, uint32_t addr, uint32_t *Data,int Page) {int i0;/* 1/4解锁FLASH*/HAL…

揭秘五力模型:轻松掌控企业竞争命脉,决策不再迷茫!

五力分析模型又成为波特五力模型是由著名的管理学者迈克尔波特(Michael Porter)在20世纪80年代初提出的一种理论框架&#xff0c;它对企业营销中的战略制定产生了全球性的深远影响。这一模型被广泛应用于企业竞争战略的分析&#xff0c;可以帮助企业有效地分析企业在营销环境中…

python-pytorch获取FashionMNIST实际图片标签数据集

在查看pytorch官方文档的时候&#xff0c;在这里链接中https://pytorch.org/tutorials/beginner/basics/data_tutorial.html的Creating a Custom Dataset for your files章节&#xff0c;有提到要自定义数据集&#xff0c;需要用到实际的图片和标签。 在网上找了半天没找到&a…

蓝海项目!黑科技引爆全网流量小红书拉新,单日暴力收益7000+,小白也能轻松上手【揭秘】

众所周知&#xff0c;自去年以来&#xff0c;图文作品在各大平台如快手和抖音的流量大增&#xff0c;这得益于这些平台与小红书的竞争。目前&#xff0c;小红书也在积极推广&#xff0c;成功推荐新用户下载应用的奖励高达15元&#xff0c;这一数字几乎是其他平台的几倍。此外&a…