JAVA入门初学者练手小项目——图书管理系统

01月04日 收藏 0 评论 0 java开发

JAVA入门初学者练手小项目——图书管理系统

文章声明:转载来源:https://blog.csdn.net/Onthr/article/details/119520656

一.登录操作(用户,管理员) 注册操作

user使用者类:客户customer,管理员admin两个子类

客户:继承自使用者 权利有 借书 还书 客户的资料信息要存放在user.txt里面,

管理员:继承自使用者 权力有 查看当前图书馆藏书的借阅情况,是否同意放书 管理员资料信息放在admin.txt里面

二.不同的身份登陆进去有不同的界面

客户登陆进去:

1.借书,需要发送请求,管理员同意才能借到

2.还书

管理员登陆进去:

1.上班,等待客户的需求

2.查看当前图书馆书的情况-> 包含所有的书 每本书后面显示是否被借 被谁借去 借去的日期等

【知识点】:

使用集合Arraylist Properties等

使用IO流进行信息的存储: admin.txt存放管理员的账号密码

user.txt 存放客户信息 里面有登录账号以及密码,还有借阅的书,以":"分割开方便进行操作

books.txt 存放的是书籍的信息 里面有书名,作者,借阅状态(yes/no),借阅人。以":"分割开方便进行操作

一点点网络编程:客户这边使用Socket进行发送借书请求,管理员使用ServerSocket接收请求

【犯下的错误&&不足之处】:

1.对IO流的操作不熟练,由于我使用BufferdReader读入数据的时候没有close进行释放,同时又用bufferdWriter进行了写入操作,导致文件的数据一直被清空- -

2.对网络编程不熟练

3.第一次使用java写小demo,代码很难看。。结构也很难看

收获:

看java视频学了半个多月吧,今天是第一次练手,勉强把想实现的功能实现了,提升了熟练度。。 

【小展示】 

管理员:

客户:

txt文件里的数据

借书请求代码:

public void jieshu() throws IOException {
Socket s=new Socket("192.168.2.116",12345);//IP地址是收信人的地址,这里我写了自己的
OutputStream os=s.getOutputStream();
os.write(("借:"+cus.getName()+":").getBytes());
s.shutdownOutput();
System.out.println("请等待管理员处理你的需求");
InputStream is=s.getInputStream();
byte []bys=new byte[3];
is.read(bys);
String ret=new String(bys,0,3);
if(ret.equals("可"))
{
System.out.println("管理员同意借书给你了");
kaishichuli();
}
else if(ret.equals("不"))
{
System.out.println("你可能长得有点着急,管理员拒绝借书给你");
}
s.close();

}
C 0条回复 评论

帖子还没人回复快来抢沙发