mybatis-plus之Service的使用
概述
类似DAO,MP在Service层也提供了模板工具。
使用
依赖
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.2</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.0.21</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</dependency>
</dependencies>
DB
CREATE TABLE `t_person` ( `id` int(11) NOT NULL, `name` varchar(255) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
实体类
@NoArgsConstructor
@AllArgsConstructor
@Data
@Builder
@TableName("t_person")
public class Person {
private int id;
private String name;
}
DAO
dao接口需要继承BaseMapper,泛型为实体类
public interface PersonDao extends BaseMapper<Person> {
}
service
service接口需要继承IService,泛型为实体类
public interface PersonService extends IService<Person> {
}
serviceImpl
serviceImpl实现service接口,并继承ServiceImpl类,泛型为DAO接口和实体类
@Service
public class PersonServiceImpl extends ServiceImpl<PersonDao, Person> implements PersonService {
}
测试
@SpringBootTest
@Slf4j
public class PersonServiceTest {
@Resource
private PersonServiceImpl personService;
@Test
public void testInsert(){
personService.save(Person.builder().id(1).name("xipeng").build());
}
@Test
public void testInsertOrUpdate(){
personService.saveOrUpdate(Person.builder().id(1).name("张三").build());
}
}
上一篇:
5款热门的远程控制软件,让你事半功倍
下一篇:
软件测试工程师工资怎么样?高吗?
