【学生管理】期末练习题

环境准备

JDK1.8
Mysql 5.7+
navicat
Idea (Ultimate Edition)

1、项目准备(本小题15分,使用其它开发工具也可得分)

(1)下载并解压ks01项目,将项目重命名为ks01_你的学号,并将应用程序的名称改为ks01_你的学号。(5分,提交重命名后的截图)
在这里插入图片描述
(2)创建MySQL数据库,数据库名:ks01_你的学号;字符集:utf8mb4;排序规则:utf8mb4_general_ci。(5分,提交数据库截图)
在这里插入图片描述

(3)在ks01_你的学号数据库中创建学生表(student_你的学号),表结构如下表所示。(5分,提交表结构截图)
在这里插入图片描述

修改数据库配置
在这里插入图片描述
上传文件目录配置
在这里插入图片描述

2、编写实体类Student类,并提交Student类的代码截图(本小题10分)

@Data
@TableName("student_xxxxx")
public class Student {

    @TableId
    private Long stuNo;
    private String stuName;
    private String stuCls;
    private Integer stuSex;
    private String phoneNo;
    private String dormitoryNo;
    private String profilePhoto;

}

3、完成添加学生信息的功能,用户访问stuAdd.html,输入学生信息并提交后,将学生信息保存到数据库中的 student_你的学号表,提交成功后会显示添加成功提示。(本小题40分)

(1)请完成cn.edu.qvtu.ks01.r04.UpLoadControlller.upload()方法中的补充代码01,用于接收前端上传的文件。并提交upload()方法的代码截图。(10分)

@RestController
public class UpLoadControlller {
    @Value("${file.uploadDIR}")
    private String uploadDIR;
    @PostMapping("file.do")
    public Callback upload(@RequestParam("file1")MultipartFile file) throws IOException {
        //补充代码01
        String originalFilename = file.getOriginalFilename();
        originalFilename= UUID.randomUUID()+originalFilename;

        File dir = new File(uploadDIR);
        if(!dir.exists()){
            dir.mkdirs();
        }

        file.transferTo(new File(uploadDIR+"/"+originalFilename));
        return  new Callback(true,originalFilename);
    }
}

(2)完成cn.edu.qvtu.ks01.r02.StudentDAO类中补充代码02,实现插入数据的数据库语句,并提交补充代码02的截图。(5分)

@Mapper
public interface StudentDAO 
		extends BaseMapper<Student> {
    //补充代码02

    //补充代码05

}

(3)完成cn.edu.qvtu.ks01.r03.StudentService类中的补充代码03,实现插入数据的业务处理,并提交补充代码03的截图。(5分)

    public  Callback add(Student stu){
        //补充代码03
        int count = dao.insert(stu);
        if(count>0){
            return new Callback(true,"添加成功");
        }
        return new Callback(false,"添加失败");
    }

(4)完成cn.edu.qvtu.ks01.r04.StudentController类中的补充代码04,实现数据的接收与响应,并提交补充代码04的截图。(10分)

    //补充代码04
    @PostMapping("/add.do")
    public Callback add(Student student){
        service.add(student);
        return new Callback(true,"添加成功");
    }

(5)测试添加学生信息功能,提交成功的参考页面如下。注意:学号、姓名、班级必须为考生本人的信息,添加成功的参考截图如下(10分)。

在这里插入图片描述

4、完成查询学生信息的功能,用户访问stu.html,输入学生学号并提交后,将从数据库中的 student_你的学号 表查询数据,并显示在stu.html页面上。(本小题30分)

(1)完成cn.edu.qvtu.ks01.r02.StudentDAO类中补充代码05,实现根据学号查询数据的语句,并提交补充代码05的截图。(5分)

@Mapper
public interface StudentDAO extends BaseMapper<Student> {
    //补充代码02

    //补充代码05

}

(2)完成cn.edu.qvtu.ks01.r03.StudentService类中的补充代码06,实现根据学号查询数据的业务处理,并提交补充代码06的截图。(5分)

    public Callback findByStuNo(int stuNo){
        //补充代码06
        //提示:将Callback类中的msg属性设置为MvcConfig.getHandler(),用于映射虚拟路径
        Student student = dao.selectById(stuNo);
        if(student!=null){
            return new Callback(true,MvcConfig.getHandler(),student);
        }
        return new Callback(false,"未查询到学生信息");
    }

(3)完成cn.edu.qvtu.ks01.r04.StudentController类中的补充代码07,实现数据的接收与响应,并提交补充代码07的截图。(10分)

    @PostMapping("/findByStuNo.do")
    public Callback findByStuNo(Integer stuNo){
        return service.findByStuNo(stuNo);
    }

(4)测试查询学生信息功能,提交成功的参考页面如下。注意:必需使用学生本人的学号进行查询,所展示的列表的学号、姓名、班级必须为考生本人的信息,参考截图如下(10分)。

在这里插入图片描述

5、提交ks01_你的学号项目文件压缩包(本小题5分)

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值