SSM图书管理(一)

原创 2018年04月16日 18:47:02

(1)bean(放入pojo)该bean和数据库中的表产生映射:首先创建Book实体类创建

package pojo;
public class Book {
    private int bookId;//属性要与表中的一模一样
    private String Isbn;
    private String Title;
    private String Price;
    public int getBookId() {
        return bookId;
    }
    public void setBookId(int bookId) {
        this.bookId = bookId;
    }
    public String getIsbn() {
        return Isbn;
    }
    public void setIsbn(String isbn) {
        Isbn = isbn;
    }
    public String getTitle() {
        return Title;
    }
    public void setTitle(String title) {
        Title = title;
    }
    public String getPrice() {
        return Price;
    }
    public void setPrice(String price) {
        Price = price;
    }
}

(2)创建mapper

package mapper;
import java.util.*;
import pojo.Book;
public interface BookMapper {
    //定义Book可以提供给用户进行哪些操作
    public List<Book> list();
    public void add(Book book);
    public void delete(int bookId);
    public Book get(int booId);
    public void update(Book book);
}

创建Book.xml:Book.xml建立关联并且执行相关操作

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
    PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
    "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="mapper.BookMapper">
    <!-- id和BookMapper里的函数名一样! -->
    <!-- resulttype 数据的返回类型 指定为Book即可 -->
    <select id="list" resultType="Book">
        select * from book_table
    </select>
    <insert id="add" parameterType="Book">
        insert into book_table (Isbn,Title,Price) values(#{Isbn},#{Title},#{Price})
    </insert>
    <delete id="delete" parameterType="Book">
        delete from book_table where bookId=#{bookId}
    </delete>
    <select id="get" parameterType="int" resultType="Book">
        select * from book_table where bookId=#{bookId}
    </select>
    <update id="update" parameterType="Book">
        update book_table set Isbn=#{Isbn},Title=#{Title},Price=#{Price} where bookId=#{bookId}
    </update>
</mapper>

(3)创建BookService接口:业务逻辑层,对外提供的功能

package service;
import java.util.List;
import pojo.Book;
public interface BookService {
    //调用list()实际是调用数据持久化层BookMapper中的list()
    public List<Book> list();//这里函数名与BookMapper中的名称无关
    public void add(Book book);
    public void delete(int bookId);
    public Book get(int booId);
    public void update(Book book);
}

接口实现类:

package service.impl;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import mapper.BookMapper;
import pojo.Book;
import service.BookService;
//告诉spring这是一个实现类
@ Service
public class BookServiceImpl implements BookService {
    @Autowired//自动帮我们new BookMapper的实例化对象 
    BookMapper bookMapper;
    //spring注解将属性实例化

    @Override
    public List<Book> list() {
        return bookMapper.list();
    }
    @Override
    public void add(Book book) {
        bookMapper.add(book);
    }
    @Override
    public void delete(int bookId) {
        bookMapper.delete(bookId);
    }
    @Override
    public Book get(int booId) {
        return bookMapper.get(booId);
    }
    @Override
    public void update(Book book) {
        bookMapper.update(book);
    }
}

(4)创建控制器类(控制层)

package control;//这个包在springMVC.xml进行了注册
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import pojo.Book;
import service.BookService;

@Controller//告诉spring mvc这是一个控制器类
@RequestMapping("")//接收用户请求
public class BookController {
    //所有的调用都是通过这个类
    @Autowired
    BookService bookService;//不需要new

    @RequestMapping("listBook")//相当于struts.xml中的action的名字name
    public ModelAndView ListBook(){
        ModelAndView mav=new ModelAndView();//充当原来set/get方法
        List<Book> cs=bookService.list();
        //mav存放转发到jsp页面的参数
        mav.addObject("cs",cs);//mav相当于一个hashmap
        //放入将要跳转的jsp文件名
        mav.setViewName("BookList");
        return mav;//return给框架
    }

    @RequestMapping("addBook")
    public ModelAndView addBook(Book book) {
        ModelAndView mav=new ModelAndView();
        bookService.add(book);
        //插入完成后马上回到list列表
        List<Book> cs=bookService.list();
        //mav存放转发到jsp页面的参数
        mav.addObject("cs",cs);//mav相当于一个hashmap
        //放入将要跳转的jsp文件名
        mav.setViewName("BookList");
        return mav;
    }

    @RequestMapping("deleBook")
    public ModelAndView deleBook(int bookId) {
        ModelAndView mav=new ModelAndView();
        bookService.delete(bookId);
        //插入完成后马上回到list列表
        List<Book> cs=bookService.list();
        //mav存放转发到jsp页面的参数
        mav.addObject("cs",cs);//mav相当于一个hashmap
        //放入将要跳转的jsp文件名
        mav.setViewName("BookList");
        return mav;
    }

    @RequestMapping("loadBook")
    public ModelAndView loadBook(int bookId) {
        ModelAndView mav=new ModelAndView();
        Book book=bookService.get(bookId);

        //mav存放转发到jsp页面的参数
        mav.addObject("book",book);//mav相当于一个hashmap
        //放入将要跳转的jsp文件名
        mav.setViewName("BookEdit");
        return mav;
    }

    @RequestMapping("editBook")
    public ModelAndView editBook(Book book) {
        ModelAndView mav=new ModelAndView();
        bookService.update(book);
        List<Book> cs=bookService.list();
        //mav存放转发到jsp页面的参数
        mav.addObject("cs",cs);//mav相当于一个hashmap
        //放入将要跳转的jsp文件名
        mav.setViewName("BookList");
        return mav;
    }
}

图书管理(spring+springMVC+mybatis整合)

对于三个框架学习以后,发现配置是一个很繁琐的过程,写一个整合记录,好让自己和需要的人学习学习. 首先用的是Oracle的数据库.准备工作这是BookInfo表 这是BookTypeInfo表 ...
  • a526059967
  • a526059967
  • 2016年12月07日 15:12
  • 2734

javaee综合应用---图书馆系统项目

代码量比较大,也就不直接粘贴了,传上来供免费下载浏览,对此系统有任何问题,欢迎交流讨论。QQ:2235623837 这是一个利用了servlet,jsp,xml技术的综合项目。 实现的功能有: 1...
  • qq_33665647
  • qq_33665647
  • 2016年09月11日 22:14
  • 837

SSM图书管理(三)

本文主要展示图书管理jsp页面的编写内容 BookList.jsp &lt;%@ page language="java" pageEncoding="utf...
  • qq_39026548
  • qq_39026548
  • 2018年04月04日 11:26
  • 20

SSM图书管理(二)

本篇文章主要讲述SSM框架搭建需要进行的相关配置。 (1)web.xml配置 &lt;?xml version="1.0" encoding="UTF-8&q...
  • qq_39026548
  • qq_39026548
  • 2018年04月04日 11:16
  • 14

Excel VBA高效办公应用-第十四章-Excel图书管理系统

本示例提供了以下功能: 1. 图书资料管理(订阅、搜索、删除) 2. 读者管理(添加、搜索、删除) 3. 借阅图书 4. 归还图书 看上去功能挺齐全,可用Excel实现事务管理系统,在如今的互联网...
  • hpdlzu80100
  • hpdlzu80100
  • 2017年06月24日 22:58
  • 818

图书管理系统(spring springmvc bootstrap)

Spring新手项目||图书管理系统 一. 本图书管理系统基于spring,spring mvc,数据库为mysql。前端使用了Bootstrap。 非常适合学习spring的新手。 二.功能概述 该...
  • YHJ1997
  • YHJ1997
  • 2017年09月03日 14:45
  • 1576

图书管理

package day5;import java.io.BufferedReader;  import java.io.IOException;  import java.io.InputStream...
  • z731225710
  • z731225710
  • 2009年04月09日 17:26
  • 167
收藏助手
不良信息举报
您举报文章:SSM图书管理(一)
举报原因:
原因补充:

(最多只允许输入30个字)