学生管理系统带前端页面(springboot+mybatis+MySQL)

本人负责后端,本次完成了user的查询所有和添加功能

后端代码

数据层(Dao层)

@Mapper
public interface UserDao {
    User selectByNameId(User user);  //根据username和password查询

    List<User> selectAll();//查询所有

    int addUser(User user);//添加user

    int deleteUser(String id);//通过工号删除(修改逻辑删除字段0为删除)
}
    <insert id="addUser">
        insert into studentsystem.tb_user values (#{id},#{name},#{college},#{tel},#{email},#{username},#{password},#{status},#{deleted})
    </insert>
    <update id="deleteUser">
        update studentsystem.tb_user set deleted = 0 where id = #{id};
    </update>

    <select id="selectByNameId" resultType="com.example.studentsystem.pojo.User">
        select * from studentsystem.tb_user where username = #{username} and password = #{password}
    </select>
    <select id="selectAll" resultType="com.example.studentsystem.pojo.User">
        select * from studentsystem.tb_user where deleted = 1
    </select>

业务层(Service)

@Transactional
public interface UserService {
    boolean login(User user);  //登录

    List<User> selectAll(); //查询所有

    boolean addUser(User user);//添加

    boolean deleteUser(String id);
}
@Service
public class UserServiceImpl implements UserService {
    @Autowired
    private UserDao userDao;

    @Override
    public boolean login(User user) {
        User user1 = userDao.selectByNameId(user);
        if(user1 == null){
            return false;
        }
        return user1.getDeleted() != 0 && user1.getStatus() != 0;
    }

    @Override
    public List<User> selectAll() {
        List<User> users = userDao.selectAll();
        return users;
    }

    @Override
    public boolean addUser(User user) {
        if(user == null){
            return false;
        }
        user.setStatus(1);
        user.setDeleted(1);
        int i = userDao.addUser(user);
        return i>0;
    }

    @Override
    public boolean deleteUser(String id) {
        int i = userDao.deleteUser(id);
        return i>0;
    }
}

表现层(Controller)

@Slf4j
@RestController
@RequestMapping("/users")
public class UserController {
    @Autowired
    private UserService userService;

    @PostMapping("/login")
    public Result login(@RequestBody User user) {
        boolean flag = userService.login(user);
        return new Result(flag ? Code.SUCCESS : Code.FAIL, flag);
    }

    @PostMapping("/selectAll")
    public Result selectAll() {
        List<User> users = userService.selectAll();
        boolean flag = !users.isEmpty();
        log.info(users.toString());
        return new Result(flag ? Code.SUCCESS : Code.FAIL,users);
    }

    @PostMapping("/addUser")
    public Result addUser(@RequestBody User user) {
        boolean flag = userService.addUser(user);
        return new Result(flag ? Code.SUCCESS : Code.FAIL,flag);
    }

    @GetMapping("/deleteUser")
    public Result deleteUser(String id){
        boolean flag = userService.deleteUser(id);
        return new Result(flag ? Code.SUCCESS : Code.FAIL,flag);
    }
}

页面展示

数据库设计

 SQL脚本

create table studentsystem.tb_administrativeclass
(
    name      varchar(32)   not null comment '班级名称'
        primary key,
    teacherid varchar(32)   null comment '班主任工号',
    count     int           null comment '班级总人数',
    deleted   int default 1 null comment '逻辑删除字段0表示已删除',
    constraint fk_administrativeclass_teacherid
        foreign key (teacherid) references studentsystem.tb_user (id)
)
    comment '行政班';
create table studentsystem.tb_college
(
    name    varchar(32)   not null comment '学院名称'
        primary key,
    deleted int default 1 null comment '逻辑删除字段0表示已删除'
)
    comment '学院表';

create table studentsystem.tb_course
(
    id      varchar(32)   not null comment '课程ID'
        primary key,
    name    varchar(32)   null comment '课程名称',
    deleted int default 1 null comment '逻辑删除字段0表示已删除'
)
    comment '课程表';

create table studentsystem.tb_courseaim
(
    id          bigint        not null comment '主键id'
        primary key,
    description varchar(1024) null comment '课程目标描述',
    courseid    varchar(32)   null comment '课程ID',
    deleted     int default 1 null comment '逻辑删除字段0表示已删除',
    constraint fk_courseaim_courseid
        foreign key (courseid) references studentsystem.tb_course (id)
)
    comment '课程目标表';

create table studentsystem.tb_courseaim_evaluationbasis
(
    id              bigint        not null comment '主键ID'
        primary key,
    courseaimid     bigint        null comment '课程目标ID',
    evaluationbasis bigint        null comment '评价标准ID',
    deleted         int default 1 null comment '逻辑删除字段0表示已删除',
    constraint fk_courseaim_evaluationbasis_courseaimid
        foreign key (courseaimid) references studentsystem.tb_courseaim (id),
    constraint fk_courseaim_evaluationbasis_evaluationbasis
        foreign key (evaluationbasis) references studentsystem.tb_evaluationbasis (id)
)
    comment '课程目标与评价标准中间表';

create table studentsystem.tb_evaluationbasis
(
    id      bigint        not null comment '主键ID'
        primary key,
    name    varchar(16)   null comment '评价标准名称',
    deleted int default 1 null comment '逻辑删除字段0表示已删除'
)
    comment '评价标准表';

create table studentsystem.tb_student
(
    id        bigint        not null comment '学号'
        primary key,
    name      varchar(12)   null comment '姓名',
    sex       char          null comment '性别',
    classname varchar(32)   null comment '行政班级名称',
    college   varchar(32)   null comment '学院名称',
    deleted   int default 1 null comment '逻辑删除字段0表示已删除',
    constraint fk_student_classname
        foreign key (classname) references studentsystem.tb_administrativeclass (name),
    constraint fk_student_college
        foreign key (college) references studentsystem.tb_college (name)
)
    comment '学生表';

create table studentsystem.tb_student_course
(
    id        bigint        not null comment '主键ID'
        primary key,
    studentid bigint        null comment '学生ID',
    courseid  varchar(32)   null comment '课程ID',
    score     double        null comment '总分',
    jsonscore varchar(2048) null comment '各评价标准成绩',
    deleted   int default 1 null comment '逻辑删除字段0表示已删除',
    constraint fk_student_course_courseid
        foreign key (courseid) references studentsystem.tb_course (id),
    constraint fk_student_course_studentid
        foreign key (studentid) references studentsystem.tb_student (id)
)
    comment '学生与课程中间表';

create table studentsystem.tb_student_course
(
    id        bigint        not null comment '主键ID'
        primary key,
    studentid bigint        null comment '学生ID',
    courseid  varchar(32)   null comment '课程ID',
    score     double        null comment '总分',
    jsonscore varchar(2048) null comment '各评价标准成绩',
    deleted   int default 1 null comment '逻辑删除字段0表示已删除',
    constraint fk_student_course_courseid
        foreign key (courseid) references studentsystem.tb_course (id),
    constraint fk_student_course_studentid
        foreign key (studentid) references studentsystem.tb_student (id)
)
    comment '学生与课程中间表';

create table studentsystem.tb_teachclass
(
    id        bigint        not null comment '主键id'
        primary key,
    teacherid varchar(32)   null comment '老师工号',
    couseid   varchar(32)   null comment '课程ID',
    name      varchar(32)   null comment '班级名称',
    count     int           null comment '班级总人数',
    deleted   int default 1 null comment '逻辑删除字段0表示已删除',
    constraint fk_teachclass_couseid
        foreign key (couseid) references studentsystem.tb_course (id),
    constraint fk_teachclass_teacherid
        foreign key (teacherid) references studentsystem.tb_user (id)
)
    comment '教学班';

create table studentsystem.tb_user
(
    id       varchar(32)   not null comment '教职工工号'
        primary key,
    name     varchar(12)   null comment '老师姓名',
    college  varchar(32)   null comment '学院名称',
    tel      char(11)      null comment '电话号码',
    email    varchar(32)   null comment '邮箱',
    username varchar(32)   null comment '用户名',
    password varchar(32)   null comment '密码',
    status   int default 1 null comment '账号状态1正常,0异常',
    deleted  int default 1 null comment '逻辑删除字段0表示已删除',
    constraint username
        unique (username),
    constraint fk_user_college
        foreign key (college) references studentsystem.tb_college (name)
)
    comment '用户表';

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
很高兴能为您提供帮助!下面是一个简单的SpringBoot+MyBatis+MySQL+Vue实现图书管理系统的步骤: 1. 创建SpringBoot项目 使用Spring Initializr创建一个新的SpringBoot项目,并添加web、mybatismysql依赖。 2. 配置MySQL数据库 在application.properties文件中添加MySQL数据库连接信息,包括数据库URL、用户名、密码等。 3. 创建数据库表 在MySQL中创建一个名为books的数据库表,用于存储图书信息,包括图书ID、图书名称、图书作者、图书出版社等字段。 4. 创建MyBatis映射文件 在src/main/resources目录下创建一个名为mapper的文件夹,用于存放MyBatis映射文件。创建一个名为BookMapper.xml的映射文件,定义对books表的CRUD操作。 5. 创建Book实体类 在src/main/java目录下创建一个名为entity的包,用于存放实体类。创建一个名为Book的实体类,属性包括图书ID、图书名称、图书作者、图书出版社等。 6. 创建BookService接口和实现类 在src/main/java目录下创建一个名为service的包,用于存放服务接口和实现类。创建一个名为BookService的接口,并定义对books表的CRUD操作。创建一个名为BookServiceImpl的实现类,实现BookService接口。 7. 创建BookController类 在src/main/java目录下创建一个名为controller的包,用于存放控制器类。创建一个名为BookController的控制器类,定义RESTful API接口,包括查询图书列表、添加图书、修改图书和删除图书等。 8. 创建前端页面 使用Vue.js创建一个前端页面,包括图书列表、添加图书、修改图书和删除图书等功能。 9. 测试运行 启动SpringBoot应用程序,并在浏览器中测试RESTful API接口和前端页面功能。 以上是简单的实现步骤,具体实现过程和代码可以根据您的需要进行调整和修改。希望对您有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值