9、Lombok
Project Lombok is a java library that automatically plugs into your editor and build tools, spicing up your java. Never write another getter or equals method again, with one annotation your class has a fully featured builder, Automate your logging variables, and much more.
-
java library
-
plugs
-
build tools
-
with one annotation your class
使用步骤:
-
再IDEA中安装Lombok插件!
-
在项目中导入Lombok的jar包
<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok --> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.24</version> <scope>provided</scope> </dependency>
-
在实体类上加注解
@Getter and @Setter @FieldNameConstants @ToString @EqualsAndHashCode @AllArgsConstructor, @RequiredArgsConstructor and @NoArgsConstructor @Log, @Log4j, @Log4j2, @Slf4j, @XSlf4j, @CommonsLog, @JBossLog, @Flogger, @CustomLog @Data @Builder @SuperBuilder @Singular @Delegate @Value @Accessors @Wither @With @SneakyThrows @val @var experimental @var @UtilityClass
说明:
@Data:无参构造、get、set、tostring、hashcode、equals @AllArgsConstructor @NoArgsConstructor @ToString @EqualsAndHashCode @Getter
10、多对一的处理
多对一: 多个对象对应一个对象
例如:学生和老师的关系
create table `teacher`( `id` INT(10) NOT NULL, `name` VARCHAR(30) DEFAULT NULL, PRIMARY KEY(`id`) )ENGINE=INNODB DEFAULT CHARSET=utf8 INSERT INTO teacher(`id`,`name`) VALUES (1,'秦老师'); create table `student`( `id` INT(10) NOT NULL, `name` VARCHAR(30) DEFAULT NULL, `tid` INT(10) DEFAULT NULL, PRIMARY KEY(`id`), KEY `fktid` (`tid`), CONSTRAINT `fktid` FOREIGN KEY (`tid`) REFERENCES `teacher` (`id`) )ENGINE=INNODB DEFAULT CHARSET=utf8 INSERT INTO student (`id`,`name`,`tid`) VALUES ('1','小明','1'); INSERT INTO student (`id`,`name`,`tid`) VALUES ('2','小红','1'); INSERT INTO student (`id`,`name`,`tid`) VALUES ('3','小张','1'); INSERT INTO student (`id`,`name`,`tid`) VALUES ('4','小李','1'); INSERT INTO student (`id`,`name`,`tid`) VALUES ('5','小王','1');
测试环境搭建
-
导入Lombok
-
新建实体类Teacher,Student
-
建立Mapper接口
-
建立Mapper.xml文件
-
在核心配置文件中绑定注册我们的Mapper
-
测试查询是否能够成功