国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

JavaWeb圖書管理系統(tǒng)課設(shè):全面掌握CRUD操作

這篇具有很好參考價(jià)值的文章主要介紹了JavaWeb圖書管理系統(tǒng)課設(shè):全面掌握CRUD操作。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。


前言


最近寫了個(gè)課設(shè),剛好剛學(xué)完javaweb需要鞏固一下,課設(shè)內(nèi)容是java增刪改查,想睡覺有人送枕頭了屬于是,這里我是實(shí)現(xiàn)了增刪改查,刪除那里我就偷懶了,只寫了批量刪除。(實(shí)際上就是黑馬項(xiàng)目套皮,不過我實(shí)現(xiàn)了修改功能,還是有點(diǎn)價(jià)值滴)

項(xiàng)目邏輯

后端寫好Servlet服務(wù),前端通過ajax申請(qǐng)服務(wù),并將表中數(shù)據(jù)通過Servlet與后臺(tái)數(shù)據(jù)庫交互,從而達(dá)到前端和后端互通的效果。

一、Mapper層實(shí)現(xiàn)代碼

1.BookMapper.class

代碼如下(示例):

package com.MyJavaClass.mapper;import com.MyJavaClass.pojo.Book;import org.apache.ibatis.annotations.*;import java.util.List;public interface BookMapper {
    @Select("select * from books")
    List<Book> selectAll();
    @Insert("insert into books values(null,#{bookName},#{writer},#{user},#{number},#{state})")
    void add(Book book);
    List<Book> selectBycondition();
    void deleteByIds(@Param("ids")int[] ids);
    @Select("select * from books limit #{begin}, #{size}")
    List<Book> selectByPage(@Param("begin")int begin,@Param("size") int size);
    @Select("select count(*) from books")
    int selectTotalCount();
    List<Book> selectByPageAndCondition(@Param("begin") int begin,@Param("size") int size,@Param("book") Book book);
    int selectTotalCountByCondition(Book book);
    @Update("update books set bookName = #{bookName}, writer = #{writer},user = #{user}, number = #{number}, state = #{state} where id = #{id}")
    void updateById(Book book);}

2.BookMapper.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="com.MyJavaClass.mapper.BookMapper">
    <select id="selectBycondition" resultType="com.MyJavaClass.pojo.Book">
        select * from books        <where>
            <if test=""></if>
        </where>
    </select>
    <delete id="deleteByIds">
        delete from books where id in        <foreach collection="ids" item="id" separator="," open="(" close=")">
            #{id}
        </foreach>
    </delete>
    <select id="selectByPageAndCondition" resultType="com.MyJavaClass.pojo.Book">
        select * from books        <where>
            <if test="book.number != null and book.number != '' ">
                and  number like #{book.number}
            </if>

            <if test="book.bookName != null and book.bookName != '' ">
                and  bookName like #{book.bookName}
            </if>
            <if test="book.writer != null and book.writer != '' ">
                and  writer like #{book.writer}
            </if>
            <if test="book.state != null">
                and  state = #{book.state}
            </if>
        </where>
        limit #{begin},#{size}
    </select>
    <select id="selectTotalCountByCondition" resultType="java.lang.Integer">
        select count(*)
        from books        <where>
            <if test="number != null and number != '' ">
                and  number like #{number}
            </if>
            <if test="bookName != null and bookName != '' ">
                and  bookName like #{bookName}
            </if>
            <if test="writer != null and writer != '' ">
                and  writer like #{book.writer}
            </if>
            <if test="state != null">
                and  state = #{state}
            </if>
        </where>
    </select></mapper>

二、Book數(shù)據(jù)類型

1.Book.class

    Integer id;
    String number;
    String bookName ;
    String writer ;
    String user ;
    Integer state ;

2.MySQL


id int PRIMARY KEY auto_increment,
  bookName varchar(20),
  writer varchar(20),
  user varchar(20),
  number varchar(20),
  state INT

三、Service層

1、Service接口

文件名:BookService

package com.MyJavaClass.service;import com.MyJavaClass.pojo.Book;import com.MyJavaClass.pojo.PageBean;import java.util.List;public interface BookService {

    List<Book> selectAll();
    void add(Book book);
    void deleteByIds(int[] ids);
    PageBean<Book> selectByPage(int currentPage,int pageSize);
    PageBean<Book> selectByPageAndCondition(int currentPage,int pageSize,Book book);
    void updateById(Book book);}

2、Service實(shí)現(xiàn)類

文件名:BookServiceimpl

package com.MyJavaClass.service.impl;import com.MyJavaClass.mapper.BookMapper;import com.MyJavaClass.pojo.Book;import com.MyJavaClass.pojo.PageBean;import com.MyJavaClass.service.BookService;import com.MyJavaClass.util.SqlSessionFactoryUtils;import org.apache.ibatis.session.SqlSession;import org.apache.ibatis.session.SqlSessionFactory;import java.util.List;public class BookServiceimpl implements BookService {
    SqlSessionFactory factory = SqlSessionFactoryUtils.getSqlSessionFactory();
    public List<Book> selectAll(){
        SqlSession sqlSession = factory.openSession();
        BookMapper bookMapper = sqlSession.getMapper(BookMapper.class);
        List<Book> books = bookMapper.selectAll();
        sqlSession.close();
        return books;
    }
    public void add(Book book){
        SqlSession sqlSession = factory.openSession();
        BookMapper bookMapper = sqlSession.getMapper(BookMapper.class);
        bookMapper.add(book);
        sqlSession.commit();
        sqlSession.close();
    }
    public void deleteByIds(int[] ids){
        SqlSession sqlSession = factory.openSession();
        BookMapper bookMapper = sqlSession.getMapper(BookMapper.class);
        bookMapper.deleteByIds(ids);
        sqlSession.commit();
        sqlSession.close();
    }

    @Override
    public PageBean<Book> selectByPage(int currentPage, int pageSize) {
        SqlSession sqlSession = factory.openSession();
        BookMapper bookMapper = sqlSession.getMapper(BookMapper.class);
        int begin = (currentPage - 1) * pageSize;
        int size = pageSize;
        List<Book> rows = bookMapper.selectByPage(begin,size);
        int totalCount = bookMapper.selectTotalCount();
        PageBean<Book> pageBean = new PageBean<>();
        pageBean.setRows(rows);
        pageBean.setTotalCount(totalCount);
        sqlSession.close();
        return pageBean;
    }

    @Override
    public PageBean<Book> selectByPageAndCondition(int currentPage, int pageSize, Book book) {
        SqlSession sqlSession = factory.openSession();
        BookMapper bookMapper = sqlSession.getMapper(BookMapper.class);
        int begin = (currentPage - 1) * pageSize;
        int size = pageSize;
        String number = book.getNumber();
        if(number != null && number.length()>0){
            book.setNumber("%" + number + "%");
        }
        String bookName = book.getBookName();
        if(bookName != null && bookName.length()>0){
            book.setBookName("%" + bookName + "%");
        }
        String writer = book.getWriter();
        if(writer != null && writer.length()>0){
            book.setWriter("%" + writer + "%");
        }
        List<Book> rows = bookMapper.selectByPageAndCondition(begin,size,book);
        int totalCount = bookMapper.selectTotalCountByCondition(book);
        PageBean<Book> pageBean = new PageBean<>();
        pageBean.setRows(rows);
        pageBean.setTotalCount(totalCount);
        sqlSession.close();
        return pageBean;
    }
    public void updateById(Book book){
        SqlSession sqlSession = factory.openSession();
        BookMapper bookMapper = sqlSession.getMapper(BookMapper.class);
        bookMapper.updateById(book);
        sqlSession.commit();
        sqlSession.close();
    }}

四、Servlet層

文件名:BookServlet.class

package com.MyJavaClass.web;import com.MyJavaClass.pojo.Book;import com.MyJavaClass.pojo.PageBean;import com.MyJavaClass.service.BookService;import com.MyJavaClass.service.impl.BookServiceimpl;import com.alibaba.fastjson.JSON;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.BufferedReader;import java.io.IOException;import java.util.List;@WebServlet("/Book/*")public class BookServlet extends BaseServlet{
    private BookService bookService = new BookServiceimpl();
    public void selectAll(HttpServletRequest req, HttpServletResponse resp)throws ServletException,IOException{
        List<Book> books = bookService.selectAll();
        String jsonString = JSON.toJSONString(books);
        resp.setContentType("text/json;charset=utf-8");
        resp.getWriter().write(jsonString);
    }
    public void add(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException{
        BufferedReader br = req.getReader();
        String params = br.readLine();

        Book book = JSON.parseObject(params,Book.class);

        bookService.add(book);

        resp.getWriter().write("success");
    }
    public void deleteByIds(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException{
        BufferedReader br = req.getReader();
        String params = br.readLine();
        int[] ids = JSON.parseObject(params,int[].class);
        bookService.deleteByIds(ids);
        resp.getWriter().write("success");
    }
    public void selectByPage(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException{
        String _currentPage = req.getParameter("currentPage");
        String _pageSize = req.getParameter("pageSize");

        int currentPage = Integer.parseInt(_currentPage);
        int pageSize = Integer.parseInt(_pageSize);

        //2. 調(diào)用service查詢
        PageBean<Book> pageBean = bookService.selectByPage(currentPage, pageSize);

        //2. 轉(zhuǎn)為JSON
        String jsonString = JSON.toJSONString(pageBean);
        //3. 寫數(shù)據(jù)
        resp.setContentType("text/json;charset=utf-8");
        resp.getWriter().write(jsonString);
    }
    public void selectByPageAndCondition(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException{
        String _currentPage = req.getParameter("currentPage");
        String _pageSize = req.getParameter("pageSize");
        int currentPage = Integer.parseInt(_currentPage);
        int pageSize = Integer.parseInt(_pageSize);

        BufferedReader br = req.getReader();
        String params = br.readLine();

        Book book = JSON.parseObject(params,Book.class);

        PageBean<Book> pageBean = bookService.selectByPageAndCondition(currentPage,pageSize,book);

        String jsonString = JSON.toJSONString(pageBean);

        resp.setContentType("text/json;charset=utf-8");
        resp.getWriter().write(jsonString);
    }
    public void updateById(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException{//        String id = req.getParameter("id");
        BufferedReader br = req.getReader();
        String params = br.readLine();
        Book book = JSON.parseObject(params, Book.class);
        if(book!=null){
            System.out.println("ok");
            System.out.println(book);
        }
        else System.out.println("no");
        bookService.updateById(book);
        resp.getWriter().write("success");
    }}

五、前端代碼實(shí)現(xiàn)

文件名:Book.html

<!DOCTYPE html><html lang="en"><head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .el-table .warning-row {
            background: oldlace;
        }
        .el-table .success-row {
            background: #f0f9eb;
        }
        body{
            background:url("img/p.png") no-repeat center top;
   		 background-size:cover;
   		 background-attachment:fixed;
   		 opacity:0.75;
        }
    </style></head><body><div id="app">
    <!--搜索表單-->
    <el-form :inline="true" :model="book" class="demo-form-inline">

        <el-form-item label="當(dāng)前狀態(tài)">
            <el-select v-model="book.state" placeholder="當(dāng)前狀態(tài)">
                <el-option label="在庫中" value="1"></el-option>
                <el-option label="未在庫中" value="0"></el-option>
            </el-select>
        </el-form-item>

        <el-form-item label="書籍編號(hào)">
            <el-input v-model="book.number" placeholder="書籍編號(hào)"></el-input>
        </el-form-item>

        <el-form-item label="書籍名稱">
            <el-input v-model="book.bookName" placeholder="書籍名稱"></el-input>
        </el-form-item>

        <el-form-item label="作者">
            <el-input v-model="book.writer" placeholder="作者"></el-input>
        </el-form-item>

        <el-form-item>
            <el-button type="primary" @click="onSubmit">查詢</el-button>
        </el-form-item>
    </el-form>

    <!--按鈕-->

    <el-row>

        <el-button type="danger" plain @click="deleteByIds">批量刪除</el-button>
        <el-button type="primary" plain @click="dialogVisible = true">新增</el-button>
        <el-button type="success" onclick="window.location.href='student.html'"plain>學(xué)生信息查詢</el-button>
    </el-row>
    <!--添加數(shù)據(jù)對(duì)話框表單-->
    <el-dialog
            title="新增書籍"
            :visible.sync="dialogVisible"
            width="30%"
            >
        <el-form ref="form" :model="book" label-width="80px">
            <el-form-item label="書籍編號(hào)">
                <el-input v-model="book.number"></el-input>
            </el-form-item>

            <el-form-item label="書籍名稱">
                <el-input v-model="book.bookName"></el-input>
            </el-form-item>

            <el-form-item label="作者">
                <el-input v-model="book.writer"></el-input>
            </el-form-item>

            <el-form-item label="借閱人">
                <el-input v-model="book.user"></el-input>
            </el-form-item>

            <el-form-item label="狀態(tài)">
                <el-switch v-model="book.state"
                           active-value="1"
                           inactive-value="0"
                ></el-switch>
            </el-form-item>

            <el-form-item>
                <el-button type="primary" @click="addBrand">提交</el-button>
                <el-button @click="dialogVisible = false">取消</el-button>
            </el-form-item>
        </el-form>
    </el-dialog>

    <el-dialog
            title="修改書籍"
            :visible.sync="dialog2Visible"
            width="30%"
    >
        <el-form ref="form" :model="brandSelect" label-width="80px">
            <el-form-item label="書籍編號(hào)">
                <el-input v-model="brandSelect.number"></el-input>
            </el-form-item>

            <el-form-item label="書籍名稱">
                <el-input v-model="brandSelect.bookName"></el-input>
            </el-form-item>

            <el-form-item label="作者">
                <el-input v-model="brandSelect.writer"></el-input>
            </el-form-item>

            <el-form-item label="借閱人">
                <el-input v-model="brandSelect.user"></el-input>
            </el-form-item>

            <el-form-item label="狀態(tài)">
                <el-switch v-model="brandSelect.state"
                           active-value="1"
                           inactive-value="0"
                ></el-switch>
            </el-form-item>

            <el-form-item>
                <el-button type="primary" @click="update">提交</el-button>
                <el-button @click="dialog2Visible = false">取消</el-button>
            </el-form-item>
        </el-form>
    </el-dialog>
    <!--表格-->
    <template >
        <el-table                :data="tableData"
                style="width: 100%"
                :row-class-name="tableRowClassName"
                @selection-change="handleSelectionChange"
        >
            <el-table-column
                    type="selection"
                    width="55">
            </el-table-column>
            <el-table-column
                    type="index"
                    width="50">
            </el-table-column>

            <el-table-column
                    prop="number"
                    label="書籍編號(hào)"
                    align="center"
            >
            </el-table-column>
            <el-table-column
                    prop="bookName"
                    label="書籍名稱"
                    align="center"
            >
            </el-table-column>
            <el-table-column
                    prop="writer"
                    align="center"
                    label="作者">
            </el-table-column>
            <el-table-column
                    prop="state"
                    align="center"
                    label="當(dāng)前狀態(tài)">
            </el-table-column>

            <el-table-column
                    prop="user"
                    align="center"
                    label="借閱人">
            </el-table-column>

            <el-table-column
                    align="center"
                    label="操作">

                <template slot-scope="scope">
                <el-row>
                    <el-button type="primary"@click="brandShow(scope.row)">修改</el-button>
                </el-row>
                </template>
            </el-table-column>

        </el-table>
    </template>

    <!--分頁工具條-->
    <el-pagination
            @size-change="handleSizeChange"
            @current-change="handleCurrentChange"
            :current-page="currentPage"
            :page-sizes="[5, 10, 15, 20]"
            :page-size="5"
            layout="total, sizes, prev, pager, next, jumper"
            :total="totalCount">
    </el-pagination></div><script src="js/axios-0.18.0.js"></script><script src="js/vue.js"></script><script src="element-ui/lib/index.js"></script><link rel="stylesheet" href="element-ui/lib/theme-chalk/index.css"><script>
    new Vue({
        el: "#app",
         mounted(){<!--     //當(dāng)頁面加載完成后,發(fā)送異步請(qǐng)求,獲取數(shù)據(jù)--><!--     var _this = this;--><!--     axios({--><!--         method:"get",--><!--         url:"http://localhost:8080/curriculumDesign/Book/selectAll"--><!--     }).then(function (resp) {--><!--         _this.tableData = resp.data;--><!--     })-->this.selectAll();
 },     
        methods: {
        //根據(jù)id查詢

        selectAll(){
        var _this = this;axios({
    method:"post",
    url:"http://localhost:8080/curriculumDesign/Book/selectByPage?currentPage="+this.currentPage+"&pageSize=" + this.pageSize}).then(resp =>{
    //設(shè)置表格數(shù)據(jù)
    _this.tableData = resp.data.rows; // {rows:[],totalCount:100}
    //設(shè)置總記錄數(shù)
    _this.totalCount = resp.data.totalCount;})},
            tableRowClassName({row, rowIndex}) {
                if (rowIndex === 1) {
                    return 'warning-row';
                } else if (rowIndex === 3) {
                    return 'success-row';
                }
                return '';
            },
            // 復(fù)選框選中后執(zhí)行的方法
            handleSelectionChange(val) {
                this.multipleSelection = val;
                console.log(this.multipleSelection)
            },brandShow(row) {
       // 獲取數(shù)據(jù)
       this.brandSelect = row;
       console.log(this.book);
       // 彈出窗口
       this.dialog2Visible = true;
       console.log(this.dialog2Visible);
       this.selectAll();},
                update(){
                var _this = this;
                axios({
                    method:"post",
                    url:"http://localhost:8080/curriculumDesign/Book/updateById",
                    data:_this.brandSelect //這是提交的表單數(shù)據(jù)
                }).then(function (resp){
                    //這里是success數(shù)據(jù)
                    if(resp.data == "success"){
                        //添加成功
                        _this.dialog2Visible = false;
                        console.log("修改成功!");
                        //重新查詢數(shù)據(jù)進(jìn)行顯示
                        _this.selectAll();
                        _this.$message({
                            message: '恭喜你,修改成功',
                            type: 'success'
                        });
                    }
                    else{
                        _this.$message.error('修改失敗');
                    }
                })
            },
            // 查詢方法
            onSubmit() {
                axios({
    method:"post",
    url:"http://localhost:8080/curriculumDesign/Book/selectByPageAndCondition?currentPage="+this.currentPage+"&pageSize="+this.pageSize,
    data:this.book}).then((resp) => {

    //設(shè)置表格數(shù)據(jù)
    this.tableData = resp.data.rows; // {rows:[],totalCount:100}
    //設(shè)置總記錄數(shù)
    this.totalCount = resp.data.totalCount;})
            },
            // 添加數(shù)據(jù)
            addBrand(){
                var _this = this;

    // 發(fā)送ajax請(qǐng)求,添加數(shù)據(jù)
    axios({
        method:"post",
        url:"http://localhost:8080/curriculumDesign/Book/add",
        data:_this.book    }).then(function (resp) {
       	//響應(yīng)數(shù)據(jù)的處理邏輯
       	if(resp.data == "success"){
            //添加成功
            //關(guān)閉窗口
            _this.dialogVisible = false;
            // 重新查詢數(shù)據(jù)
            _this.selectAll();
            // 彈出消息提示
            _this.$message({
                message: '恭喜你,添加成功',
                type: 'success'
            });
            }
    })
            },
            deleteByIds(){
    // 彈出確認(rèn)提示框
    this.$confirm('此操作將刪除該數(shù)據(jù), 是否繼續(xù)?', '提示', {
        confirmButtonText: '確定',
        cancelButtonText: '取消',
        type: 'warning'
    }).then(() => {
        //用戶點(diǎn)擊確認(rèn)按鈕
        //1. 創(chuàng)建id數(shù)組 [1,2,3], 從 this.multipleSelection 獲取即可
        for (let i = 0; i < this.multipleSelection.length; i++) {
            let selectionElement = this.multipleSelection[i];
            this.selectedIds[i] = selectionElement.id;
        }
        //2. 發(fā)送AJAX請(qǐng)求
        var _this = this;
        // 發(fā)送ajax請(qǐng)求,添加數(shù)據(jù)
        axios({
            method:"post",
            url:"http://localhost:8080/curriculumDesign/Book/deleteByIds",
            data:_this.selectedIds        }).then(function (resp) {
            if(resp.data == "success"){
                //刪除成功
                // 重新查詢數(shù)據(jù)
                _this.selectAll();
                // 彈出消息提示
                _this.$message({
                    message: '恭喜你,刪除成功',
                    type: 'success'
                });
            }
        })
    }).catch(() => {
        //用戶點(diǎn)擊取消按鈕
        this.$message({
            type: 'info',
            message: '已取消刪除'
        });
    });},
            //分頁
            handleSizeChange(val) {
                this.pageSize  = val;
                this.selectAll();
            },
            handleCurrentChange(val) {
                   this.currentPage  = val;
                this.selectAll();
            }
        },
        data() {
            return {
                // 當(dāng)前頁碼
                 // 每頁顯示的條數(shù)
                pageSize:5,
                // 總記錄數(shù)
                totalCount:100,
                // 當(dāng)前頁碼
                currentPage: 1,
                // 添加數(shù)據(jù)對(duì)話框是否展示的標(biāo)記
                dialogVisible: false,
                dialog2Visible: false,<!--                Integer id;--><!--    String number;--><!--    --><!--    String bookName ;--><!--    String writer ;--><!--    String user ;--><!--    Integer state ;-->
               book:{
               state:'',
               bookName:'',
               user:'',
               writer:'',
               number:"",
               id:""
               },
               brandSelect:{
               state:'',
               bookName:'',
               user:'',
               writer:'',
               number:"",
               id:""
               },
                // 品牌模型數(shù)據(jù)
                brand: {
                    status: '',
                    brandName: '',
                    companyName: '',
                    id:"",
                    ordered:"",
                    description:""
                },
                // 復(fù)選框選中數(shù)據(jù)集合
                multipleSelection: [],
                selectedIds:[],
                // 表格數(shù)據(jù)
                tableData: [{
                    number:"ccsu123",
                    bookName: '華為',
                    writer: '老人與海',
                    state: '1',
                    user:"唐濤",
                    id:'1'
                }]
            }
        }
    })</script></body></html>

總結(jié)

以上就是全部代碼了,做起來并不復(fù)雜,一兩天就能做完,在熟練的情況下不到一天就能弄完。 頁面如下

JavaWeb,圖書管理系統(tǒng),CRUD,MyBatis文章來源地址http://www.zghlxwxcb.cn/news/detail-478202.html

到了這里,關(guān)于JavaWeb圖書管理系統(tǒng)課設(shè):全面掌握CRUD操作的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 圖書館管理系統(tǒng)【GUI/Swing+MySQL】(Java課設(shè))

    圖書館管理系統(tǒng)【GUI/Swing+MySQL】(Java課設(shè))

    Swing窗口類型+Mysql數(shù)據(jù)庫存儲(chǔ)數(shù)據(jù) 適合作為Java課設(shè)?。?! jdk1.8+Mysql8.0+Idea或eclipse+jdbc ?本系統(tǒng)源碼地址:https://download.csdn.net/download/qq_50954361/87682509 更多Java課設(shè)系統(tǒng):更多Java課設(shè)系統(tǒng) 更多Java課設(shè)系統(tǒng)運(yùn)行效果展示:更多Java課設(shè)系統(tǒng)運(yùn)行效果展示? 部署教程地址:Java課設(shè)部

    2023年04月19日
    瀏覽(32)
  • 【Jsp課設(shè)】3款基于JavaWeb的學(xué)生選課管理系統(tǒng)

    【Jsp課設(shè)】3款基于JavaWeb的學(xué)生選課管理系統(tǒng)

    ?項(xiàng)目介紹:后端采用Jsp+Servlet。前端使用的是Layui的一個(gè)網(wǎng)站模板。開發(fā)一個(gè)在線的學(xué)生選課管理系統(tǒng),用于課程設(shè)計(jì)的使用。 項(xiàng)目類型:JavaWeb源碼? 用戶類型:2個(gè)角色(管理員+學(xué)生) 主要技術(shù):Jsp+Servlet+MySQL+Jquery(前端Bootstrap或者Layui) 開發(fā)工具:Eclipse/Idea均可使用,有兩

    2024年02月04日
    瀏覽(21)
  • 圖書管理系統(tǒng) (javaweb)

    圖書管理系統(tǒng) (javaweb)

    聲明一下 這個(gè)圖書館管理系統(tǒng)為我 自己 研究制作 而且我本人的英語不好 ,在一些類的命名可能很怪所以請(qǐng)大佬們請(qǐng)勿嘲笑 而且我本人是一位大一學(xué)生,代碼說不上有多精明 ,我本人在前端的制作方面可能不是很熟練QAQ 用戶的登錄以及注冊(cè) 對(duì)書籍的增刪查以及分頁 maven

    2024年02月05日
    瀏覽(24)
  • javaWeb圖書管理系統(tǒng)

    javaWeb圖書管理系統(tǒng)

    a.項(xiàng)目用到的技術(shù) IDE: Intellij IDEA 語言:java,html + ajax,js 數(shù)據(jù)庫:Mysql 數(shù)據(jù)庫可視化: navicat web服務(wù)器:Tomcat 框架:(mybatis,jquery,bootstrap) 項(xiàng)目用到maven 設(shè)計(jì)模式:MVC b.該項(xiàng)目的主要功能 管理員與普通用戶分為不同界面 管理員和普通用戶可修改個(gè)人信息 管理員和普通用

    2024年02月06日
    瀏覽(23)
  • 【JavaWeb實(shí)驗(yàn)】圖書管理系統(tǒng)

    【JavaWeb實(shí)驗(yàn)】圖書管理系統(tǒng)

    ?第一次寫文,做一次小嘗試。把一年前學(xué)校里面的小作業(yè)放上來,供參考 代碼將于文末以百度網(wǎng)盤的形式分享出來 熟悉并掌握如何編寫編寫各個(gè)頁面的參數(shù)傳遞以及jsp基本知識(shí)。 1 、實(shí)驗(yàn)?zāi)康?????? 通過JSPJDBC的綜合運(yùn)用,掌握服務(wù)端Java Web數(shù)據(jù)庫編程的基本原理和常用技

    2024年02月12日
    瀏覽(18)
  • 【數(shù)據(jù)庫課設(shè)】圖書館資源管理系統(tǒng) 源碼+流程圖+結(jié)構(gòu)設(shè)計(jì)(借還圖書 逾期罰款 圖書管理 讀者管理 信息查詢)python實(shí)現(xiàn)

    【數(shù)據(jù)庫課設(shè)】圖書館資源管理系統(tǒng) 源碼+流程圖+結(jié)構(gòu)設(shè)計(jì)(借還圖書 逾期罰款 圖書管理 讀者管理 信息查詢)python實(shí)現(xiàn)

    一個(gè)管理員編號(hào)對(duì)應(yīng)一個(gè)密碼,且需要有管理員注冊(cè)密匙。 可以在圖書信息表中錄入、修改、刪除圖書。 可以在圖書信息表中查詢書籍。 可以編輯圖書借閱、歸還信息。 可以編輯欠款信息。 可以編輯讀者信息表。 圖書館注冊(cè),獲得讀者編號(hào)。 可以在圖書信息表中查閱書籍

    2024年02月10日
    瀏覽(25)
  • 基于javaweb的圖書管理系統(tǒng)

    基于javaweb的圖書管理系統(tǒng)

    本項(xiàng)目采用eclipse工具開發(fā),jsp+servlet技術(shù)編寫,樣式采用了layui前端框架,數(shù)據(jù)庫采用的是mysql,navicat開發(fā)工具。 系統(tǒng)一共分為2個(gè)角色分別是: 管理員,學(xué)生 1、登錄 2、修改個(gè)人信息 3、圖書類型管理 4、圖書管理 5、圖書借閱管理 6、借閱審批管理 7、圖書借閱統(tǒng)計(jì) 8、學(xué)生

    2024年02月04日
    瀏覽(25)
  • JavaWeb期末項(xiàng)目 圖書館管理系統(tǒng)

    JavaWeb期末項(xiàng)目 圖書館管理系統(tǒng)

    1 項(xiàng)目基本信息 1.1 項(xiàng)目名稱 圖書館管理系統(tǒng) 1.2 開發(fā)運(yùn)行環(huán)境 Window 10 64位 JDK 1.8.0 Eclipse 4.8版本 MySql 5.5 Tomcat 9.0 2 項(xiàng)目需求分析 2.1 學(xué)生登錄部分 (1)學(xué)生注冊(cè):在進(jìn)入圖書館前必須要登錄,如果沒有學(xué)號(hào)則要注冊(cè),注冊(cè)時(shí)系統(tǒng)會(huì)將用戶填寫的學(xué)號(hào)與數(shù)據(jù)庫里面的數(shù)據(jù)對(duì)比,

    2024年02月10日
    瀏覽(30)
  • 基于JavaWeb的圖書館管理系統(tǒng)

    ?? 作者主頁:

    2024年02月05日
    瀏覽(41)
  • JavaWeb階段案例--簡易版管理圖書系統(tǒng)(增刪改查)

    JavaWeb階段案例--簡易版管理圖書系統(tǒng)(增刪改查)

    ? 在WEB-INF下創(chuàng)建一個(gè)lib包,并導(dǎo)入以下jar包:(導(dǎo)入后,鼠標(biāo)右鍵選中l(wèi)ib文件夾,單擊“add as lib...” ?注:使用Lombok包時(shí),除了需要導(dǎo)入jar包還需要從idea中下載Lombok插件 file -- setting -- plugins -- 搜Lombok -- 勾選上 -- Apply -- OK file -- setting -- Build Exec.....? -- Compiler -- Annotation Pro

    2024年02月08日
    瀏覽(18)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包