java swing实训项目(图书管理系统)

这篇具有很好参考价值的文章主要介绍了java swing实训项目(图书管理系统)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.项目布局(供新手参考)

学校老师任务,因为我也是新手所以写的不是特别的好,所以可以提供参考。

java swing实训项目(图书管理系统)

 

package GUI_Object.GUI;

import GUI_Object.mysql.Database;

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;

//工具类

public class Head {


    public static JFrame frame = new JFrame("登录");
    public static final int width = 900;
    public static final int height = 600;
    public static String UserName=null;
    //动态切换面板

    //获取屏幕分辨率   设置窗体在屏幕居中的位置
    public static void initFrame() {
        Toolkit toolkit = Toolkit.getDefaultToolkit();//获取一个与系统相关的工具类对象
        Dimension size = toolkit.getScreenSize();//获取屏幕分辨率
        int x = (int) size.getWidth();//获取中心位置的宽
        int y = (int) size.getHeight();//获取中心位置的高
        frame.setBounds((x - width) / 2, (y - height) / 2, width, height);//设置窗口位置,大小
        frame.setVisible(true);//设置窗口可见
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置关闭

    }
    public static void initFrame(JFrame frame) {
        Toolkit toolkit = Toolkit.getDefaultToolkit();//获取一个与系统相关的工具类对象
        Dimension size = toolkit.getScreenSize();//获取屏幕分辨率
        int x = (int) size.getWidth();//获取中心位置的宽
        int y = (int) size.getHeight();//获取中心位置的高
        frame.setBounds((x - width) / 2, (y - height) / 2, width, height);//设置窗口位置,大小
        frame.setVisible(true);//设置窗口可见
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置关闭

    }

    //设置子窗口   获取屏幕分辨率   设置窗体在屏幕居中的位置
    public static void initJDialog(JDialog frame) {
        Toolkit toolkit = Toolkit.getDefaultToolkit();//获取一个与系统相关的工具类对象
        Dimension size = toolkit.getScreenSize();//获取屏幕分辨率
        int x = (int) size.getWidth();//获取中心位置的宽
        int y = (int) size.getHeight();//获取中心位置的高
        frame.setBounds((x - width) / 2, (y - height) / 2, width, height);//设置窗口位置,大小
        frame.setVisible(true);//设置窗口可见
//        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置关闭
    }

    //修改用户密码页面
    public static void Update() {
        UpdatePasswd.Update(frame);
    }
}
//测试运行代码块

package GUI_Object;


import GUI_Object.GUI.Head;
import GUI_Object.GUI.Login;

public class dome {

    public static void main(String[] args) {
        Login.LoginWind();
        Head.initFrame();
    }
}

2.登录注册页面 

java swing实训项目(图书管理系统)

java swing实训项目(图书管理系统)

登录页面 

package GUI_Object.GUI;

import GUI_Object.mysql.Database;

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

public class Login {
    private static Boolean Judge = true;

    //账户密码登录窗口loginWind
    public static void LoginWind() {


        JPanel panel = new JPanel();

        Head.frame.setBackground(new Color(0xd4f6ff));
        panel.setOpaque(false);
        panel.setLayout(new FlowLayout());

        panel.setLayout(null);
//        设置背景图片
        //添加标签【学生管理系统】
        ImageIcon imageIcon=new ImageIcon("src/GUI_Object/images/logo.jpg");
        JLabel textStudentManage = new JLabel(imageIcon);//创建一个标签,并命名为“学生管理系统“
        textStudentManage.setForeground(new Color(0XFFAEB9));//设置字体颜色
        textStudentManage.setFont(new Font("黑体", Font.PLAIN, 50));//设置字体大小
        textStudentManage.setBounds(0, 10, 900, 100);//设置标签的绝对位置
        panel.add(textStudentManage);//向框架中添加组件【标签(学生管理系统)】

        //添加标签【用户名】
        JLabel textUser = new JLabel("用户名:");
        textUser.setForeground(new Color(0Xdbb4f7));
        textUser.setFont(new Font("黑体", Font.PLAIN, 30));
        textUser.setBounds(200, 140, 200, 100);
        panel.add(textUser);

        //添加输入框【用户名输入框】
        JTextField user = new JTextField(20);
        user.setFont(new Font("黑体", Font.PLAIN, 18));
        user.setSelectedTextColor(new Color(0xFFF5EE));
        user.setBounds(330, 170, 280, 40);
        panel.add(user);

        //添加标签【密码】
        JLabel textPassword = new JLabel("密码  :");
        textPassword.setForeground(new Color(0Xdbb4f7));
        textPassword.setFont(new Font("黑体", Font.PLAIN, 30));
        textPassword.setBounds(200, 200, 200, 100);
        panel.add(textPassword);

        //添加密码输入框【密码】
        JPasswordField password = new JPasswordField(20);
        password.setBounds(330, 230, 280, 40);
        panel.add(password);

        //添加按钮【登录】
        JButton jButton = new JButton("登录");
        jButton.setForeground(new Color(0xffcbe1));
        jButton.setBackground(new Color(0xfffde4));
        jButton.setFont(new Font("黑体", Font.PLAIN, 20));
        jButton.setBorderPainted(false);
        jButton.setBounds(300, 330, 100, 50);
        panel.add(jButton);

        //添加按钮【注册】
        JButton register = new JButton("注册");
        register.setForeground(new Color(0xffcbe1));
        register.setBackground(new Color(0xfffde4));
        register.setFont(new Font("黑体", Font.PLAIN, 20));
        register.setBorderPainted(false);
        register.setBounds(500, 330, 100, 50);
        panel.add(register);
        jButton.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                String name = user.getText();//获取账户
                String passwd = password.getText();//获取密码
                int i = Database.QueryUser(name, passwd);
                switch (i) {
                    case 0:
                        JOptionPane.showMessageDialog(panel, "登录成功", "通知", JOptionPane.INFORMATION_MESSAGE);
                        AverageUser.Subpage();
                        Head.UserName=name;
                        break;//普通用户登录页面
                    case 1:
                        JOptionPane.showMessageDialog(panel, "登录成功", "通知", JOptionPane.INFORMATION_MESSAGE);
                        Admin.Subpage();
                        SwingUtilities.updateComponentTreeUI(Head.frame);
                        Head.UserName=name;
                        break;//管理员用户登录页面
                    default:
                        JOptionPane.showMessageDialog(panel, "警告密码或者账户输入错误", "警告", JOptionPane.WARNING_MESSAGE);
                }
            }
        });
//        JButton button1 = new JButton("注册");
//        panel.add(button1);
        register.addMouseListener(new MouseAdapter() {
            @Override
            public void mouseClicked(MouseEvent e) {
                //创建页面2;
                if (Judge) {
                    Database.CreateAccount();
                    Judge = false;
                }
                GUI_Object.GUI.register.Subpage(Head.frame);
            }
        });
        Head.frame.setContentPane(panel);
    }
}

 注册页面文章来源地址https://www.toymoban.com/news/detail-502828.html

package GUI_Object.GUI;

import GUI_Object.mysql.Database;

import javax.swing.*;
import java.awt.*;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
/**
 *              注册页面
 * */
public class register {
    //创建子页面
    public static void Subpage(JFrame jFrame){
        JDialog jDialog = new JDialog(jFrame,"注册页面",true);//设置由谁弹出,名字,鼠标选中对话框时不能对其他对话框改变
        jDialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
        JPanel panel = new JPanel(new FlowLayout());
        panel.setLayout(null);

        panel.setBackground(new Color(0xe7fafe));

        ImageIcon icon =new ImageIcon("src/GUI_Object/images/RegisterLogo.jpg");
        JLabel textStudentManage = new JLabel(icon);//创建一个标签,并命名为“学生管理系统“
        textStudentManage.setBounds(0, 0, 900, 90);//设置标签的绝对位置
        panel.add(textStudentManage);
        //用户名
        JLabel name = new JLabel("用户名:");
        name.setForeground(new Color(0xa5d478));
        name.setFont(new Font("黑体", Font.PLAIN, 30));
        name.setBounds(200, 140, 200, 100);
        panel.add(name);

        //用户输入框
        JTextField NameField = new JTextField(12);
        NameField.setFont(new Font("黑体", Font.PLAIN, 18));
//        NameField.setSelectedTextColor(new Color(0xFF0000));
        NameField.setBounds(330, 170, 280, 40);
        panel.add(NameField);



        //标签密码
        JLabel passwd = new JLabel("密码:");
        passwd.setForeground(new Color(0xa5d478));
        passwd.setFont(new Font("黑体", Font.PLAIN, 30));
        passwd.setBounds(200, 200, 200, 100);
        panel.add(passwd);

        //密码框
        JPasswordField passwordField= new JPasswordField(12);
        passwordField.setBounds(330, 230, 280, 40);
        panel.add(passwordField);


        //下拉列表

        Object[] arr = {"普通用户","管理员用户"};
        JLabel label = new JLabel("用户权限:");
        label.setForeground(new Color(0xa5d478));
        label.setFont(new Font("黑体", Font.PLAIN, 30));
        label.setBounds(200, 260, 200, 100);
        JComboBox jComboBox = new JComboBox(arr);
        jComboBox.setBounds(340, 290, 80, 40);
        panel.add(label);
        panel.add(jComboBox);


        //确认按钮

        JButton register = new JButton("确认");
        register.setForeground(new Color(0xa5d478));
        register.setBackground(new Color(0xfffed5));
        register.setFont(new Font("黑体", Font.PLAIN, 20));
        register.setBorderPainted(false);
        register.setBounds(430, 290, 80, 40);
        panel.add(register);
//        JButton button = new JButton("确认");
        register.addMouseListener(new MouseAdapter() {
            @Override
            public void mouseClicked(MouseEvent e) {
                int i=10;
                i = JOptionPane.showConfirmDialog(panel, "您确认注册用户吗?");
                if (i==0) {
                    String text = NameField.getText();
                    String password = passwordField.getText();
                    int selectedIndex = jComboBox.getSelectedIndex();//获取选到的下拉向
                    Boolean aBoolean = Database.AddUser(text, password, selectedIndex);
                    if (aBoolean) {
                        JOptionPane.showMessageDialog(panel, "恭喜你,用户注册成功", "通知", JOptionPane.INFORMATION_MESSAGE);
                        jDialog.setVisible(false);
                        jFrame.setVisible(true);
                    } else {
                        JOptionPane.showMessageDialog(panel, "抱歉,用户注册失败", "警告", JOptionPane.ERROR_MESSAGE);
                    }
                }
            }
        });



        //返回键
        JButton register1 = new JButton("返回");
        register1.setForeground(new Color(0xfddfeb));
        register1.setBackground(new Color(0x84d696));
        register1.setFont(new Font("黑体", Font.PLAIN, 20));
        register1.setBorderPainted(false);
        register1.setBounds(0, 0, 80, 40);
        register1.addMouseListener(new MouseAdapter() {
            @Override
            public void mouseClicked(MouseEvent e) {
                jDialog.setVisib

到了这里,关于java swing实训项目(图书管理系统)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于Java+Swing+Mysql项目信息管理系统

    该系统实现了查看项目列表、新增项目信息、删除项目信息 运行环境:eclipse、idea、jdk1.8 Java+Swing实现学生选课管理系统 Java+Swing实现学校教务管理系统 Java+Swing+sqlserver学生成绩管理系统 Java+Swing用户信息管理系统 Java+Swing实现的五子棋游戏 基于JavaSwing 银行管理系统 Java+Swing

    2024年02月11日
    浏览(39)
  • Android实训——图书管理系统

    在大学课程实训课程中,通过开发实现一个完整的系统作业是基本操作吧,本次描述的是一个基于Android studio开发的图书管理系统,大学阶段学习的基本知识不牢固,很多地方也没有完全优化完善,单单实现了一个数据的增删改查以及各个界面的跳转关系。 涉及到的只是对于

    2024年02月06日
    浏览(26)
  • java项目-图书馆管理系统源码

    作者主页:夜未央5788  简介:Java领域优质创作者、Java项目、学习资料、技术互助 文末获取源码   项目介绍 本毕业设计运用了使用技术:spring mvc+spring+hibernate,数据库使用了当前较为流行的Mysql5.7。根据本校图书馆的工作流程与实际的需求和特色,本系统需满足以下几个方

    2024年02月08日
    浏览(36)
  • Java宝典-实战小项目:图书管理系统

    老铁们好~~在学习继承,封装,多态,接口等语法后,为了巩固知识,我们来写一个小项目,加深对知识的理解,话不多说,咱们开始今天的学习吧! 进入程序后,提示输入姓名,选择身份,程序会根据选择的身份弹出对应的菜单 管理员身份: 普通用户身份: 查找功能: 输入要查找的书名,如果

    2024年03月23日
    浏览(32)
  • Java Swing 图书借阅系统 窗体项目 期末课程设计 窗体设计

    视频教程: 【课程设计】图书借阅系统 功能描述: 图书管理系统有三个角色,系统管理员、图书管理员、借阅者; 系统管理员可以添加借阅用户; ​图书管理员可以添加图书,操作图书借阅和归还; 借阅者可以查看自己的借阅记录; 1.1 登录功能 登录时可选择角色,登录

    2024年01月23日
    浏览(28)
  • 【Java/SSM/LayUI】JavaEE课程设计(基于Layui+SSM的图书管理系统项目介绍及源码)

    注: 本文为JavaEE课程的课程设计,如需原文件及项目代码请后台联系作者或qq3416252112,也可在作者主页资源中下载,仅供学习交流使用! 一、项目介绍 ​ 结合本学期所学知识,以及以往积累的经验,我们通过Layui+SSM的方式完成了简化版的“图书管理系统”。本系统操作界面

    2024年02月05日
    浏览(35)
  • JAVA GUI 学生信息管理系统(Swing)

    一、JAVA GUI 项目介绍 ​ GUI 是指图形用户界面显示的计算机操作用户界面,GUI主要有两个核心库,分别是AWT和Swing,本项目就是使用Swing进行开发。项目基于Swing,使用JDBC操作数据库,并且在程序运行阶段创建数据库表结构信息,可做为JAVA课程实训。 容器 ​ 容器是组件的子

    2024年02月04日
    浏览(44)
  • Java Swing大作业--简易员工管理系统

    @Java Swing简易员工管理系统 系统包括管理员登录页面和主页面设计,在主界面包括员工信息的增删改查功能。 开发环境:eclipse 2022-03 Jdk版本:11 数据库:MySQL 1.创建数据库employees。 2.创建管理员表admin并增加数据。 3.创建员工信息表emp并增加数据。 1.基础层BaseDao 2.管理员Ad

    2024年02月09日
    浏览(31)
  • Java+Swing+Mysql实现超市管理系统

    操作系统:Win10 开发工具 :IDEA2018 JDK版本:jdk1.8 数据库:Mysql8.0 Java+Swing+Mysql 1. 系统登录登出 管理员可以登录、退出系统 2. 商品信息管理 管理员可以对商品信息进行查询、添加、修改、删除等操作。 3. 出库信息管理 管理员可以对出库信息进行查询、添加、修改、删除等操

    2024年03月18日
    浏览(30)
  • Java+Swing+MySQL实现学生选课管理系统

    目录 一、系统介绍 1.运行环境 2.技术说明 3.系统功能 4.数据库实体E-R图设计 5.数据库表的设计 二、系统实现  1.用户登录 2.主界面   3.数据库连接 4.数据查询 5.查询课程信息 6.添加学生信息 7.修改学生信息 三、部分代码  1.ChangePwd.java 2.Login.java 3.Main.java 5.备注 开发工具:

    2024年02月08日
    浏览(56)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包