携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第8天,点击查看活动详情
1.命令行进入mysql
创建表语法:
增删改查:
2.使用工具——DataGrip
注:是收费的,30天免费试用
下载安装教程:
将csv文件导入数据库(只需更改一下列名和数据类型即可,非常方便)
3.mybatis
准备工作1——MyBatis FrameWork和Mysql Driver
需要加上MyBatis FrameWork和Mysql Driver
只需赋值这两块的Dependence即可
加入成功
准备工作2——准备数据库连接信息
查询数据
1.创建一个与数据库相对应的JavaBean
public class Student {
private int id;
private String name;
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;
}
}
2.新建一个mapper接口
@Mapper //专用于增删改查的接口
//实现类由mybatis和spring实现,可以通过spring的依赖注入获取实现类对象
public interface StudentMapper {
@Select("""
select id, name
from student
""")
List<Student> findAll();
}
编写单元测试
//单元测试
@SpringBootTest
public class TestStudentMapper {
@Autowired
StudentMapper studentMapper;
@Test
public void test(){
List<Student> all = studentMapper.findAll();
for (Student student : all) {
System.out.println(student.getId());
System.out.println(student.getName());
}
}
}
查询结果
相关知识点
1.Mapper接口,使用@Mapper关键字
2.@Select关键字,里面写上sql语句,当调用接口中的方法时就会执行该sql语句
3.编写单元测试:@SpringBootTest加在class前,@Test加在方法前
测试方法形式:public void 任意方法名();
根据编号查询学生
//根据编号查询学生
@Select("""
select id, name
from student
where id=#{id}
""")
Student findById(int id);
相关知识点:#{id}
单元测试:
@Test
public void test1(){
Student s = studentMapper.findById(3);
System.out.println(s.getName());
}
结果:
新增学生
//新增学生
@Insert("""
insert into student(id,name)
values(#{id},#{name})
""")
//多个参数时,要用@Param()告诉参数之间的对应关系
void insert(@Param("id") int id,@Param("name") String name);
相关知识点:
1.@Insert
2.多个参数时,要用@Param()告诉参数之间的对应关系
单元测试:
public void test2(){
studentMapper.insert(7,"周琦");
List<Student> all = studentMapper.findAll();
for (Student student : all) {
System.out.println(student.getId());
System.out.println(student.getName());
}
}
结果:
改进:
@Insert("""
insert into student(id,name)
values(#{id},#{name})
""")
//尽量用一个参数
void insert(Student stu);
@Test
public void test2(){
Student stu = new Student(8,"牛九");
studentMapper.insert(stu);
List<Student> all = studentMapper.findAll();
for (Student student : all) {
System.out.println(student.getId());
System.out.println(student.getName());
}
}
修改学生
@Update("""
update student set name = #{name} where id =#{id}
""")
void update(Student stu);
单元测试:
@Test
public void test3() {
Student stu = new Student(1, "张小三");
studentMapper.update(stu);
List<Student> all = studentMapper.findAll();
for (Student student : all) {
System.out.println(student.getId());
System.out.println(student.getName());
}
}
删除学生
@Delete("""
delete from student where id = #{id}
""")
void delete(int id);
单元测试:
@Test
public void test4() {
studentMapper.delete(7);
List<Student> all = studentMapper.findAll();
for (Student student : all) {
System.out.println(student.getId());
System.out.println(student.getName());
}
}
至此,mybatis增删改查实现完毕