From 60c078e2267965a389da163f34f805719c41469c Mon Sep 17 00:00:00 2001 From: xuxin <840198532@qq.com> Date: Sun, 26 Oct 2025 16:50:43 +0800 Subject: [PATCH] =?UTF-8?q?mybatis--=E5=88=A0=E9=99=A4=E5=91=98=E5=B7=A5&?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=91=98=E5=B7=A5&=E9=A2=84=E7=BC=96?= =?UTF-8?q?=E8=AF=91=E6=93=8D=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- springboot-mybatis-crud/.gitignore | 33 ++++++++ springboot-mybatis-crud/pom.xml | 83 +++++++++++++++++++ .../SpringbootMybatisCrudApplication.java | 13 +++ .../java/com/inmind/mapper/EmpMapper.java | 23 +++++ .../src/main/java/com/inmind/pojo/Emp.java | 25 ++++++ .../src/main/resources/application.properties | 20 +++++ ...SpringbootMybatisCrudApplicationTests.java | 44 ++++++++++ 7 files changed, 241 insertions(+) create mode 100644 springboot-mybatis-crud/.gitignore create mode 100644 springboot-mybatis-crud/pom.xml create mode 100644 springboot-mybatis-crud/src/main/java/com/inmind/SpringbootMybatisCrudApplication.java create mode 100644 springboot-mybatis-crud/src/main/java/com/inmind/mapper/EmpMapper.java create mode 100644 springboot-mybatis-crud/src/main/java/com/inmind/pojo/Emp.java create mode 100644 springboot-mybatis-crud/src/main/resources/application.properties create mode 100644 springboot-mybatis-crud/src/test/java/com/inmind/SpringbootMybatisCrudApplicationTests.java diff --git a/springboot-mybatis-crud/.gitignore b/springboot-mybatis-crud/.gitignore new file mode 100644 index 0000000..549e00a --- /dev/null +++ b/springboot-mybatis-crud/.gitignore @@ -0,0 +1,33 @@ +HELP.md +target/ +!.mvn/wrapper/maven-wrapper.jar +!**/src/main/**/target/ +!**/src/test/**/target/ + +### STS ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ +!**/src/main/**/build/ +!**/src/test/**/build/ + +### VS Code ### +.vscode/ diff --git a/springboot-mybatis-crud/pom.xml b/springboot-mybatis-crud/pom.xml new file mode 100644 index 0000000..33feccf --- /dev/null +++ b/springboot-mybatis-crud/pom.xml @@ -0,0 +1,83 @@ + + + 4.0.0 + com.inmind + springboot-mybatis-crud + 0.0.1-SNAPSHOT + springboot-mybatis-crud + springboot-mybatis-crud + + 11 + UTF-8 + UTF-8 + 2.7.6 + + + + org.mybatis.spring.boot + mybatis-spring-boot-starter + 2.3.0 + + + + com.mysql + mysql-connector-j + runtime + + + org.projectlombok + lombok + true + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + org.springframework.boot + spring-boot-dependencies + ${spring-boot.version} + pom + import + + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.8.1 + + 11 + 11 + UTF-8 + + + + org.springframework.boot + spring-boot-maven-plugin + ${spring-boot.version} + + com.inmind.SpringbootMybatisCrudApplication + true + + + + repackage + + repackage + + + + + + + + diff --git a/springboot-mybatis-crud/src/main/java/com/inmind/SpringbootMybatisCrudApplication.java b/springboot-mybatis-crud/src/main/java/com/inmind/SpringbootMybatisCrudApplication.java new file mode 100644 index 0000000..65b715c --- /dev/null +++ b/springboot-mybatis-crud/src/main/java/com/inmind/SpringbootMybatisCrudApplication.java @@ -0,0 +1,13 @@ +package com.inmind; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class SpringbootMybatisCrudApplication { + + public static void main(String[] args) { + SpringApplication.run(SpringbootMybatisCrudApplication.class, args); + } + +} diff --git a/springboot-mybatis-crud/src/main/java/com/inmind/mapper/EmpMapper.java b/springboot-mybatis-crud/src/main/java/com/inmind/mapper/EmpMapper.java new file mode 100644 index 0000000..fa02cb1 --- /dev/null +++ b/springboot-mybatis-crud/src/main/java/com/inmind/mapper/EmpMapper.java @@ -0,0 +1,23 @@ +package com.inmind.mapper; + +import com.inmind.pojo.Emp; +import org.apache.ibatis.annotations.Delete; +import org.apache.ibatis.annotations.Insert; +import org.apache.ibatis.annotations.Mapper; + +@Mapper//生成接口的实现类对象,交给spring容器管理,DI自动注入 +public interface EmpMapper { + /* + 删除员工 + */ + @Delete("delete from emp where id = #{id}") +// @Delete("delete from emp where id = ${id}") + public int delete(Integer id); + + /* + 新增员工 + */ + @Insert("insert into emp(username, name, gender, image, job, entrydate, dept_id, create_time, update_time)" + + "values (#{username},#{name},#{gender},#{image},#{job},#{entrydate},#{deptId},#{createTime},#{updateTime});") + public void insert(Emp emp); +} diff --git a/springboot-mybatis-crud/src/main/java/com/inmind/pojo/Emp.java b/springboot-mybatis-crud/src/main/java/com/inmind/pojo/Emp.java new file mode 100644 index 0000000..be094db --- /dev/null +++ b/springboot-mybatis-crud/src/main/java/com/inmind/pojo/Emp.java @@ -0,0 +1,25 @@ +package com.inmind.pojo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDate; +import java.time.LocalDateTime; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class Emp { + private Integer id; //ID + private String username; //用户名 + private String password;//密码 + private String name;//姓名 + private Short gender;//性别,1:男 2:女 + private String image;//图像url + private Short job;//职位, 1:班主任 2:讲师 3:学工主管 4:教研主管 5:咨询师 + private LocalDate entrydate;// 入职日期 + private Integer deptId;//部门ID + private LocalDateTime createTime;//创建时间 + private LocalDateTime updateTime;//修改时间 +} diff --git a/springboot-mybatis-crud/src/main/resources/application.properties b/springboot-mybatis-crud/src/main/resources/application.properties new file mode 100644 index 0000000..e96af6d --- /dev/null +++ b/springboot-mybatis-crud/src/main/resources/application.properties @@ -0,0 +1,20 @@ + +#下面这些内容是为了让MyBatis映射 +#指定Mybatis的Mapper文件 +mybatis.mapper-locations=classpath:mappers/*xml +#指定Mybatis的实体目录 +mybatis.type-aliases-package=com.inmind.mybatis.entity + + +#驱动类名称 +spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver +#数据库连接的url +spring.datasource.url=jdbc:mysql://localhost:3306/mybatis2 +#连接数据库的用户名 +spring.datasource.username=root +#连接数据库的密码 +spring.datasource.password=1234 + + +#输出mybatis的日志 +mybatis.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl diff --git a/springboot-mybatis-crud/src/test/java/com/inmind/SpringbootMybatisCrudApplicationTests.java b/springboot-mybatis-crud/src/test/java/com/inmind/SpringbootMybatisCrudApplicationTests.java new file mode 100644 index 0000000..58b8a51 --- /dev/null +++ b/springboot-mybatis-crud/src/test/java/com/inmind/SpringbootMybatisCrudApplicationTests.java @@ -0,0 +1,44 @@ +package com.inmind; + +import com.inmind.mapper.EmpMapper; +import com.inmind.pojo.Emp; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.TestTemplate; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; + +import java.time.LocalDate; +import java.time.LocalDateTime; + +@SpringBootTest +class SpringbootMybatisCrudApplicationTests { + + @Autowired + private EmpMapper empMapper; + + @Test + void contextLoads() { + } + + @Test + void testDelete(){ + //调用员工Mapper对象的删除员工的方法 + int delete = empMapper.delete(14); + System.out.println("删除的员工数量为:"+delete); + } + + @Test + void testInsert() { + Emp emp = new Emp(); + emp.setUsername("zhangsan"); + emp.setName("张三"); + emp.setGender((short) 1); + emp.setImage("1.jpg"); + emp.setEntrydate(LocalDate.of(2025,10,26)); + emp.setDeptId(1); + emp.setCreateTime(LocalDateTime.now()); + emp.setUpdateTime(LocalDateTime.now()); + empMapper.insert(emp); + } + +}