# java课设图书管理系统swing **Repository Path**: deng-xiaopingsosososs/java-book ## Basic Information - **Project Name**: java课设图书管理系统swing - **Description**: 一个简单的javase课设,使用图形化界面,src下包含输入框的图书管理系统 - **Primary Language**: Java - **License**: GPL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 6 - **Forks**: 0 - **Created**: 2022-10-08 - **Last Updated**: 2024-12-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: Java, javase课设, Swing ## README # **java课设图书管理系统swing** #### 介绍 一个简单的javase课设(简单的窗口操作不用swing操作src/图书管理系统下,过于简单不做操作) #### 软件架构 java(swing)+mysql #### 安装教程 1. 将src/sql下的数据表导入到数据库中,我建的数据库名为book,不一样记得修改com/utils下DBUtils.java里的配置 2. 如果启动不成功,可能是缺少mysql-connector-java,项目com/lib包下有![输入图片说明](https://foruda.gitee.com/images/1665223897229131000/804f3c4a_8449297.png "Snipaste_2022-10-08_17-55-25.png")这样即可。 3. xxxx #### 使用说明 1. 在src/com/utils/DBUtils.java(连接数据库,增添删) ``` //数据库地址 static final String url = "jdbc:mysql://localhost:3306/book?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=UTC"; // 数据库的用户名与密码,需要根据自己的设置 static final String user = "root"; static final String password = "lin2002";` ``` 2. xxxx 3. xxxx #### 参与贡献 思凡,本人 ### 主要代码解释 (界面UI代码不做解释,主要参考黑马javase课程五百多节UI代码) ``` public Object[][] requestData() throws SQLException, ClassNotFoundException { //sql:选择所有图书 String sql = "select * from books"; //调用DBUtils操作数据库查询全部数据 ResultSet query = DBUtils.query(DBUtils.getConnection(), sql); //准备一个集合 List list = new ArrayList(); //给Object[][] data = new Object[list.size()][4];腾一行 list.add(new Book()); while (query.next()) { //逐行添加进list集合 Book book = new Book(); book.setId(query.getInt("id")); book.setName(query.getString("name")); book.setAuthor(query.getString("author")); book.setStatm(query.getInt("statm")); list.add(book); } //先添加图书表的第一行 Object[][] data = new Object[list.size()][4]; data[0][0] = "序号"; data[0][1] = "书名"; data[0][2] = "作者"; data[0][3] = "状态"; //逐行添加进Object[][] data中 for (int i = 1; i < list.size(); i++) { data[i][0] = list.get(i).getId(); data[i][1] = list.get(i).getName(); data[i][2] = list.get(i).getAuthor(); //判断状态 if (list.get(i).getStatm() == 0){ data[i][3] = "已借出"; }else { data[i][3] = "可借阅"; } } return data; } ``` 返回Object因为接受参数需要是Object ![输入图片说明](https://foruda.gitee.com/images/1665230089318515586/111d820d_8449297.png "Snipaste_2022-10-08_19-51-36.png") #### 演示 登录 ![输入图片说明](https://foruda.gitee.com/images/1665224386814403975/5821f9ff_8449297.png "Snipaste_2022-10-08_18-18-20.png") 主页![输入图片说明](https://foruda.gitee.com/images/1665224417346594767/ee2e7531_8449297.png "Snipaste_2022-10-08_18-18-47.png") 修改图书 ![输入图片说明](https://foruda.gitee.com/images/1665224456536026564/7c5aa541_8449297.png "Snipaste_2022-10-08_18-19-03.png") 借阅图书 ![输入图片说明](https://foruda.gitee.com/images/1665224488714261091/5eb1b83a_8449297.png "Snipaste_2022-10-08_18-19-14.png")