Java+Swing实现学校教材管理系统

  • 一、系统介绍
  • 二、系统展示
    • 1.登录页
    • 2.主页面
    • 3.导出表单
  • 三、部分代码
    • DBUtil.java
    • Login.java
    • MyTable.java
    • XMainFrame.java
  • 四、其他
    • 1.其他系统实现
      • Java+JSP系统系列实现
      • Java+Servlet+JSP系统系列实现
      • Java+SSM系统系列实现
      • Java+SSH系统系列实现
      • Java+Springboot系统系列实现
      • JavaSwing+Mysql系统系列实现
      • JavaSwing+Txt系统系列实现
    • 2.获取源码
    • 3.备注
    • 4.运行项目

一、系统介绍

本系统实现的功能:管理员登录、教材的增删改查、导出PDF。
JDK:1.8
数据库:Mysql8.0.13

二、系统展示

1.登录页

2.主页面

3.导出表单

三、部分代码

DBUtil.java

package com.sjsq;
/*** 此类用以载入数据库* @author 郑伟* */import java.sql.Connection;
import java.sql.DriverManager;import javax.swing.JOptionPane;public class DBUtil {// 数据库驱动名private static String DriverName = "com.mysql.cj.jdbc.Driver";// 数据库协议private static String dbUril = "jdbc:mysql://localhost:3306/teachbook_management_swing?serverTimezone=UTC";// 数据库用户名private static String dbName = "root";// 数据库密码private static String dbPassword = "admin";public static Connection getlink() {try {Class.forName(DriverName);System.out.println("正在加载...");Connection connection = DriverManager.getConnection(dbUril, dbName, dbPassword);System.out.println("连接成功!");// ResultSet rs = stmt.executeQuery(sql);return connection;} catch (Exception e) {JOptionPane.showMessageDialog(null, "数据库链接失败!", "警告", JOptionPane.ERROR_MESSAGE);System.out.println("连接失败");e.printStackTrace();return null;}}public static void main(String args[]) {getlink();}}

Login.java

package com.sjsq;/*** 此类为登录窗口类* 由Visual Editor 生成* @author 郑伟* @author shuijianshiqing* @date 2020-12-30* * */
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Rectangle;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;import org.jvnet.substance.skin.SubstanceCremeLookAndFeel;public class Login extends JFrame implements WindowListener, ActionListener, KeyListener {private static final long serialVersionUID = 1L;private JPanel jContentPane = null;private JButton jButton = null;private JButton jButton1 = null;private JLabel jLabel = null;private JLabel jLabel1 = null;private JLabel jLabel2 = null;private JTextField jTextField = null;private JPasswordField jPasswordField = null;private Connection connection; // @jve:decl-index=0:private Statement stmt;private String username;private int flag = 0;/*** This is the default constructor*/public Login() {super();try {UIManager.setLookAndFeel(new SubstanceCremeLookAndFeel());} catch (UnsupportedLookAndFeelException e) {// TODO 自动生成 catch 块e.printStackTrace();}initialize();Dimension screen = getToolkit().getScreenSize(); // 得到屏幕尺寸// pack(); //窗口适应组件尺寸setLocation((screen.width - getWidth()) / 2, (screen.height - getHeight()) / 2);// 使窗口出现在屏幕中间this.setResizable(false);// 不可缩放~~this.addWindowListener(this);connection = DBUtil.getlink();try {stmt = connection.createStatement();} catch (SQLException e) {// TODO 自动生成 catch 块e.printStackTrace();} // 链接数据库}/*** This method initializes this* * @return void*/private void initialize() {// 登录窗口大小this.setSize(500, 308);this.setContentPane(getJContentPane());this.setTitle("欢迎登录教材管理系统");}// 登录函数private void denglu() {if (flag > 2) {jButton.setEnabled(false);}this.jLabel.setText("登录中请稍候。。");username = jTextField.getText();String pwd = String.valueOf(jPasswordField.getPassword());String yz = new String("Select username,pswd,yanzheng from login where username='" + username + "'");try {ResultSet result = stmt.executeQuery(yz);if (result.next()) { // 用户名存在~if (pwd.equals(result.getString(2))) {if (result.getString(3).equals("1")) { // 验证权限this.jLabel.setText("              登录成功");this.flag = 1; // 若取得数据的第三项是1的话,则把flag设置为1this.setVisible(false);XFlashScreen splash = new XFlashScreen();splash.start(); // 运行启动界面} else if (result.getString(3).equals("4")) { // 验证权限this.jLabel.setText("              登录成功");this.flag = 4; // 若取得数据的第三项是4的话,则把flag设置为4this.setVisible(false);}} else {this.jLabel.setText("            密码错误 -_-!");flag++;}} else {this.jLabel.setText("              没有此用户 -_-!");flag++;}} catch (SQLException e1) {e1.printStackTrace();}}/*** This method initializes jContentPane* * @return javax.swing.JPanel*/private JPanel getJContentPane() {if (jContentPane == null) {jLabel1 = new JLabel();jLabel1.setBounds(new Rectangle(160, 55, 57, 17));jLabel1.setText("账号:");jLabel2 = new JLabel();jLabel2.setBounds(new Rectangle(160, 100, 55, 17));jLabel2.setText("密码:");jLabel = new JLabel();jLabel.setBounds(new Rectangle(180, 150, 177, 14));jLabel.setText("不能尝试超过4次哦~(*^__^*) ");jContentPane = new JPanel();jContentPane.setLayout(null);jContentPane.setBackground(new Color(255, 255, 225));jContentPane.add(getJButton(), null);jContentPane.add(getJButton1(), null);jContentPane.add(jLabel, null);jContentPane.add(jLabel1, null);jContentPane.add(jLabel2, null);jContentPane.add(getJTextField(), null);jContentPane.add(getJPasswordField(), null);}return jContentPane;}public void windowActivated(WindowEvent arg0) {}public void windowClosed(WindowEvent arg0) {System.exit(0);}public void windowClosing(WindowEvent arg0) {}public void windowDeactivated(WindowEvent arg0) {}public void windowDeiconified(WindowEvent arg0) {}public void windowIconified(WindowEvent arg0) {}public void windowOpened(WindowEvent arg0) {}/*** This method initializes jButton* * @return javax.swing.JButton*/private JButton getJButton() {if (jButton == null) {jButton = new JButton(new ImageIcon("./pic/key.gif"));jButton.setBounds(new Rectangle(120, 180, 83, 25));// jButton.setFont(new Font("Dialog", Font.BOLD, 11));jButton.setText("登录");jButton.addActionListener(this);}return jButton;}/*** This method initializes jButton1* * @return javax.swing.JButton*/private JButton getJButton1() {if (jButton1 == null) {jButton1 = new JButton(new ImageIcon("./pic/exit.gif"));jButton1.addActionListener(this);jButton1.setBounds(new Rectangle(300, 180, 83, 25));// jButton1.setFont(new Font("Dialog", Font.BOLD, 11));jButton1.setText("退出");}return jButton1;}/*** This method initializes jTextField* * @return javax.swing.JTextField*/private JTextField getJTextField() {if (jTextField == null) {jTextField = new JTextField();jTextField.setBounds(new Rectangle(200, 45, 156, 35));jTextField.addKeyListener(this);}return jTextField;}/*** This method initializes jPasswordField* * @return javax.swing.JPasswordField*/private JPasswordField getJPasswordField() {if (jPasswordField == null) {jPasswordField = new JPasswordField();jPasswordField.setBounds(new Rectangle(200, 90, 156, 35));jPasswordField.addKeyListener(this);}return jPasswordField;}public void actionPerformed(ActionEvent e) {if ((JButton) e.getSource() == jButton1) {this.dispose();System.exit(0);} else if ((JButton) e.getSource() == jButton) {denglu();}}public void keyPressed(KeyEvent arg0) {}public void keyReleased(KeyEvent e) {if (e.getKeyCode() == KeyEvent.VK_ENTER)/** 判断是否回车 */denglu();}public void keyTyped(KeyEvent arg0) {}public static void main(String[] args) {Login aaa = new Login();aaa.setVisible(true);}}

MyTable.java

package com.sjsq;import javax.swing.table.AbstractTableModel;class MyTable extends AbstractTableModel {Object[][] p = null;String[] n = null;MyTable(Object[][] p, String[] n) {this.p = p;this.n = n;}public int getColumnCount() {return n.length;}public int getRowCount() {return p.length;}public Object getValueAt(int row, int col) {return p[row][col];}public String getColumnName(int col) {return n[col];}public Class getColumnClass(int c) {return getValueAt(0, c).getClass();}public boolean isCellEditable(int row, int col) {if (col == 0) {return false;} else {return true;}}public void setValueAt(Object value, int row, int col) {{p[row][col] = value;}}}

XMainFrame.java

package com.sjsq;import java.awt.Dimension;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Rectangle;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTabbedPane;public class XMainFrame extends JFrame implements WindowListener {private static final long serialVersionUID = 1L;private JPanel jContentPane = null;private JTabbedPane jTabbedPane = null;XAddForm xaddform;/*** This is the default constructor*/public XMainFrame() {super();xaddform = new XAddForm();initialize();Dimension screen = getToolkit().getScreenSize(); // 得到屏幕尺寸// pack(); //窗口适应组件尺寸setLocation((screen.width - 800) / 2, (screen.height - 600) / 2);}/*** This method initializes this* * @return void*/private void initialize() {this.setSize(567, 401);this.setContentPane(getJContentPane());this.setTitle("教材管理系统");}/*** This method initializes jContentPane* * @return javax.swing.JPanel*/private JPanel getJContentPane() {if (jContentPane == null) {GridBagConstraints gridBagConstraints = new GridBagConstraints();gridBagConstraints.fill = GridBagConstraints.BOTH;gridBagConstraints.gridwidth = -1;gridBagConstraints.gridx = 1;gridBagConstraints.gridy = 1;gridBagConstraints.ipadx = -5;gridBagConstraints.ipady = -7;gridBagConstraints.weightx = 1.0;gridBagConstraints.weighty = 1.0;gridBagConstraints.gridheight = -1;jContentPane = new JPanel();jContentPane.setLayout(new GridBagLayout());jContentPane.add(getJTabbedPane(), gridBagConstraints);}return jContentPane;}/*** This method initializes jTabbedPane* * @return javax.swing.JTabbedPane*/private JTabbedPane getJTabbedPane() {if (jTabbedPane == null) {jTabbedPane = new JTabbedPane();xaddform.setBounds(new Rectangle(1, 2, 558, 366));jTabbedPane.addTab("表单提交", null, xaddform, null);}return jTabbedPane;}public void windowActivated(WindowEvent arg0) {// TODO 自动生成方法存根}public void windowClosed(WindowEvent arg0) {// TODO 自动生成方法存根}public void windowClosing(WindowEvent arg0) {// TODO 自动生成方法存根System.exit(0);}public void windowDeactivated(WindowEvent arg0) {// TODO 自动生成方法存根}public void windowDeiconified(WindowEvent arg0) {// TODO 自动生成方法存根}public void windowIconified(WindowEvent arg0) {// TODO 自动生成方法存根}public void windowOpened(WindowEvent arg0) {// TODO 自动生成方法存根}} 

四、其他

1.其他系统实现

Java+JSP系统系列实现

Java+JSP实现学生图书管理系统
Java+JSP实现学生信息管理系统
Java+JSP实现用户信息管理系统

Java+Servlet+JSP系统系列实现

Java+Servlet+JSP实现航空订票系统
Java+Servlet+JSP实现新闻发布系统
Java+Servlet+JSP实现图书管理系统
Java+Servlet+JSP实现停车场管理系统
Java+Servlet+JSP实现房屋租赁管理系统
Java+Servlet+JSP实现学生选课管理系统
Java+Servlet+JSP实现宠物诊所管理系统
Java+Servlet+JSP实现学生宿舍管理系统
Java+Servlet+JSP实现学生信息管理系统
Java+Servlet+JSP实现学生成绩管理系统1
Java+Servlet+JSP实现学生成绩管理系统2

Java+SSM系统系列实现

Java+SSM+JSP实现宠物商城系统
Java+SSM+JSP实现超市订单系统
Java+SSM+JSP实现图书管理系统
Java+SSM+Easyui实现网上考试系统
Java+SSM+Layui实现学生成绩管理系统
Java+SSM+Bootstrap实现学生信息管理系统
Java+SSM+Bootstrap+Maven实现网上书城系统
Java+SSM+Bootstrap+Maven实现学校教务管理系统

Java+SSH系统系列实现

Java+SSH+Bootstrap实现在线考试系统
Java+SSH+JSP实现医院在线挂号系统

Java+Springboot系统系列实现

Java+Springboot+H-ui实现营销管理系统
Java+Springboot+Bootstrap实现网上商城系统
Java+Springboot+Bootstrap+Maven实现景区旅游管理系统

JavaSwing+Mysql系统系列实现

Java+Swing实现斗地主游戏
Java+Swing实现图书管理系统
Java+Swing实现医院管理系统
Java+Swing实现考试管理系统
Java+Swing实现酒店管理系统
Java+Swing实现超市管理系统
Java+Swing实现网上订餐系统
Java+Swing实现电影购票系统
Java+Swing实现仓库管理系统1
Java+Swing实现仓库管理系统2
Java+Swing实现进销存管理系统
Java+Swing实现通讯录管理系统
Java+Swing实现停车场管理系统
Java+Swing实现学生宿舍管理系统
Java+Swing实现学生选课管理系统
Java+Swing实现学生成绩管理系统
Java+Swing实现学校教材管理系统
Java+Swing实现学校教务管理系统
Java+Swing实现企业人事管理系统
Java+Swing实现电子相册管理系统
Java+Swing实现学生信息管理系统1
Java+Swing实现学生信息管理系统2
Java+Swing实现自助取款机(ATM)系统

JavaSwing+Txt系统系列实现

Java+Swing实现超市管理系统-TXT存储信息
Java+Swing实现宠物商店管理系统-TXT存储信息
Java+Swing实现自助取款机(ATM)系统-TXT存储信息

2.获取源码

Java+Swing+Mysql学校教材管理系统

3.备注

如有侵权请联系我删除。

4.运行项目

Eclipse如何导入JavaSwing项目超详细图文教程
Eclipse如何导入JavaSwing项目超详细视频教程

Eclipse+Java+Swing实现学校教材管理系统相关推荐

  1. Eclipse+Java+Swing实现宠物商店管理系统

    Java+Swing实现宠物商店 一.系统介绍 二.系统展示 1.主界面 2.增加宠物 3.删除宠物 4.修改宠物 5.查询宠物 6.模块查询 三.系统实现 Cat.java Dog.java Mou ...

  2. 基于Eclipse+Java+Swing+Mysql图书信息管理系统

    基于Eclipse+Java+Swing+Mysql图书信息管理系统 一.系统介绍 二.功能展示 1.主页 2.新增图书信息 3.删除图书信息 三.数据库 四.其他系统实现 五.获取源码 一.系统介绍 ...

  3. 基于Eclipse+Java+Swing+Mysql实现酒店管理系统

    基于Eclipse+Java+Swing+Mysql实现酒店管理系统 一.系统介绍 二.功能展示 1.用户登陆 2.首页 3.开房 4.退房 5.房间信息 6.顾客信息 三.数据库 四.其它 1.其他 ...

  4. 基于 Eclipse+Java Swing + Mysql 学生选课管理系统

    一.项目概要:        基于Java Swing+Mysql8.0数据库的学生选课管理系统,主要有三个部分:系统管理,数据管理,数据查询. 1).系统管理主要用于用户信息的相关管理.主要包括密码 ...

  5. Eclipse+Java+Swing+Mysql实现员工信息管理系统

    目录 一.系统介绍 1.开发环境 2.技术选型 3.系统功能 4.数据库 二.系统展示 1.登录系统 2.主页面 3.部门管理 4.职位管理 5.员工管理 三.部分代码 AdminDao.java D ...

  6. Eclipse+Java+Swing实现电子相册管理系统

    Java+Swing实现电子相册管理系统 一.系统介绍 二.系统展示 1.主界面 2.全屏主界面 3.放大图片 4.缩小图片 5.幻灯片放映 三.系统实现 AutoPlay.java FileNode ...

  7. Eclipse+Java+Swing+Mysql实现自助存取款机(ATM)系统

    目录 一.系统介绍 1.开发环境 2.技术选型 3.系统功能 4.数据库 5.工程截图 二.系统展示 1.注册页面 2.登录页面 3.主页面 4.取款 5.存款 6.转账 7.余额查询 三.部分代码 ...

  8. Eclipse+Java+Swing+Mysql实现仓库管理系统

    目录 一.系统介绍 1.软件环境 2.系统功能 3.数据库 4.工程截图 二.系统展示 1.用户-登录页 2.用户-登录成功 3.用户-主页面 4.用户-用户管理-个人信息 5.用户-用户管理-修改密 ...

  9. Eclipse+Java+Swing+Mysql实现电影购票系统【建议收藏】

    目录 一.系统介绍 1.开发环境 2.技术选型 3.系统功能 4.数据库 5.工程截图 二.系统展示 1.注册系统 2.登录系统 3.用户-欢迎界面 4.用户-影片排行榜 5.用户-购票信息 6.用户 ...

  10. Eclipse+Java+Swing实现斗地主游戏

    Java+Swing实现斗地主游戏 一.系统介绍 二.系统展示 1.扑克分发 2.抢地主 3.出牌 4.游戏胜利 三.系统实现 Card.java CardType.java Common.java ...

最新文章

  1. 英伟达小姐姐的Python隐藏技巧合集,推特2400赞,代码可以直接跑
  2. SCRUM敏捷实践—任务看板
  3. wireshark读写pcap文件_PCAP-file-analysis 利用wireshark捕获tcp ip数据包和pcap文件分析 - 下载 - 搜珍网...
  4. 【机器学习】快速入门机器学习
  5. python请输入_不断提示用户输入Python
  6. 【Codeforces Round #452 (Div. 2) C】 Dividing the numbers
  7. ExtAspNet学习-利用AppBox框架快速创建项目(五)—完成项目含源代码
  8. 【深圳云栖大会】阿里云弹性计算ESSD云盘产品全面解析
  9. SIPp web frontend(2)
  10. python如何获取输入_python如何从键盘获取输入实例
  11. Eclipse和Intel idea的常用技巧
  12. window.opener 与 window.dialogArguments的用法
  13. win8.1 删除这台电脑里,默认的库文件夹
  14. Python + Graphviz 绘制神经网络结构图
  15. ucserver admin.php,Discuz!X3.2 升级后ucenter、uc_server正确密码却无法登录后台的解决方法...
  16. 计算机课程设计心得,课程设计心得体会 -心得
  17. 手把手教你集成Andriod百度地图SDK
  18. 已解决raise JSONDecodeError(“Expecting value”, s, err.value) from None
  19. slideUp()方法和slideDown()方法
  20. 轻断食过程中的身体变化

热门文章

  1. 弹窗整人php源码,整人无限弹窗[附源码]
  2. 华硕Z77系列主板怎么进行超频设置?
  3. ​Fruits 360数据集
  4. Linux 完全卸载 MySQL
  5. iOS开发中使用宏定义提高开发效率
  6. 基于C#实现的简易绘图工具设计
  7. sublime text配置VBA编辑器插件
  8. Window Linux双系统安装 超详细教程
  9. 51 单片机 建立 文本文件_51单片机如何创建工程文件及生成可烧录的hex文件,并点亮第一颗LED...
  10. 【Unity3D插件】Unity3D各类教程汇总