学生表,选课表,课程表
课后作业
一、用Navicat Premium 12软件创建三张表:学生表、选课表、课程表
学生表(学号, 姓名, 性别, 年龄, 电话) - 学号是字符串类型
选课表(学号, 课程号, 成绩)
课程表(课程号, 课程名, 课时数) - 课程号是字符串类型
学生表:
选课表:
课程表:
二、创建实体类
1、创建学生实体类
package net.lhf.mybatis.bean;/*** 功能:学生实体类* 作者:李红芙* 日期:2021年03月14日*/
public class Student {private int id;private String name;private String gender;private int age;private Clazz clazz;private int phone;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getGender() {return gender;}public void setGender(String gender) {this.gender = gender;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public Clazz getClazz() {return clazz;}public void setClazz(Clazz clazz) {this.clazz = clazz;}public int getPhone() {return phone;}public void setPhone(int phone) {this.phone = phone;}@Overridepublic String toString() {return "Student{" +"id=" + id +", name='" + name + '\'' +", gender='" + gender + '\'' +", age=" + age +", clazz=" + clazz.getName() +",phone="+ phone +'}';}
}
2、创建选课实体类
package net.lhf.mybatis.bean;/*** 功能:选课实体类* 作者:李红芙* 日期:2021年3月14日*/
public class Curr {private int id;private int number;private int grade;public int getId() {return id;}public void setId(int id) {this.id = id;}public int getNumber() {return number;}public void setNumber(int number) {this.number = number;}public int getGrade() {return grade;}public void setGrade(int grade) {this.grade = grade;}@Overridepublic String toString() {return "Clazz{" +"id=" + id +", number='" + number + '\'' +", grade=" + grade +'}';}
}
3、创建课程实体类
package net.lhf.mybatis.bean;/*** 功能:课程实体类* 作者:李红芙* 日期:2021年3月14日*/public class Course {private int number;private String name;private int hour;public int getNumber() {return number;}public void setNumber(int number) {this.number = number;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getHour() {return hour;}public void setHour(int hour) {this.hour = hour;}@Overridepublic String toString() {return "Course{" +"number=" + number +", name='" + name + '\'' +", hour=" + hour +'}';}
}
三、创建映射器接口
创建课程映射器接口
package net.lhf.mybatis.mapper;import net.lhf.mybatis.bean.Course;
import net.lhf.mybatis.bean.Curr;
import net.lhf.mybatis.bean.Student;import java.util.List;/***功能:课程映射器接口* 作者:李红芙* 日期:2021年03月14日*/
public interface CourseMapper {Course findById(int id);List<Course> findAll();int number(Curr number);int id(Student id);
}
四、创建测试类TestStudentMapper
package net.tp.mybatis.mapper;
import net.tp.mybatis.bean.Student;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;import java.io.IOException;
import java.io.Reader;
import java.util.HashMap;
import java.util.List;/*** 功能:测试学生映射器接口* 作者:李红芙* 日期:2021年03月10日*/
public class TestStudentMapper {private SqlSession sqlSession; // SQL会话private StudentMapper studentMapper; // 学生映射器@Beforepublic void init() {try {// 读取MyBatis配置文件作为字符输入流Reader reader = Resources.getResourceAsReader("mybatis-config.xml");// 基于MyBatis配置文件构建SQL会话工厂SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(reader);// 利用SQL会话工厂获取SQL会话sqlSession = factory.openSession();// 利用SQL会话获取用户映射器对象studentMapper = sqlSession.getMapper(StudentMapper.class);} catch (IOException e) {e.printStackTrace();}}@Testpublic void testFindByCondition() {HashMap<String,Object> condition =new HashMap<String, Object>();condition.put("gender","女");condition.put("age",20);condition.put("name","唐");List<Student> students=studentMapper.findByCondition(condition);students.forEach(student -> System.out.println(student));if(students.size() >0){students.forEach(student -> System.out.println(student));}else {System.out.println("温馨提示:没有找到符合的学生记录~");}}@Afterpublic void destroy() {// 关闭SQL会话sqlSession.close();}}
五、运行测试方法testFindByCondition(),查看结果
学生表,选课表,课程表相关推荐
- mysql学生表选课表课程表_mysql查询(学生表、课程表、选课表)
************************************************************ 为sc表中的sno和cno创建外键 alter table sc add fo ...
- 学生表S,课程表C,学生课程表SC
面试题,有三张表,学生表S,课程表C,学生课程表SC,学生可以选修多门课程,一门课程可能被多个学生选修,通过SC表关联. (1)写出建表以及插入语句: (2)写出SQL语句,查询选修了所有选修课程的学 ...
- 实验3数据库查询-学生表(Student)、课程表(Course)、学生选课表(SC)
答案 查询select 彻底删除drop 修改alter 创建creat --删除数据库 drop database TK --数据库名 查询学生表S中的所有信息 use TK --数据库名 se ...
- MYSQL创建课程表course_MySQL简单案例之创建学生表、课程表和选课表
Course课程表 Cpno先行课 Ccredit学分 Cno课号 Sc表(选课表)Sno学号 Cno课号 Grade成绩 Student表 Sno学号 Sname姓名 Ssex性别 Sage年龄 S ...
- 现有三个表:学生表(学生id,姓名)、课程表(课程id,课程名)、学生选课表(学生id,课程id),请问要列出所有学生的选课情况(每个学生选了多少门课,分别是什么),请写出SQL语句
要求:用一条sql查出每个学生选了多少门课程,分别是什么 一.先建三张表:分别是学生表students.课程表classes.学生选课表stuclass 二.先分别查出每个学生选了多少门课程和每个学生 ...
- 建立学生选课表 mysql 语句_MySQL常用SQL语句(Python实现学生、课程、选课表增删改查)...
以基本的学生选课为例,建立选课数据库,学生.班级.选课信息三张表,并分别对表进行插删改操作: import MySQLdb try: conn = MySQLdb.connect(host = 'lo ...
- 建立学生选课表 mysql 语句_学生选课数据库SQL语句45道练习题整理及mysql常用函数(20161019)...
学生选课数据库SQL语句45道练习题: 一. 设有一数据库,包括四个表:学生表(Student).课程表(Course).成绩表(Score)以及教师信息表(Teacher).四 ...
- mysql查询学生表的总人数,MySQL查询练习2
MySQL查询练习2 导读: 本次MySQL的查询语句是本人考试题目: 所有题目都已通过: 该查询练习并没有sql文件进行检查: 如果有书写以及其他错误欢迎指出. 题目正文: 1.找出借书超过5本的借 ...
- mysql的表面sno大全_学生表学号sno数据库
Microsoft SQL Server 2005习题汇总小结 先建student ,course,sc表: CREATE TABLE Student ( Sno char(7) PRIM ...
- SQL笔试:Student学生表,Course 课程表,Sc选课表
tudent学生表(学号,姓名.性别.年龄.组织部门),Course 课程表(编号,课程名称),Sc选课表(学号,课程编号,成绩) 写一个SQL语句,查询选修了计算机原理的学生学号和姓名 select ...
最新文章
- python批量读取dat文件_python编写Windows环境下批量修改文件名
- 热部署Devtools的简单使用
- mysql双主同步一个库,CNESA
- boost::mpl::equal_to相关的测试程序
- bootstrap table移动端_bootstrap介绍
- 解决w3wp.exe内存占用问题[转载]
- 用C语言编译一元二次方程的求解,用c语言求解一元二次方程
- 怎么检测声音频率和幅值_作者特稿铝板塑性损伤的电磁超声非线性检测新方法...
- 电梯运行控制模式:如何做到人脸识别、刷卡、二维码?
- IIC和SPI的异同
- c语言 输出方阵。输入一个正整数 n(1≤n≤10),打印一个n行n列的方阵,输出如下方阵
- percona xtrabackup 之一 setup
- T5 根据派生类写出基类(Java) (10分)
- AD ADSI入门
- html给页面整体添加左右边距_打印html页面时的边距
- 孙宇晨:区块链行业势必迎来光明的未来
- 逆---LanSet.exe
- C语言基础——运算符(定义变量、转义字符、输入输出语句、运算符、32个关键字)
- 海尔旗下有屋智能IPO被终止:年应收账款10亿 受恒大拖累
- 转专业计算机常见的名词解释,迎鲜肉第9弹|大学生活必知名词解释