《web应用技术》第八次课后作业

我的小组长是辜心玉,我们组课程设计的题目是:图书管理 系统,我认领的功能模块是:图书管理

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);
    }




}

实现页面

在这里插入图片描述

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
本系统的研发具有重大的意义,在安全性方面,用户使用浏览器访问网站时,采用注册和密码等相关的保护措施,提高系统的可靠性,维护用户的个人信息和财产的安全。在方便性方面,促进了校园失物招领网站的信息化建设,极大的方便了相关的工作人员对校园失物招领网站信息进行管理。 本系统主要通过使用Java语言编码设计系统功能,MySQL数据库管理数据,AJAX技术设计简洁的、友好的网址页面,然后在IDEA开发平台中,编写相关的Java代码文件,接着通过连接语言完成与数据库的搭建工作,再通过平台提供的Tomcat插件完成信息的交互,最后在浏览器中打开系统网址便可使用本系统。本系统的使用角色可以被分为用户和管理员,用户具有注册、查看信息、留言信息等功能,管理员具有修改用户信息,发布寻物启事等功能。 管理员可以选择任一浏览器打开网址,输入信息无误后,以管理员的身份行使相关的管理权限。管理员可以通过选择失物招领管理,管理相关的失物招领信息记录,比如进行查看失物招领信息标题,修改失物招领信息来源等操作。管理员可以通过选择公告管理,管理相关的公告信息记录,比如进行查看公告详情,删除错误的公告信息,发布公告等操作。管理员可以通过选择公告类型管理,管理相关的公告类型信息,比如查看所有公告类型,删除无用公告类型,修改公告类型,添加公告类型等操作。寻物启事管理页面,此页面提供给管理员的功能有:新增寻物启事,修改寻物启事,删除寻物启事。物品类型管理页面,此页面提供给管理员的功能有:新增物品类型,修改物品类型,删除物品类型。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值