基于SpringBoot、SSM,Mysql等技术支持的智慧校园管理系统源码
这个资源的数据库sql文件能麻烦提供一下么?
还不如直接私信作者
别人都不知道你用的哪套系统,怎么可能给得出你想要的数据库文件。建议参考楼上说的直接去找作者。
这个问题好像没法回答啊
主要还是要明确你的需求,用来做什么?
是这个吗,付费下载的?
https://download.csdn.net/download/m0_54925305/85134398
最近开始做作业了啊
将系统源码链接发出来,sql给你逆向出来
还别说我找了一下 真找到了一份 , 你想要sql 还是整套源码呢
这问题没法给呀,得问项目的作者咯。
https://github.com/1binbin/myzhxy 你看看这个项目跟你的一样吗 还有要有代码的话,自己用sql工具加一下吧这个表应该也不会很多
最方便的方法还是找作者
去看看他的个人主页有没有留联系方式,或者搜一下github或者gitee搜一下同名的项目
你们上面回答的没意义,都不知道sql里面有那些数据,就是猜出来了字段名字你都和项目对的上才可以啊,不然就报错
这都行
你这种问法,能碰到真正回答到你需要的概率太低了。那我也就勉为其难的回答一下吧:
假设这个数据库包含用户表、学生表、老师表、课程表和选课表,这样可以支持一个简单的智慧校园管理系统的数据存储。您可以在此基础上进行扩展,增加更多实体和结构以满足系统需求。
/*创建数据库*/
CREATE DATABASE campus_management;
/*用户表*/
CREATE TABLE `user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(50) NOT NULL,
`password` varchar(50) NOT NULL,
`role` tinyint(1) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
/*学生表*/
CREATE TABLE `student` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(30) NOT NULL,
`sex` tinyint(1) NOT NULL,
`birthday` date NOT NULL,
`address` varchar(255) DEFAULT NULL,
`phone` varchar(20) NOT NULL,
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
/*老师表*/
CREATE TABLE `teacher` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(30) NOT NULL,
`sex` tinyint(1) NOT NULL,
`birthday` date NOT NULL,
`address` varchar(255) DEFAULT NULL,
`phone` varchar(20) NOT NULL,
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
/*课程表*/
CREATE TABLE `course` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(50) NOT NULL,
`teacher_id` int(11) NOT NULL,
`time` varchar(255) NOT NULL,
`address` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `teacher_id` (`teacher_id`),
CONSTRAINT `course_ibfk_1` FOREIGN KEY (`teacher_id`) REFERENCES `teacher` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
/*选课表*/
CREATE TABLE `selection` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`student_id` int(11) NOT NULL,
`course_id` int(11) NOT NULL,
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
KEY `student_id` (`student_id`),
KEY `course_id` (`course_id`),
CONSTRAINT `selection_ibfk_1` FOREIGN KEY (`student_id`) REFERENCES `student` (`id`),
CONSTRAINT `selection_ibfk_2` FOREIGN KEY (`course_id`) REFERENCES `course` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
可以参考下
package com.org.myzhxy.controller;
import com.org.myzhxy.pojo.Admin;
import com.org.myzhxy.pojo.LoginForm;
import com.org.myzhxy.pojo.Student;
import com.org.myzhxy.pojo.Teacher;
import com.org.myzhxy.service.AdminService;
import com.org.myzhxy.service.StudentService;
import com.org.myzhxy.service.TeacherService;
import com.org.myzhxy.util.*;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.imageio.ImageIO;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.UUID;
@Api(tags = "系统控制器")
@RestController
@RequestMapping("/sms/system")
public class SystemController {
@Autowired
private AdminService adminService;
@Autowired
private StudentService studentService;
@Autowired
private TeacherService teacherService;
/*
* 修改密码的处理器
* POST /sms/system/updatePwd/123456/admin
* /sms/system/updatePwd/{oldPwd}/{newPwd}
* 请求参数
oldpwd
newPwd
token 头
响应的数据
Result OK data= null
* */
@ApiOperation("更新用户密码的处理器")
@PostMapping("/updatePwd/{oldPwd}/{newPwd}")
public Result updatePwd(
@ApiParam("token口令") @RequestHeader("token") String token,
@ApiParam("旧密码") @PathVariable("oldPwd") String oldPwd,
@ApiParam("新密码") @PathVariable("newPwd") String newPwd
){
boolean expiration = JwtHelper.isExpiration(token);
if (expiration) {
// token过期
return Result.fail().message("token失效,请重新登录后修改密码");
}
// 获取用户ID和用类型
Long userId = JwtHelper.getUserId(token);
Integer userType = JwtHelper.getUserType(token);
oldPwd= MD5.encrypt(oldPwd);
newPwd= MD5.encrypt(newPwd);
switch (userType) {
case 1:
QueryWrapper<Admin> queryWrapper1=new QueryWrapper<>();
queryWrapper1.eq("id",userId.intValue());
queryWrapper1.eq("password",oldPwd);
Admin admin =adminService.getOne(queryWrapper1);
if (admin != null){
// 修改
admin.setPassword(newPwd);
adminService.saveOrUpdate(admin);
}else{
return Result.fail().message("原密码有误!");
}
break;
case 2:
QueryWrapper<Student> queryWrapper2=new QueryWrapper<>();
queryWrapper2.eq("id",userId.intValue());
queryWrapper2.eq("password",oldPwd);
Student student =studentService.getOne(queryWrapper2);
if (student != null){
// 修改
student.setPassword(newPwd);
studentService.saveOrUpdate(student);
}else{
return Result.fail().message("原密码有误!");
}
break;
case 3:
QueryWrapper<Teacher> queryWrapper3=new QueryWrapper<>();
queryWrapper3.eq("id",userId.intValue());
queryWrapper3.eq("password",oldPwd);
Teacher teacher =teacherService.getOne(queryWrapper3);
if (teacher != null){
// 修改
teacher.setPassword(newPwd);
teacherService.saveOrUpdate(teacher);
}else{
return Result.fail().message("原密码有误!");
}
break;
}
return Result.ok();
}
// POST /sms/system/headerImgUpload
@ApiOperation("文件上传统一入口")
@PostMapping("/headerImgUpload")
public Result headerImgUpload(
@ApiParam("头像文件") @RequestPart("multipartFile") MultipartFile multipartFile
,
HttpServletRequest request
){
String uuid = UUID.randomUUID().toString().replace("-", "").toLowerCase();
String originalFilename = multipartFile.getOriginalFilename();
int i = originalFilename.lastIndexOf(".");
String newFileName =uuid.concat(originalFilename.substring(i));
// 保存文件 将文件发送到第三方/独立的图片服务器上,
String portraitPath="C:/code/myzhxy/target/classes/public/upload/".concat(newFileName);
try {
multipartFile.transferTo(new File(portraitPath));
} catch (IOException e) {
e.printStackTrace();
}
// 响应图片的路径
String path="upload/".concat(newFileName);
return Result.ok(path);
}
@ApiOperation("通过token口令获取当前登录的用户信息的方法")
@GetMapping("/getInfo")
public Result getInfoByToken(
@ApiParam("token口令")@RequestHeader("token") String token){
boolean expiration = JwtHelper.isExpiration(token);
if (expiration) {
return Result.build(null,ResultCodeEnum.TOKEN_ERROR);
}
//从token中解析出 用户id 和用户的类型
Long userId = JwtHelper.getUserId(token);
Integer userType = JwtHelper.getUserType(token);
Map<String,Object> map =new LinkedHashMap<>();
switch (userType){
case 1:
Admin admin =adminService.getAdminById(userId);
map.put("userType",1);
map.put("user",admin);
break;
case 2:
Student student =studentService.getStudentById(userId);
map.put("userType",2);
map.put("user",student);
break;
case 3:
Teacher teacher= teacherService.getByTeacherById(userId);
map.put("userType",3);
map.put("user",teacher);
break;
}
return Result.ok(map);
}
@ApiOperation("登录的方法")
@PostMapping("/login")
public Result login(
@ApiParam("登录提交信息的form表单")@RequestBody LoginForm loginForm,
HttpServletRequest request){
// 验证码校验
HttpSession session = request.getSession();
String sessionVerifiCode = (String)session.getAttribute("verifiCode");
String loginVerifiCode = loginForm.getVerifiCode();
if("".equals(sessionVerifiCode) || null == sessionVerifiCode){
return Result.fail().message("验证码失效,请刷新后重试");
}
if (!sessionVerifiCode.equalsIgnoreCase(loginVerifiCode)){
return Result.fail().message("验证码有误,请小心输入后重试");
}
// 从session域中移除现有验证码
session.removeAttribute("verifiCode");
// 分用户类型进行校验
// 准备一个map用户存放响应的数据
Map<String,Object> map=new LinkedHashMap<>();
switch (loginForm.getUserType()){
case 1:
try {
Admin admin=adminService.login(loginForm);
if (null != admin) {
// 用户的类型和用户id转换成一个密文,以token的名称向客户端反馈
map.put("token",JwtHelper.createToken(admin.getId().longValue(), 1));
}else{
throw new RuntimeException("用户名或者密码有误");
}
return Result.ok(map);
} catch (RuntimeException e) {
e.printStackTrace();
return Result.fail().message(e.getMessage());
}
case 2:
try {
Student student =studentService.login(loginForm);
if (null != student) {
// 用户的类型和用户id转换成一个密文,以token的名称向客户端反馈
map.put("token",JwtHelper.createToken(student.getId().longValue(), 2));
}else{
throw new RuntimeException("用户名或者密码有误");
}
return Result.ok(map);
} catch (RuntimeException e) {
e.printStackTrace();
return Result.fail().message(e.getMessage());
}
case 3:
try {
Teacher teahcer =teacherService.login(loginForm);
if (null != teahcer) {
// 用户的类型和用户id转换成一个密文,以token的名称向客户端反馈
map.put("token",JwtHelper.createToken(teahcer.getId().longValue(), 3));
}else{
throw new RuntimeException("用户名或者密码有误");
}
return Result.ok(map);
} catch (RuntimeException e) {
e.printStackTrace();
return Result.fail().message(e.getMessage());
}
}
return Result.fail().message("查无此用户");
}
@ApiOperation("获取验证码图片")
@GetMapping("/getVerifiCodeImage")
public void getVerifiCodeImage(HttpServletRequest request, HttpServletResponse response){
// 获取图片
BufferedImage verifiCodeImage = CreateVerifiCodeImage.getVerifiCodeImage();
// 获取图片上的验证码
String verifiCode =new String( CreateVerifiCodeImage.getVerifiCode());
// 将验证码文本放入session域,为下一次验证做准备
HttpSession session = request.getSession();
session.setAttribute("verifiCode",verifiCode);
// 将验证码图片响应给浏览器
try {
ImageIO.write(verifiCodeImage,"JPEG",response.getOutputStream());
} catch (IOException e) {
e.printStackTrace();
}
}
}
这个部分我从租服务器开始讲,直至部署完成!
抱歉,段落中没有提供与提出问题相关的信息和解决方案。建议向相关开发人员或项目负责人获取SQL文件。或者,如果您有数据库设计和操作的经验,可以根据项目要求设计并创建一个相应的数据库,创建相应的表并插入数据。具体步骤如下:
注意:为保护个人隐私和知识产权,建议不要随意在公共平台上分享项目源代码和相关文件。