1、项目演示
DC00007基于java swing+MySQL学院信息管理系统GUI学院学生信息管理系统java项目
2、项目功能描述
基于java swing+MySQL学院信息管理系统
- 系统登录、注册
- 学生管理:学生注册、学生信息管理
- 班级管理:班级注册、班级信息管理
- 专业管理:专业注册、专业信息管理
- 账户管理:重新登录、退出系统
3、项目运行截图(部分)
4、项目压缩包内容
5、项目核心代码(部分)
5.1 数据库连接
package com.java.util;
import java.sql.Connection;
import java.sql.DriverManager;
public class DataCon {
private String url="jdbc:mysql://localhost:3305/student??useUnicode=true&characterEncoding=UTF8";
private String jdbcname="com.mysql.jdbc.Driver";
private String userName="root";
private String password="root";
public Connection getCon() throws Exception
{//获取数据库连接
Class.forName(jdbcname);
Connection con=DriverManager.getConnection(url,userName,password);
return con;
}
public void closeCon(Connection con){
if(con!=null)
{
try {
con.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
5.2 主窗口
package com.java.view;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
public class mainFrm extends javax.swing.JFrame {
public mainFrm() {
initComponents();
this.setExtendedState(JFrame.MAXIMIZED_BOTH);
}
private void initComponents() {
jdesk = new javax.swing.JDesktopPane();
canvas1 = new java.awt.Canvas();
canvas2 = new java.awt.Canvas();
jMenuBar1 = new javax.swing.JMenuBar();
jMenu1 = new javax.swing.JMenu();
jMenuItem1 = new javax.swing.JMenuItem();
jMenuItem2 = new javax.swing.JMenuItem();
jMenu2 = new javax.swing.JMenu();
jMenuItem3 = new javax.swing.JMenuItem();
jMenuItem4 = new javax.swing.JMenuItem();
jMenu3 = new javax.swing.JMenu();
jMenuItem5 = new javax.swing.JMenuItem();
jMenuItem6 = new javax.swing.JMenuItem();
jMenu5 = new javax.swing.JMenu();
jMenuItem8 = new javax.swing.JMenuItem();
jMenuItem9 = new javax.swing.JMenuItem();
jMenu4 = new javax.swing.JMenu();
jMenuItem7 = new javax.swing.JMenuItem();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setTitle("\u4e3b\u754c\u9762");
jdesk.setBorder(new javax.swing.border.MatteBorder(null));
canvas1.setBounds(0, 0, 0, 0);
jdesk.add(canvas1, javax.swing.JLayeredPane.DEFAULT_LAYER);
canvas2.setBounds(0, 0, 0, 0);
jdesk.add(canvas2, javax.swing.JLayeredPane.DEFAULT_LAYER);
jMenu1.setText("\u5b66\u751f\u7ba1\u7406");
jMenuItem1.setText("\u5b66\u751f\u6ce8\u518c");
jMenuItem1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jMenuItem1ActionPerformed(evt);
}
});
jMenu1.add(jMenuItem1);
jMenuItem2.setText("\u5b66\u751f\u4fe1\u606f\u7ef4\u62a4");
jMenuItem2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jMenuItem2ActionPerformed(evt);
}
});
jMenu1.add(jMenuItem2);
jMenuBar1.add(jMenu1);
jMenu2.setText("\u73ed\u7ea7\u7ba1\u7406");
jMenuItem3.setText("\u73ed\u7ea7\u6ce8\u518c");
jMenuItem3.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jMenuItem3ActionPerformed(evt);
}
});
jMenu2.add(jMenuItem3);
jMenuItem4.setText("\u73ed\u7ea7\u4fe1\u606f\u7ef4\u62a4");
jMenuItem4.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jMenuItem4ActionPerformed(evt);
}
});
jMenu2.add(jMenuItem4);
jMenuBar1.add(jMenu2);
jMenu3.setText("\u4e13\u4e1a\u7ba1\u7406");
jMenuItem5.setText("\u4e13\u4e1a\u6ce8\u518c");
jMenuItem5.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jMenuItem5ActionPerformed(evt);
}
});
jMenu3.add(jMenuItem5);
jMenuItem6.setText("\u4e13\u4e1a\u4fe1\u606f\u7ef4\u62a4");
jMenuItem6.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jMenuItem6ActionPerformed(evt);
}
});
jMenu3.add(jMenuItem6);
jMenuBar1.add(jMenu3);
jMenu5.setText("\u8d26\u6237\u7ba1\u7406");
jMenuItem8.setText("\u91cd\u65b0\u767b\u5f55");
jMenuItem8.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jMenuItem8ActionPerformed(evt);
}
});
jMenu5.add(jMenuItem8);
jMenuItem9.setText("\u9000\u51fa\u7cfb\u7edf");
jMenuItem9.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jMenuItem9ActionPerformed(evt);
}
});
jMenu5.add(jMenuItem9);
jMenuBar1.add(jMenu5);
jMenu4.setText("\u5173\u4e8e");
jMenuItem7.setText("\u5173\u4e8e\u6211\u4eec");
jMenuItem7.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jMenuItem7ActionPerformed(evt);
}
});
jMenu4.add(jMenuItem7);
jMenuBar1.add(jMenu4);
setJMenuBar(jMenuBar1);
org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(
getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(layout.createParallelGroup(
org.jdesktop.layout.GroupLayout.LEADING).add(jdesk,
org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 424,
Short.MAX_VALUE));
layout.setVerticalGroup(layout.createParallelGroup(
org.jdesktop.layout.GroupLayout.LEADING).add(jdesk,
org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 279,
Short.MAX_VALUE));
pack();
}// </editor-fold>
//GEN-END:initComponents
private void jMenuItem7ActionPerformed(java.awt.event.ActionEvent evt) {
JOptionPane.showMessageDialog(null, "学院信息管理系统");
}
private void jMenuItem9ActionPerformed(java.awt.event.ActionEvent evt) {
this.dispose();
}
private void jMenuItem8ActionPerformed(java.awt.event.ActionEvent evt) {
this.dispose();
new LogonFrm().setVisible(true);
}
private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt) {
ManagerStInterFrm ManagerStInterFrm = new ManagerStInterFrm();
ManagerStInterFrm.setVisible(true);
jdesk.add(ManagerStInterFrm);
}
private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {
AddStInterFrm AddStInterFrm = new AddStInterFrm();
AddStInterFrm.setVisible(true);
jdesk.add(AddStInterFrm);
}
private void jMenuItem4ActionPerformed(java.awt.event.ActionEvent evt) {
ManagerClassInterFrm ManagerClassInterFrm = new ManagerClassInterFrm();
ManagerClassInterFrm.setVisible(true);
jdesk.add(ManagerClassInterFrm);
}
private void jMenuItem3ActionPerformed(java.awt.event.ActionEvent evt) {
AddClassInterFrm AddClassInterFrm = new AddClassInterFrm();
AddClassInterFrm.setVisible(true);
jdesk.add(AddClassInterFrm);
}
private void jMenuItem6ActionPerformed(java.awt.event.ActionEvent evt) {
ManagerProjectInterFrm ManagerProjectInterFrm = new ManagerProjectInterFrm();
ManagerProjectInterFrm.setVisible(true);
jdesk.add(ManagerProjectInterFrm);
}
private void jMenuItem5ActionPerformed(java.awt.event.ActionEvent evt) {
AddProjectInFrm addprojectinfrm = new AddProjectInFrm();
addprojectinfrm.setVisible(true);
jdesk.add(addprojectinfrm);
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new mainFrm().setVisible(true);
}
});
}
private java.awt.Canvas canvas1;
private java.awt.Canvas canvas2;
private javax.swing.JMenu jMenu1;
private javax.swing.JMenu jMenu2;
private javax.swing.JMenu jMenu3;
private javax.swing.JMenu jMenu4;
private javax.swing.JMenu jMenu5;
private javax.swing.JMenuBar jMenuBar1;
private javax.swing.JMenuItem jMenuItem1;
private javax.swing.JMenuItem jMenuItem2;
private javax.swing.JMenuItem jMenuItem3;
private javax.swing.JMenuItem jMenuItem4;
private javax.swing.JMenuItem jMenuItem5;
private javax.swing.JMenuItem jMenuItem6;
private javax.swing.JMenuItem jMenuItem7;
private javax.swing.JMenuItem jMenuItem8;
private javax.swing.JMenuItem jMenuItem9;
private javax.swing.JDesktopPane jdesk;
}
5.3 登录窗口
package com.java.view;
import java.awt.Font;
import java.sql.Connection;
import java.sql.ResultSet;
import javax.swing.JOptionPane;
import javax.swing.UIManager;
import com.java.dao.userDao;
import com.java.model.user;
import com.java.util.DataCon;
import com.java.util.Strutil;
public class LogonFrm extends javax.swing.JFrame {
DataCon datacon = new DataCon();
userDao userdao = new userDao();
/** Creates new form LogonFrm */
public LogonFrm() {
//改变系统默认字体
Font font = new Font("Dialog", Font.PLAIN, 12);
java.util.Enumeration keys = UIManager.getDefaults().keys();
while (keys.hasMoreElements()) {
Object key = keys.nextElement();
Object value = UIManager.get(key);
if (value instanceof javax.swing.plaf.FontUIResource) {
UIManager.put(key, font);
}
}
initComponents();
this.setLocationRelativeTo(null);//居中显示
}
private void initComponents() {
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
jusername = new javax.swing.JTextField();
jLabel3 = new javax.swing.JLabel();
jpassword = new javax.swing.JPasswordField();
jButton1 = new javax.swing.JButton();
jButton2 = new javax.swing.JButton();
jButton3 = new javax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setTitle("\u7ba1\u7406\u5458\u767b\u9646");
setResizable(false);
jLabel1.setFont(new java.awt.Font("楷体", 0, 36));
jLabel1.setIcon(new javax.swing.ImageIcon(
"image/student.png")); // NOI18N
jLabel1.setText("\u5b66\u751f\u767b\u5f55");
jLabel2.setIcon(new javax.swing.ImageIcon(
"image/username.png")); // NOI18N
jLabel2.setText("\u7528\u6237\u540d\uff1a");
jLabel3.setIcon(new javax.swing.ImageIcon(
"image/password_32.png")); // NOI18N
jLabel3.setText("\u5bc6 \u7801\uff1a");
jpassword.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
}
});
jButton1.setIcon(new javax.swing.ImageIcon(
"image/login.png")); // NOI18N
jButton1.setText("\u767b\u5f55");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});
jButton2.setIcon(new javax.swing.ImageIcon(
"image/reset.png")); // NOI18N
jButton2.setText("\u91cd\u7f6e");
jButton2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton2ActionPerformed(evt);
}
});
jButton3.setText("\u6ce8\u518c\u65b0\u7528\u6237");
jButton3.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton3ActionPerformed(evt);
}
});
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(
getContentPane());
getContentPane().setLayout(layout);
layout
.setHorizontalGroup(layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(
layout
.createSequentialGroup()
.addGap(33, 33, 33)
.addGroup(
layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(
layout
.createSequentialGroup()
.addGap(
95,
95,
95)
.addComponent(
jLabel1,
javax.swing.GroupLayout.PREFERRED_SIZE,
225,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(
layout
.createSequentialGroup()
.addGap(
18,
18,
18)
.addComponent(
jButton1)
.addGroup(
layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(
layout
.createSequentialGroup()
.addPreferredGap(
javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(
layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(
layout
.createSequentialGroup()
.addPreferredGap(
javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(
jLabel2))
.addComponent(
jLabel3))
.addPreferredGap(
javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(
layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(
jpassword,
javax.swing.GroupLayout.DEFAULT_SIZE,
125,
Short.MAX_VALUE)
.addComponent(
jusername,
javax.swing.GroupLayout.DEFAULT_SIZE,
125,
Short.MAX_VALUE)))
.addGroup(
layout
.createSequentialGroup()
.addGap(
65,
65,
65)
.addComponent(
jButton2)))))
.addPreferredGap(
javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jButton3).addGap(63, 63,
63)));
layout
.setVerticalGroup(layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(
layout
.createSequentialGroup()
.addGap(53, 53, 53)
.addComponent(jLabel1)
.addGap(40, 40, 40)
.addGroup(
layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel2)
.addComponent(
jusername,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(35, 35, 35)
.addGroup(
layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel3)
.addComponent(
jpassword,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(46, 46, 46)
.addGroup(
layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jButton1)
.addComponent(
jButton2,
javax.swing.GroupLayout.PREFERRED_SIZE,
30,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jButton3))
.addContainerGap(25, Short.MAX_VALUE)));
pack();
}
private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {
this.dispose();
new UserFrm().setVisible(true);
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
String userName = jusername.getText();
String password = new String(jpassword.getPassword());
if (Strutil.isEmpty(userName)) {
JOptionPane.showMessageDialog(null, "用户名不能为空");
return;
}
if (Strutil.isEmpty(password)) {
JOptionPane.showMessageDialog(null, "密码不能为空");
return;
}
Connection con = null;
try {
con = datacon.getCon();
ResultSet rs = userdao.selectUser(con, userName, password);
if (rs.next()) {
this.dispose();
new mainFrm().setVisible(true);
JOptionPane.showMessageDialog(null, "欢迎访问!");
} else {
JOptionPane.showMessageDialog(null, "用户名或密码错误");
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
JOptionPane.showMessageDialog(null, "登录失败");
} finally {
datacon.closeCon(con);
}
}
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
this.jusername.setText("");
this.jpassword.setText("");
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new LogonFrm().setVisible(true);
}
});
}
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JButton jButton3;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JPasswordField jpassword;
private javax.swing.JTextField jusername;
}
6、获取源码
6.1 方式一
私信或者扫描名片获取项目源码。
6.2 方案二
点此直接获取项目源码。