java简单图书管理系统项目(java图书管理系统详细设计)
本篇文章给大家谈谈java简单图书管理系统项目,以及java图书管理系统详细设计对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、java做一个简单的图书管理系统,大一新生,用基础做,软件能调试就行
- 2、用java编写一个 图书馆图书借阅管理系统
- 3、用java编写一个,图书管理系统
- 4、利用java制作一个图书管理系统需要哪些步骤?
- 5、用java编写一个简单的图书管理系统。 要求:实现浏览,借书,还书,查询,退出等功能(每次最多能借
java做一个简单的图书管理系统,大一新生,用基础做,软件能调试就行
从零开始学Java,本来利用数组只在一个界面就可以实现增删改查功能,学到接口后觉得实现分离效果会更好一些!所以进行了尝试,将管理员和用户中的图书查询,登录,图书出库合并在一起写了一个接口,用户类和管理员类实现这个接口!图书类写了一个抽象类里面都是一些图书的属性,用户类管理员类对图书类进行操作。
具体实现如下:
接口:存在三种方法 用户类和管理员类去实现这个接口,并实现着里面的方法
[java] view plain copy
public interface Person {
public boolean login(String user,String pwd); //登录方法
public void search(); //查询方法
public void reduce(String s,int i); // 图书出库
}
用户类: 实现接口,里面都是用户的方法,在测试类里调用这些方法实现其功能
[java] view plain copy
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class User implements Person{
private final String user = "user";
private final String pwd = "user";
List list = new ArrayList();
public void addBook(Book book){ //增加图书
list.add(book);
}
public boolean login(String user, String pwd) { //登录方法
if(this.user.equals(user) this.pwd.equals(pwd)){
return true;
}
return false;
}
@Override
public void reduce(String s, int i) { //结账
Iterator it = list.iterator();
while(it.hasNext()){
Book b = (Book)it.next();
if(b.getNum().equals(s)){
if(b.getCount() = i){
int m = b.getCount()-i;
b.setCount(m);
System.out.println("你的图书总价为:"+(b.getPrice()*i));
}else
System.out.println("你输入的书本数目超出了当前库存!");
}else{
System.out.println("没找到,你要加入的图书!");
}
}
}
@Override
public void search() { //查询图书当前情况
Iterator it = list.iterator();
while(it.hasNext()){
Book b = (Book)it.next();
System.out.println(b.getNum()+"\t"+b.getName()+"\t"
+b.getAnthor()+"\t"+b.getFromTime()
+"\t"+b.getPrice()+"\t"+b.getCount());
}
}
}
[java] view plain copy
/prepre name="code" class="java"span style="font-size:18px;"管理员类: 实现接口,里面都是管理员的方法,在测试类里调用这些方法实现其功能/spanspan style="font-size:18px;"/span
[java] view plain copy
span style="font-size:18px;"
/span
[java] view plain copy
package com.pv1;
import java.util.*;
public class Admin implements Person {
private final String user = "admin";
private final String pws = "admin";
List list = new ArrayList();
public boolean login(String user, String pwd) { // 登录方法
if (this.user.equals(user) this.pws.equals(pwd)) {
return true;
}
return false;
}
public void addBook(Book book) { // 增加图书
list.add(book);
}
public void search() { // 查询方法
Iterator it = list.iterator();
while (it.hasNext()) {
Book b = (Book) it.next();
System.out.println(b.getNum() + "\t" + b.getName() + "\t"
+ b.getAnthor() + "\t" + b.getFromTime() + "\t"
+ b.getPrice() + "\t" + b.getCount());
}
}
public void reduce(String num, int i) { // 图书出库
for (int j = 0; j list.size(); j++) {
Book b = (Book) list.get(j);
if (b.getNum().equals(num)) {
if (b.getCount() = i) {
int m = b.getCount() - i;
b.setCount(m);
System.out.println("取出成功!现在此书库存为:" + m);
j--;
break;
} else
System.out.println("你输入的书本数目超出了当前库存!");
}
if (j == list.size()) {
System.out.println("没找到,你要加入的图书!");
}
}
}
public void increase(String num, int i) { // 图书入库
for (int j = 0; j list.size(); j++) {
Book b = (Book) list.get(j);
if (b.getNum().equals(num)) {
if (i 0) {
System.out.println("你加入的图书数目不合法!");
} else {
int m = b.getCount() + i;
b.setCount(m);
}
}
if (j == list.size()) {
System.out.println("没找到,你要加入的图书!");
}
}
}
public void delete(String num) { //删除提供编号的图书
int j = 0;
for (j = 0; j list.size(); j++) {
Book b = (Book) list.get(j);
if (b.getNum().equals(num)) {
list.remove(b);
System.out.println("删除成功!");
j--;
break;
}
}
if (j == list.size()) {
System.out.println("未找到你要删除的图书!请确认编号后再删");
}
}
public boolean guanSearch(String num){
for (int j = 0; j list.size(); j++) {
Book b = (Book) list.get(j);
if (b.getNum().equals(num)) {
return true;
}
}
return false;
}
public void guan(String num, String name, String auther, String date,
double price, int count) { // 修改提供编号的图书
int j = 0;
for ( j = 0; j list.size(); j++) {
Book b = (Book) list.get(j);
if (b.getNum().equals(num)) {
b.setAnthor(auther);
b.setCount(count);
b.setFromTime(date);
b.setName(name);
b.setPrice(price);
break;
}
}
}
}
图书类:抽象类,里面全部是属性,方便用户管理员对其操作。
[java] view plain copy
package com.pv1;
import java.util.*;
public class Book {
private String num ;
private String name;
private String anthor;
private String fromTime;
private double price;
private int count;
public String getNum() {
return num;
}
public void setNum(String num) {
this.num = num;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAnthor() {
return anthor;
}
public void setAnthor(String anthor) {
this.anthor = anthor;
}
public String getFromTime() {
return fromTime;
}
public void setFromTime(String fromTime) {
this.fromTime = fromTime;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
public int getCount() {
return count;
}
public void setCount(int count) {
this.count = count;
}
}
测试类:
[java] view plain copy
package com.pv1;
import java.util.*;
public class BookTest {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
Book bo = new Book(); //在开始时加入一本图书,所用对象
Book bo1 = null; //循环加入图书建立的对象,开始设成空,防止加入图书时被覆盖
List list = new ArrayList(); //建立一个集合,存储管理员要添加的图书信息的对象
Admin ad = new Admin(); //建立管理员对象,管理员操作时调用管理员类中对象
User us = new User(); //建立用户对象,管理员操作时调用用户类中对象
boolean ad1 = true; //接受进入管理员操作界面的返回值
boolean us1 = true; //接受进入用户操作界面的返回值
bo.setAnthor("刘冰"); //书籍为空,加入一本图书
bo.setCount(20);
bo.setNum("1001");
bo.setName("一本道");
bo.setFromTime("2015-2-50");
bo.setPrice(250.0);
ad.addBook(bo); //通过对象传递在管理员类中加入一本图书
us.addBook(bo);
System.out.print("请输入用户名:"); //用户输入 用户名 密码
String user = input.next();
System.out.print("请输入密码:");//
String pwd = input.next();
ad1 = ad.login(user, pwd); //将 用户名 密码 传入管理员类中进行判断返回Boolean类型接受
us1 = us.login(user, pwd); //将 用户名 密码 传入用户类中进行判断返回Boolean类型接受
if (ad1) { //如果管理员类返回true进入 管理员操作界面
System.out.println("图书编号\t" + "书名\t" + "作者\t" + "出版日期\t" + "\t价格\t"
+ "库存");
ad.search();
while (true) {
bo1 = new Book();
System.out.println("1.查询 2.图书入库 3.图书出库 "
+ "4.新增图书 5.修改 6.删除 7.退出\t请输入您的选择:");
int xuan = input.nextInt();
switch (xuan) {
case 1:
System.out.println("图书编号\t" + "书名\t" + "作者\t" + "出版日期\t"
+ "价格\t" + "库存");
ad.search();
break;
case 2:
System.out.print("请输入你想入库的图书编号:");
String num = input.next();
System.out.print("请输入你想添加本图书的数量:");
int cou = input.nextInt();
ad.increase(num, cou);
break;
case 3:
System.out.print("请输入你想取出的图书编号:");
num = input.next();
System.out.print("请输入你想取出图书的数量:");
cou = input.nextInt();
ad.reduce(num, cou);
break;
用java编写一个 图书馆图书借阅管理系统
---------------------------------------------------
给你修改了三个地方:
1.borrowBooks方法中,将System.out.println("你要借吗?"); 改为:
System.out.println("你要借吗?输入1表示借,其他数字表示不借。");
保证输入的时候输入的数字,否则会报出异常。
2.borrowBooks方法中,将self[score] = all[9]; 改为:self[score] = all[i];
如果是all[9],那么就始终是最后一本书籍信息了。
3.have方法中,你是想将所借的书籍信息都打印出来。修改的比较多,下面注释代码是原来的。
void have(Books[] self) {
// for (int i = 0; i 2; i++) {
// self[i].showBookInfo();
// }
for (int i = 0; i 3; i++) {
if(self[i]!=null)
self[i].showBookInfo();
}
}
****************** 附上所有代码:*************************
import java.util.Scanner;
public class TestBook {
public static void main(String[] args) {
Books all[] = new Books[10];
Books self[] = new Books[3];
all[0] = new Books("java", 1, "12345", "tom", 34.0f, "人民出版社");
all[1] = new Books("c", 2, "12346", "tnn", 31.0f, "人民出版社");
all[2] = new Books("c++", 3, "12445", "mm", 35.0f, "人民出版社");
all[3] = new Books("c#", 4, "12365", "tt", 38.0f, "人民出版社");
all[4] = new Books("j2se", 5, "13345", "tosm", 31.1f, "人民出版社");
all[5] = new Books("j2ee", 6, "18345", "ttm", 32.0f, "人民出版社");
all[6] = new Books("jsp", 7, "12335", "cc", 33.0f, "人民出版社");
all[7] = new Books("net", 8, "12341", "bb", 36.0f, "人民出版社");
all[8] = new Books("ip", 9, "12343", "aa", 37.0f, "人民出版社");
all[9] = new Books("tcp", 10, "22345", "jj", 39.0f, "人民出版社");
Readers r = new Readers("xiaoming", 101, "1", 3);
r.searchAllBooks(all);
r.borrowBooks(all, self);
r.have(self);
r.give(all, self);
}
}
class Readers {
Scanner scan = new Scanner(System.in);
String names;
int nums;
String classes;
int grade;
int score = 0;
// Books self[]=new Books[3];
Readers(String n, int u, String c, int g) {
names = n;
nums = u;
classes = c;
grade = g;
}
void searchAllBooks(Books[] all) {// 查书
for (int i = 0; i 10; i++)
all[i].showBookInfo();
// self[score]=all[0];
}
void give(Books[] all, Books[] self) {// 还书
System.out.println("请输入您要还的书的书号");
int n = scan.nextInt();
for (int i = 0; i 10; i++) {
if (n == all[i].num) {
for (int j = 0; j 3; j++) {
if (self[j] == all[i]) {
self[j] = null;
System.out.println("还书成功");
}
}
}
}
}
void have(Books[] self) {
// for (int i = 0; i 2; i++) {
// self[i].showBookInfo();
// }
for (int i = 0; i 3; i++) {
if(self[i]!=null)
self[i].showBookInfo();
}
}
void giveMoney() {
}
void borrowBooks(Books[] all, Books[] self) {
System.out.println("请输入您要查找的书名:");
String n = scan.next();
int i;
for (i = 0; i 10; i++) {
if (n.equals(all[i].name)) {
all[i].showBookInfo();
break;
}
}
//System.out.println("你要借吗?");
System.out.println("你要借吗?输入1表示借,其他数字表示不借。");
int j;
j = scan.nextInt();
if (j == 1) {
System.out.println("借阅成功");
//self[score] = all[9];
self[score] = all[i];
score += 1;
}
if (score 4) {
System.out.println("您还可以借阅" + (3 - score) + "本");
} else {
System.out.println("对不起,一个人只能借3本");
}
}
}
class Books {
String name;
int num;
String ISBN;
String writer;
float price;
String publisher;
Books(String n, int u, String i, String w, float p, String l) {
name = n;
num = u;
ISBN = i;
writer = w;
price = p;
publisher = l;
}
void showBookInfo() {
System.out.println("**************************");
System.out.println("书名:" + name);
System.out.println("索书号:" + num);
System.out.println("ISBN号:" + ISBN);
System.out.println("价格:" + price);
System.out.println("出版社:" + publisher);
System.out.println("**************************");
}
}
----------------------------------------------------
用java编写一个,图书管理系统
可以使用Baiduhi告诉我你的题目
有空能搞定你无法解决的题目
如果你有类似的要求也能联系我
ES:\\F3BE205E98C61E3942B3CDFC44D10E6F
交易提醒:预付定金有风险
交易提醒:用户名中包含联系方式勿轻信
利用java制作一个图书管理系统需要哪些步骤?
作为一个用户软件,可以按照软件工程的要求来做。
一、可行性研究报告
二、项目开发计划
三、需求规格说明书
四、概要设计说明书
五、详细设计说明书
六、用户操作手册
七、测试计划
八、测试分析报告
九、开发进度月报
十、项目开发总结报告
十一、程序维护手册
十二、软件问题报告
十三、软件修改报告
不过估计你这个也就是个课程设计,所以不需要那么麻烦。设计好数据库,编好界面,能运行就行。
用java编写一个简单的图书管理系统。 要求:实现浏览,借书,还书,查询,退出等功能(每次最多能借
您好,这个功能要实现并不难,如果您还是学生,应该用的技术都是基础技术来实现对吧。如果是,那么给你一些提示,所使用的技术如,数组或集合,对象,相关变量属性,循环,swatch选择 循环等等。
思路:浏览图示其实就是读取图书的列表或者读取某一本图书的详情。
借书:从图书列表中将对应的书籍数量减掉一定数量。比如 num--;
还书:同借书一样,相加即可;
查询,就是根据书名或者相关信息来查询书库中的图书,一般从数据库获取到这些数据,如果更简单,那就是从集合里面查询。
退出,那就更简单了,exit。
我不清楚你是要使用JavaWeb来实现还是使用C/S架构来实现,还是使用控制台来实现。但是大概的思路都一致。但是复杂度不一样,看你做到什么样的效果和水平。
java简单图书管理系统项目的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java图书管理系统详细设计、java简单图书管理系统项目的信息别忘了在本站进行查找喔。