我的小组长是辜心玉,我们组课程设计的题目是:图书管理 系统,我认领的功能模块是:图书管理
controller
package com.library.Controller;
import com.library.pojo.Book;
import com.library.pojo.PageBean;
import com.library.pojo.Result;
import com.library.service.BookService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@Slf4j
@RestController
public class BookController {
@Autowired
private BookService bookService;
@GetMapping("/book/{page}/{pageSize}")
public Result Page(@PathVariable("page") Integer page,
@PathVariable ("pageSize") Integer pageSize){
log.info("分页查询, 参数: {},{}\",page,pageSize");
PageBean pageBean = bookService.page(page,pageSize);
return Result.seccess(pageBean);
}
@GetMapping("/book/{id}")
public Result page(@PathVariable("id") Integer id){
log.info("id查询{}",id);
return Result.seccess(bookService.selectByID(id));
}
@DeleteMapping("/book/{id}")
public Result delete(@PathVariable("id") Integer id){
log.info("根据id删除图书:{}",id);
bookService.delete(id);
return Result.success();
}
@PostMapping("/book")
public Result InsertBook(@RequestBody Book book){
bookService.insertbook(book);
return Result.success();
}
@PutMapping("/bookput/{id}")
public Result UpdateBook(@RequestBody Book book,@PathVariable("id") Integer id){
log.info("更新的图书信息:{}",id);
bookService.UpdateBook(book,id);
return Result.success();
}
@GetMapping("/book1/{bookname}")
public Result SelectByname(@PathVariable String bookname){
log.info("根据书名:{}",bookname);
return Result.seccess(bookService.selectByBookname(bookname));
}
}
mapper
package com.library.mapper;
import com.library.pojo.Book;
import org.apache.ibatis.annotations.*;
import java.util.List;
@Mapper
public interface BookMapper {
@Select("select * from book")
public List<Book> list();
@Select("select * from book where id=#{id}")
public Book selectByID(Integer id);
@Delete("delete from book where id=#{id}")
public int deleteBook(Integer ID);
@Insert("insert into book(name, author, publish, isbn, introduction, language, price, publish_date, status) values (#{name}, #{author}, #{publish}, #{isbn}, #{introduction}, #{language}, #{price}, #{publish_date}, #{status})")
public int insertbook(Book book);
@Update( {"update book set",
"name = #{book.name},",
"author = #{book.author},",
"publish = #{book.publish},",
"isbn = #{book.isbn},",
"introduction = #{book.introduction},",
"language = #{book.language},",
"price = #{book.price},",
"publish_date = #{book.publish_date},",
"status = #{book.status}",
"where id = #{id}"
})
public void UpdateBook(@Param("book") Book book, @Param("id") Integer id);
@Select("SELECT * FROM book WHERE name LIKE CONCAT('%', #{name}, '%')")
List<Book> selectByBookName(@Param("name") String name);
}
book
package com.library.pojo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Book {
private Long id;
private String name;
private String author;
private String publish;
private String isbn;
private String introduction;
private String language;
private Double price;
private String publish_date;
private Integer status;
}
pagebean
package com.library.pojo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
@Data
@NoArgsConstructor
@AllArgsConstructor
public class PageBean {
private Long total;//总记录数
private List rows;//数据列表
}
service
package com.library.service;
import com.library.pojo.Book;
import com.library.pojo.PageBean;
import com.library.pojo.Result;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public interface BookService {
PageBean page(Integer page, Integer pageSize);
Book selectByID(Integer id);
void delete(Integer id);
void insertbook(Book book);
Result UpdateBook(Book book, Integer id);
List<Book> selectByBookname(String bookname);
impl
package com.library.service.impl;
import com.library.mapper.BookMapper;
import com.library.pojo.Book;
import com.library.pojo.PageBean;
import com.library.pojo.Result;
import com.library.service.BookService;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class BookServiceimpl implements BookService {
@Autowired
private BookMapper bookMapper;
@Override
public PageBean page(Integer page, Integer pageSize) {
// 设置分页参数
PageHelper.startPage(page, pageSize);
// 执行分页查询
List<Book> bookList=bookMapper.list();
// System.out.println(peotList);
// 获取分页结果
// Page<Peot> p = (Page<Peot>) empList;
PageInfo<Book> p = new PageInfo<>(bookList);
//封装PageBean
// PageBean pageBean = new PageBean(p.getTotal(), p.getResult());
PageBean pageBean = new PageBean(p.getTotal(), p.getList());
return pageBean;
}
@Override
public Book selectByID(Integer id){
return bookMapper.selectByID(id);
}
@Override
public void delete(Integer id){bookMapper.deleteBook(id);}
@Override
public void insertbook(Book book){
bookMapper.insertbook(book);
}
@Override
public Result UpdateBook(Book book, Integer id){
bookMapper.UpdateBook(book, id);
return Result.success();
}
@Override
public List<Book> selectByBookname(String bookname) {
return bookMapper.selectByBookName(bookname);
}
}