标准开发基本CRUD
第一步,数据库
构建类
package com.spring1.domain;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
@TableName("Book")
@Data
public class Book {
private String name;
private String author;
private double price;
private int number;
}
package com.spring1.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.spring1.domain.Book;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface BookDao extends BaseMapper<Book> {
}
构建service层
package com.spring1.service;
import com.spring1.domain.Book;
import java.util.List;
public interface BookService {
Boolean save(Book book);
Boolean update(Book book);
Boolean delete(String name);
Book getById(String name);
List<Book> getAll();
}
package com.spring1.service;
import com.spring1.dao.BookDao;
import com.spring1.domain.Book;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class BookServicelmpl implements BookService {
@Autowired
private BookDao bookDao;
@Override
public Boolean save(Book book) {
return bookDao.insert(book) > 0;
}
@Override
public Boolean update(Book book) {
return bookDao.updateById(book) > 0;
}
@Override
public Boolean delete(String name) {
return bookDao.deleteById(name) > 0;
}
@Override
public Book getById(String name) {
return bookDao.selectById(name);
}
@Override
public List<Book> getAll() {
return bookDao.selectList(null);
}
}
快速开发
构建service层
package com.spring1.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.spring1.domain.Book;
public interface IBookService extends IService<Book> {
}
点击ctrl+O可以看到:
已经实现大量方法,还可以重构。
package com.spring1.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.spring1.dao.BookDao;
import com.spring1.domain.Book;
import com.spring1.service.IBookService;
import org.springframework.stereotype.Service;
@Service
public class IBookServicelmpl extends ServiceImpl<BookDao, Book> implements IBookService {
}
测试:
package com.spring1;
import com.spring1.domain.Book;
import com.spring1.service.IBookService;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
@SpringBootTest
public class Test1 {
@Autowired
private IBookService bookService;
@Test
void testservice() {
bookService.list(null);
}
}