日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

图书借阅管理用java实现_用java实现图书管理系统。 - 惊觉...

發布時間:2023/12/8 windows 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 图书借阅管理用java实现_用java实现图书管理系统。 - 惊觉... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在學完java基礎篇的時候,安排做了一個綜合版的java基礎項目,可以把之前學到的知識綜合運用。

一.項目設計到的知識

1.MVC設計模式思想(分包)

>項目分包

運用這種設計模式的優點:

MVC 是一種程序開發設計模式,它實現了顯示模塊與功能模塊的分離。提高了程序的可維護性、可移植性、可擴展性與可重用性,降低了程序的開發難度。它主要分模型、視圖、控制器三層。

>MVC簡單介紹

M model業務模型(pojo/domain/bean)與現實中實體類聯系

V views視圖層(views)

圖形化界面(gui)

C controller

用戶與軟件交互,處理信息

dao層(數據持久化)

提供數據

service層(處理邏輯)

處理數據

controller(javaweb里邊的內容,servlet)

較詳細的圖示:

2.GUI(圖形化界面)

其中的GUI代碼案例:

package org.vector.view;

import java.awt.Cursor;

import java.awt.Font;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.util.ArrayList;

import java.util.List;

import javax.swing.ImageIcon;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JOptionPane;

import javax.swing.JPanel;

import javax.swing.JPasswordField;

import javax.swing.JTextField;

import org.vector.bean.Book;

import org.vector.bean.Booktype;

import org.vector.bean.Borrowbook;

import org.vector.bean.Reader;

import org.vector.bean.Readertype;

import org.vector.bean.Users;

import org.vector.serviceImpl.UsersServiceImpl;

public class BookLogin extends JFrame{

public BookLogin() {

buliding();

addListeners();

}

public static String name1;

public static List list = new ArrayList();

public static List list1 = new ArrayList();

public static List list2 = new ArrayList();

public static List list3 = new ArrayList();

public static List list4 = new ArrayList();

public static List list5 = new ArrayList();

private JButton login,reset,register;

private JLabel name,password,label;

private JTextField name_Text;

private JPasswordField password_Text;

private void buliding() {

// TODO Auto-generated method stub

setLayout(null);

background();

setTitle("圖書借閱系統登錄界面");

Font font = new Font("圓體", Font.BOLD, 50);

label = new JLabel("圖書借閱系統");

label.setFont(font);

label.setBounds(40, 20, 400, 50);

add(label);

name = new JLabel("用戶名:");

name.setBounds(45, 100, 120, 30);

add(name);

name_Text = new JTextField(20);

name_Text.setBounds(100, 100, 200, 30);

add(name_Text);

password = new JLabel("密 碼:");

password.setBounds(45, 150, 120, 30);

add(password);

password_Text = new JPasswordField(20);

password_Text.setBounds(100, 150, 200, 30);

add(password_Text);

login = new JButton("登錄");

login.setBounds(50, 200, 100, 35);

add(login);

reset = new JButton("重置");

reset.setBounds(150, 200, 100, 35);

add(reset);

//register = new JButton("注冊");

//register.setBounds(250, 200, 100, 35);

//add(register);

setBounds(400,300,400,300);

setLocation((2000-getWidth())/2,(1000-getHeight())/2);

setResizable(false);

setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

setVisible(true);

}

public void background() {

setSize(600, 500);

setLocation(100, 100);

String path = "Login.jpg";

ImageIcon background = new ImageIcon(path);

JLabel label = new JLabel(background);

label.setBounds(0, 0, this.getWidth(), this.getHeight());

JPanel imagePanel = (JPanel) this.getContentPane();

imagePanel.setOpaque(false);

this.getLayeredPane().add(label, new Integer(Integer.MIN_VALUE));

setVisible(true);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

private void addListeners() {

login.addActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub

login.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));

int flag = 0;

String name = name_Text.getText();

String password = password_Text.getText();

name1 = name;

UsersServiceImpl user = new UsersServiceImpl();

BookLogin.list.clear();

BookLogin.list.addAll(user.findUsers());

for (int i = 0; i < BookLogin.list.size(); i++) {

if(name.equals(BookLogin.list.get(i).getName())&&password.equals(BookLogin.list.get(i).getPassword())){

JOptionPane.showMessageDialog(null, "登錄成功", "標題", JOptionPane.WARNING_MESSAGE);

BookLogin.this.dispose();

new BorrowbookView().setVisible(true);

flag = 1;

BookLogin.this.dispose();

new BorrowbookView().setVisible(true);

break;

}

}

if(flag == 0) {

JOptionPane.showMessageDialog(null, "登錄失敗,該用戶不存在", "標題", JOptionPane.WARNING_MESSAGE);

}

}

});

reset.addActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub

BookLogin.this.dispose();

new BookLogin().setVisible(true);

}

});

//register.addActionListener(new ActionListener() {

//

//@Override

//public void actionPerformed(ActionEvent e) {

TODO Auto-generated method stub

//BookLogin.this.dispose();

//new UserAdd().setVisible(true);

//}

//});

}

}

3.JDBC連接MySql數據庫

用了c3p0對原生JDBC的封裝思想,大大提高了開發者的效率。

c3p0xml配置文件

jdbc:mysql://localhost:3306/mybook?characterEncoding=UTF8

com.mysql.jdbc.Driver

root

password

6

10

10000

大多數情況下只用改,數據庫名,賬號,密碼,別的默認值就行。

4.I/O流

I/O流是開發過程中,最耗費,最占用資源的一門技術,在開發中盡量減少對I/O的使用。

5.面向對象思想

面向對象的思想是在整個學java期間,都不斷去學習,這種思想是潛移默化的,短時間內,往往難以清楚地理解。

項目運行效果

登錄界面

主界面

…紳士們,請收回你們的目光。

讀者信息管理

讀者信息添加

讀者信息查詢和修改

讀者信息查詢

查詢成功!

讀者信息修改

修改成功!

圖書信息管理

圖書信息添加

由于東西較多,后面的我就不一一演示了,大家有興趣的可以自己做一個更好的。

圖書信息查詢

圖書信息修改

圖書借閱管理

圖書借閱

圖書歸還

基礎信息維護

圖書類別設置

讀者類別設置

罰金設置

用戶管理

修改密碼

用戶添加

用戶刪除

詳細的可以了解,資源里邊的項目。

聯系方式qq:1287440358 微信:Burial_DH。

轉載自CSDN-專業IT技術社區

總結

以上是生活随笔為你收集整理的图书借阅管理用java实现_用java实现图书管理系统。 - 惊觉...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。