学生信息管理系统 —— 后端篇

本文详细描述了一个基于SpringBoot和Mybatis的项目,涉及数据库表结构创建、实体类设计(pojo)、以及MVC架构的实现。重点展示了如何在Mybatis中使用XML映射文件进行对象关系映射(ORM)。
摘要由CSDN通过智能技术生成

– Server version 8.0.22

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;

/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;

/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;

/*!50503 SET NAMES utf8 */;

/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;

/*!40103 SET TIME_ZONE=‘+00:00’ */;

/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;

/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;

/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE=‘NO_AUTO_VALUE_ON_ZERO’ */;

/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;

– Table structure for table achievement

DROP TABLE IF EXISTS achievement;

/*!40101 SET @saved_cs_client = @@character_set_client */;

/*!50503 SET character_set_client = utf8mb4 */;

CREATE TABLE achievement (

idachievement int NOT NULL AUTO_INCREMENT,

name varchar(45) DEFAULT NULL,

description text,

level varchar(45) DEFAULT NULL,

kind varchar(45) DEFAULT NULL,

time date DEFAULT NULL,

sid bigint NOT NULL,

PRIMARY KEY (idachievement),

UNIQUE KEY idachievement_UNIQUE (idachievement)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

/*!40101 SET character_set_client = @saved_cs_client */;

– Table structure for table achievement_url

DROP TABLE IF EXISTS achievement_url;

/*!40101 SET @saved_cs_client = @@character_set_client */;

/*!50503 SET character_set_client = utf8mb4 */;

CREATE TABLE achievement_url (

id int NOT NULL AUTO_INCREMENT,

idachievement int NOT NULL,

url varchar(100) NOT NULL,

PRIMARY KEY (id),

UNIQUE KEY id_UNIQUE (id)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

/*!40101 SET character_set_client = @saved_cs_client */;

– Table structure for table admin

DROP TABLE IF EXISTS admin;

/*!40101 SET @saved_cs_client = @@character_set_client */;

/*!50503 SET character_set_client = utf8mb4 */;

CREATE TABLE admin (

aid bigint NOT NULL,

pwd varchar(45) DEFAULT NULL,

PRIMARY KEY (aid),

UNIQUE KEY aid_UNIQUE (aid)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

/*!40101 SET character_set_client = @saved_cs_client */;

– Table structure for table course

DROP TABLE IF EXISTS course;

/*!40101 SET @saved_cs_client = @@character_set_client */;

/*!50503 SET character_set_client = utf8mb4 */;

CREATE TABLE course (

cid bigint NOT NULL,

cname varchar(45) NOT NULL,

credit double DEFAULT NULL,

prop enum(‘必修’,‘限选’,‘任选’) DEFAULT NULL,

faculty varchar(45) DEFAULT NULL,

teacher_name varchar(45) DEFAULT NULL,

begin int DEFAULT NULL,

end int DEFAULT NULL,

PRIMARY KEY (cid),

UNIQUE KEY cid_UNIQUE (cid)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

/*!40101 SET character_set_client = @saved_cs_client */;

– Table structure for table score

DROP TABLE IF EXISTS score;

/*!40101 SET @saved_cs_client = @@character_set_client */;

/*!50503 SET character_set_client = utf8mb4 */;

CREATE TABLE score (

sid bigint NOT NULL,

cid bigint NOT NULL,

score double NOT NULL,

PRIMARY KEY (sid,cid)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

/*!40101 SET character_set_client = @saved_cs_client */;

– Table structure for table student

DROP TABLE IF EXISTS student;

/*!40101 SET @saved_cs_client = @@character_set_client */;

/*!50503 SET character_set_client = utf8mb4 */;

CREATE TABLE student (

sid bigint NOT NULL,

pwd varchar(20) NOT NULL,

sname varchar(45) DEFAULT NULL,

gender enum(‘男’,‘女’) DEFAULT NULL,

birth varchar(45) DEFAULT NULL,

profession varchar(45) DEFAULT NULL,

faculty varchar(45) DEFAULT NULL,

s_class varchar(45) DEFAULT NULL,

grade varchar(45) DEFAULT NULL,

phone varchar(45) DEFAULT NULL,

politics_status varchar(45) DEFAULT NULL,

address varchar(45) DEFAULT NULL,

head_url varchar(300) DEFAULT NULL,

PRIMARY KEY (sid),

UNIQUE KEY uid_UNIQUE (sid)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

/*!40101 SET character_set_client = @saved_cs_client */;

– Table structure for table students_select_courses

DROP TABLE IF EXISTS students_select_courses;

/*!40101 SET @saved_cs_client = @@character_set_client */;

/*!50503 SET character_set_client = utf8mb4 */;

CREATE TABLE students_select_courses (

uid bit(12) NOT NULL,

cid bit(12) NOT NULL,

PRIMARY KEY (uid,cid)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

/*!40101 SET character_set_client = @saved_cs_client */;

/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;

/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;

/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;

/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;

/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;

/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;

/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;

– Dump completed on 2020-12-15 8:15:56

Mybatis


持久层框架使用 Mybatis

SpringBoot集成下的Mybatis 配置

org.mybatis.spring.boot

mybatis-spring-boot-starter

2.1.3

application.yml配置

mybatis:

configuration:

mybatis的日志输出

log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

mapper文件

mapper-locations: classpath:mapper/*.xml

配置类型别名,避免每次冗余的全限定名

type-aliases-package: com.jsy.simsserver.pojo

#日志输出

logging:

level:

#这个指定你的dao层,也就是mapper文件的所在包

com/jsy/simsserver/mapper: DEBUG

持久层结构

  • 在mapper层约定映射接口

StudentMapper.java

@Mapper

@Repository

public interface StudentMapper {

void insertStudent(Student student);

Student selectStudent(Long sid);

// ………………

}

  • 在resources/mapper/StudentMapper.xml里编写SQL语句,实现ORM(对象关系映射)
<?xml version="1.0" encoding="UTF-8" ?>

INSERT INTO student(sid,pwd,sname,gender,birth,profession,faculty,s_class,grade,phone,politics_status,address,head_url)

VALUES (#{sid},#{pwd},#{sname},#{gender},#{birth},#{profession},#{faculty},#{s_class},#{grade},#{phone},#{politics_status},#{address},#{head_url});

SpringBoot和SpringMVC

====================================================================================

项目采用MVC设计思想。

下面简单介绍一下,是SpringBoot集成下的采用MVC架构的Web项目。

项目结构图:

├── java

│ └── com

│ └── jsy

│ └── simsserver

│ ├── SimsServerApplication.java

│ ├── controller

│ │ ├── CourseController.java

│ │ ├── LoginController.java

│ │ ├── OSSUploadController.java

│ │ ├── ScoreController.java

│ │ ├── StudentController.java

│ │ └── TestController.java

│ ├── mapper

│ │ ├── CourseMapper.java

│ │ ├── ScoreMapper.java

│ │ └── StudentMapper.java

│ ├── pojo

│ │ ├── Achievement.java

│ │ ├── Admin.java

│ │ ├── Course.java

│ │ ├── OssSign.java

│ │ ├── Score.java

│ │ └── Student.java

│ ├── reponse

│ │ ├── ErrorMessage.java

│ │ ├── Message.java

│ │ └── SuccessMessage.java

│ └── service

│ ├── CourseService.java

│ ├── ScoreService.java

│ ├── StudentService.java

│ └── serviceImpl

│ ├── CourseServiceImpl.java

│ ├── ScoreServiceImpl.java

│ └── StudentServiceImpl.java

└── resources

├── application.yml

├── banner.txt

└── mapper

├── CourseMapper.xml

├── ScoreMapper.xml

└── StudentMapper.xml

pojo


编写一些实体类。

使用了lombok插件,避免编写大量的模板代码(gettersetter等等)

@Getter

@Setter

@NoArgsConstructor

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

最后总结我的面试经验

2021年的金三银四一眨眼就到了,对于很多人来说是跳槽的好机会,大厂面试远没有我们想的那么困难,摆好心态,做好准备,你也可以的。

另外,面试中遇到不会的问题不妨尝试讲讲自己的思路,因为有些问题不是考察我们的编程能力,而是逻辑思维表达能力;最后平时要进行自我分析与评价,做好职业规划,不断摸索,提高自己的编程能力和抽象思维能力。

BAT面试经验

实战系列:Spring全家桶+Redis等

其他相关的电子书:源码+调优

面试真题:


《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
img" style=“zoom: 33%;” />

最后总结我的面试经验

2021年的金三银四一眨眼就到了,对于很多人来说是跳槽的好机会,大厂面试远没有我们想的那么困难,摆好心态,做好准备,你也可以的。

另外,面试中遇到不会的问题不妨尝试讲讲自己的思路,因为有些问题不是考察我们的编程能力,而是逻辑思维表达能力;最后平时要进行自我分析与评价,做好职业规划,不断摸索,提高自己的编程能力和抽象思维能力。

[外链图片转存中…(img-PV5K3TtK-1713642077992)]

BAT面试经验

实战系列:Spring全家桶+Redis等

[外链图片转存中…(img-O79XISgI-1713642077992)]

其他相关的电子书:源码+调优

[外链图片转存中…(img-JqevH4wR-1713642077993)]

面试真题:

[外链图片转存中…(img-tW60hqBb-1713642077993)]

[外链图片转存中…(img-8erMqESM-1713642077993)]
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

  • 13
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值