Java+Swing实现学生宿舍管理系统
 一、系统介绍二、系统展示1.登录页面2.学生主页面3.学生端-登记页面4.学生端-学生信息修改5.学生端-寝室信息查询6.学生端-学生信息查询7.学生端-退出登录8.管理员-主页面9.管理员-宿舍信息修改10.管理员-宿舍信息删除11.管理员-学生信息修改12.管理员-学生信息删除13.管理员-宿舍信息添加14.管理员-学生信息添加15.管理员-学生信息查询16.管理员-宿舍信息查询17.管理员-退出系统
  三、系统实现Room.javaStudent.javaUser.javaDMUtil.javaStringUtil.javaRoomDao.javaUserDao.javaLoginFrm.javaMainFrm2.javaRoomAddInterFrm.javaRoomDeleteInterFrm.javaRoomManagerInterFrm.javaRoomSearchInterFrm.java
  四、其他1.其他系统实现2.获取源码
 
 
一、系统介绍
 
本系统实现了学生登录和管理员登录,学生可以登记入住,实现学生信息查询和修改,实现宿舍信息查询。管理实现学生信息增删改查,实现宿舍信息增删改查。
 
二、系统展示
 
1.登录页面
 
 
2.学生主页面
 
 
3.学生端-登记页面
 
 
4.学生端-学生信息修改
 
 
5.学生端-寝室信息查询
 
 
6.学生端-学生信息查询
 
 
7.学生端-退出登录
 
 
8.管理员-主页面
 
 
9.管理员-宿舍信息修改
 
 
10.管理员-宿舍信息删除
 
 
11.管理员-学生信息修改
 
 
12.管理员-学生信息删除
 
 
13.管理员-宿舍信息添加
 
 
14.管理员-学生信息添加
 
 
15.管理员-学生信息查询
 
 
16.管理员-宿舍信息查询
 
 
17.管理员-退出系统
 
 
三、系统实现
 
Room.java
 
package com
.sjsq
.model
;
public class Room {
	String id
;
	String member
;
	String leader
;
	
	public Room(String member
) {
		super();
		this.member 
= member
;
	}
	public Room() {
		super();
	}
	public Room(String id
, String member
, String leader
) {
		super();
		this.id 
= id
;
		this.member 
= member
;
		this.leader 
= leader
;
	}
	public Room(String member
, String leader
) {
		super();
		this.member 
= member
;
		this.leader 
= leader
;
	}
	
	public String 
getMember() {
		return member
;
	}
	public void setMember(String member
) {
		this.member 
= member
;
	}
	public String 
getLeader() {
		return leader
;
	}
	public void setLeader(String leader
) {
		this.leader 
= leader
;
	}
	public String 
getId() {
		return id
;
	}
	public void setId(String id
) {
		this.id 
= id
;
	}
	public String 
toString() {
		return this.getMember();
	}
}
 
Student.java
 
package com
.sjsq
.model
;
public class Student {
	int id
;
	String name
;
	String sex
;
	String yuanxi
;
	String classroom
;
	int dormitory 
= -1;
	int bed
;
	public Student(String name
) {
		super();
		this.name 
= name
;
	}
	public Student(int id
, String name
, String sex
, String yuanxi
, String classroom
, int dormitory
, int bed
) {
		super();
		this.id 
= id
;
		this.name 
= name
;
		this.sex 
= sex
;
		this.yuanxi 
= yuanxi
;
		this.classroom 
= classroom
;
		this.dormitory 
= dormitory
;
		this.bed 
= bed
;
	}
	public Student(String name
, String sex
, String yuanxi
, String classroom
, int dormitory
, int bed
) {
		super();
		this.name 
= name
;
		this.sex 
= sex
;
		this.yuanxi 
= yuanxi
;
		this.classroom 
= classroom
;
		this.dormitory 
= dormitory
;
		this.bed 
= bed
;
	}
	public Student() {
		super();
	}
	public Student(String name
, String sex
, String yuanxi
, String classroom
, int dormitory
) {
		super();
		this.name 
= name
;
		this.sex 
= sex
;
		this.yuanxi 
= yuanxi
;
		this.classroom 
= classroom
;
		this.dormitory 
= dormitory
;
	}
	public int getId() {
		return id
;
	}
	public void setId(int id
) {
		this.id 
= id
;
	}
	public String 
getName() {
		return name
;
	}
	public void setName(String name
) {
		this.name 
= name
;
	}
	public String 
getSex() {
		return sex
;
	}
	public void setSex(String sex
) {
		this.sex 
= sex
;
	}
	public String 
getYuanxi() {
		return yuanxi
;
	}
	public void setYuanxi(String yuanxi
) {
		this.yuanxi 
= yuanxi
;
	}
	public String 
getClassroom() {
		return classroom
;
	}
	public void setClassroom(String classroom
) {
		this.classroom 
= classroom
;
	}
	public int getDormitory() {
		return dormitory
;
	}
	public void setDormitory(int dormitory
) {
		this.dormitory 
= dormitory
;
	}
	public int getBed() {
		return bed
;
	}
	public void setBed(int bed
) {
		this.bed 
= bed
;
	}
}
 
User.java
 
package com
.sjsq
.model
;
public class User {
	String id
;
	String userName
;
	String userPassword
;
	public User() {
		super();
	}
	public User(String userName
, String userPassword
) {
		super();
		this.userName 
= userName
;
		this.userPassword 
= userPassword
;
	}
	public String 
getId() {
		return id
;
	}
	public void setId(String id
) {
		this.id 
= id
;
	}
	public String 
getUserName() {
		return userName
;
	}
	public void setUserName(String userName
) {
		this.userName 
= userName
;
	}
	public String 
getUserPassword() {
		return userPassword
;
	}
	public void setUserPassword(String userPassword
) {
		this.userPassword 
= userPassword
;
	}
	@Override
	public String 
toString() {
		return this.getUserName();
	}
}
 
DMUtil.java
 
package com
.sjsq
.util
;
import java
.sql
.Connection
;
import java
.sql
.DriverManager
;
public class DMUtil {
	
	private String url 
= "jdbc:mysql://localhost:3306/dormitory_management_swing?serverTimezone=UTC";
	
	private String userName 
= "root";
	
	private String userPassword 
= "admin";
	
	private String jdbcName 
= "com.mysql.cj.jdbc.Driver";
	
	public Connection 
getCon() throws Exception 
{
		Class
.forName(jdbcName
);
		Connection con 
= DriverManager
.getConnection(url
, userName
, userPassword
);
		return con
;
	}
	
	public void closeCon(Connection con
) throws Exception 
{
		if (con 
!= null
) {
			con
.close();
		}
	}
	
	public static void main(String
[] args
) {
		DMUtil dmutil 
= new DMUtil();
		Connection con 
= null
;
		try {
			con 
= dmutil
.getCon();
			System
.out
.println("数据库连接成功!");
		} catch (Exception e
) {
			e
.printStackTrace();
		} finally {
			try {
				dmutil
.closeCon(con
);
			} catch (Exception e
) {
				e
.printStackTrace();
			}
		}
	}
}
 
StringUtil.java
 
package com
.sjsq
.util
;
public class StringUtil {
	
	public static boolean isEmpty(String type
) {
		if (type
.equals("")) {
			return true;
		} else {
			return false;
		}
	}
	
	public static boolean isNotEmpty(String type
) {
		if (type 
!= null 
&& !type
.equals("")) {
			return true;
		} else {
			return false;
		}
	}
}
 
RoomDao.java
 
package com
.sjsq
.dao
;
import java
.sql
.Connection
;
import java
.sql
.PreparedStatement
;
import java
.sql
.ResultSet
;
import com
.sjsq
.model
.Room
;
import com
.sjsq
.util
.StringUtil
;
public class RoomDao {
	
	public int roomAdd(Connection con
, Room room
) throws Exception 
{
		String sql 
= "insert into room_message values(null,?,?)";
		PreparedStatement pstmt 
= con
.prepareStatement(sql
);
		pstmt
.setString(1, room
.getMember());
		pstmt
.setString(2, room
.getLeader());
		return pstmt
.executeUpdate();
	}
	
	public ResultSet 
roomList(Connection con
, Room room
) throws Exception 
{
		StringBuffer sb 
= new StringBuffer("select * from room_message");
		if (StringUtil
.isNotEmpty(room
.getMember())) {
			String member 
= room
.getMember();
			sb
.append(" and member like '%" + room
.getMember() + "%'");
		}
		PreparedStatement pstmt 
= con
.prepareStatement(sb
.toString().replaceFirst("and", "where"));
		return pstmt
.executeQuery();
	}
	
	public int roomModify(Connection con
, Room room
) throws Exception 
{
		String sql 
= "update room_message set member=?,leader=? where id=?";
		PreparedStatement pstmt 
= con
.prepareStatement(sql
);
		pstmt
.setString(1, room
.getMember());
		pstmt
.setString(2, room
.getLeader());
		pstmt
.setString(3, room
.getId());
		return pstmt
.executeUpdate();
	}
	
	public int roomDelete(Connection con
, Room room
) throws Exception 
{
		String sql 
= "delete from room_message where member=?";
		PreparedStatement pstmt 
= con
.prepareStatement(sql
);
		pstmt
.setString(1, room
.getMember());
		return pstmt
.executeUpdate();
	}
}
 
UserDao.java
 
package com
.sjsq
.dao
;
import java
.sql
.Connection
;
import java
.sql
.PreparedStatement
;
import java
.sql
.ResultSet
;
import com
.sjsq
.model
.User
;
public class UserDao {
	
	public User 
Login(Connection con
, User user
) throws Exception 
{
		User currentuser 
= null
;
		String sql 
= "select * from d_user where userName=? and userPassword=?";
		PreparedStatement pstmt 
= con
.prepareStatement(sql
);
		pstmt
.setString(1, user
.getUserName());
		pstmt
.setString(2, user
.getUserPassword());
		ResultSet rs 
= pstmt
.executeQuery();
		while (rs
.next()) {
			currentuser 
= new User();
			currentuser
.setUserName(rs
.getString("userName"));
			currentuser
.setUserPassword(rs
.getString("userPassword"));
		}
		return currentuser
;
	}
}
 
LoginFrm.java
 
package com
.sjsq
.view
;
import java
.awt
.Font
;
import java
.sql
.Connection
;
import javax
.swing
.JLabel
;
import javax
.swing
.JButton
;
import javax
.swing
.JComboBox
;
import javax
.swing
.JTextField
;
import javax
.swing
.JPasswordField
;
import javax
.swing
.ImageIcon
;
import javax
.swing
.JOptionPane
;
import javax
.swing
.UIManager
;
import com
.sjsq
.dao
.UserDao
;
import com
.sjsq
.model
.User
;
import com
.sjsq
.util
.DMUtil
;
import com
.sjsq
.util
.StringUtil
;
public class LoginFrm extends javax.swing.JFrame {
	private JLabel jLabel1
;
	private JLabel jLabel2
;
	private JLabel jLabel3
;
	private JLabel jLabel4
;
	private JButton jb_login
;
	private JButton jb_reset
;
	private JComboBox jcb_choose
;
	private JTextField userNameTxt
;
	private JPasswordField userPasswordTxt
;
	DMUtil dmutil 
= new DMUtil();
	UserDao userdao 
= new UserDao();
	
	public LoginFrm() {
		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
);
		this.filltable();
	}
	
	private void filltable() {
		User user1 
= new User();
		User user2 
= new User();
		user1
.setUserName("学生");
		user2
.setUserName("管理员");
		user1
.setId(1 + "");
		user2
.setId(2 + "");
		jcb_choose
.addItem(user1
);
		jcb_choose
.addItem(user2
);
	}
	
	private void initComponents() {
		jLabel1 
= new JLabel("General", JLabel
.CENTER
);
		jLabel2 
= new JLabel();
		jLabel3 
= new JLabel();
		userNameTxt 
= new JTextField();
		userPasswordTxt 
= new JPasswordField();
		jb_login 
= new JButton();
		jb_reset 
= new JButton();
		jcb_choose 
= new JComboBox();
		jLabel4 
= new JLabel();
		setDefaultCloseOperation(javax
.swing
.WindowConstants
.EXIT_ON_CLOSE
);
		setTitle("学生宿舍管理系统登录界面");
		setResizable(false);
		jLabel1
.setFont(new Font("宋体", 0, 24));
		jLabel1
.setText("学生宿舍管理系统");
		
		jLabel2
.setIcon(new ImageIcon(LoginFrm
.class.getResource("/images/user.png")));
		jLabel2
.setText("账号:");
		
		jLabel3
.setIcon(new ImageIcon(LoginFrm
.class.getResource("/images/password.png")));
		jLabel3
.setText("密码:");
		userNameTxt
.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java
.awt
.event
.ActionEvent evt
) {
				userNameTxtActionPerformed(evt
);
			}
		});
		
		jb_login
.setIcon(new ImageIcon(LoginFrm
.class.getResource("/images/login.png")));
		jb_login
.setText("登录");
		jb_login
.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java
.awt
.event
.ActionEvent evt
) {
				jb_loginActionPerformed(evt
);
			}
		});
		
		jb_reset
.setIcon(new ImageIcon(LoginFrm
.class.getResource("/images/reset.png"))); 
		jb_reset
.setText("重置");
		jb_reset
.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java
.awt
.event
.ActionEvent evt
) {
				jb_resetActionPerformed(evt
);
			}
		});
		jLabel4
.setIcon(new ImageIcon(LoginFrm
.class.getResource("/images/type.png"))); 
		jLabel4
.setText("用户类型:");
		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(103, 103, 103).addComponent(jLabel1
)
								.addContainerGap(58, Short
.MAX_VALUE
))
						.addGroup(javax
.swing
.GroupLayout
.Alignment
.TRAILING
, layout
								
.createSequentialGroup().addGroup(layout
.createParallelGroup(
										javax
.swing
.GroupLayout
.Alignment
.TRAILING
).addGroup(
												layout
.createSequentialGroup().addContainerGap().addComponent(
														jLabel4
).addGap(42, 42, 42).addComponent(jcb_choose
,
																javax
.swing
.GroupLayout
.PREFERRED_SIZE
, 111,
																javax
.swing
.GroupLayout
.PREFERRED_SIZE
))
										.addGroup(layout
.createSequentialGroup()
												.addGroup(layout
.createParallelGroup(
														javax
.swing
.GroupLayout
.Alignment
.LEADING
)
														.addGroup(layout
.createSequentialGroup().addGap(103, 103, 103)
																.addGroup(layout
.createParallelGroup(
																		javax
.swing
.GroupLayout
.Alignment
.TRAILING
)
																		.addComponent(jLabel3
).addComponent(jLabel2
)))
														.addGroup(layout
																
.createSequentialGroup().addGap(104, 104, 104)
																.addComponent(jb_login
)))
												.addGroup(layout
														
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.LEADING
)
														.addGroup(layout
.createSequentialGroup().addGap(42, 42, 42)
																.addGroup(layout
.createParallelGroup(
																		javax
.swing
.GroupLayout
.Alignment
.LEADING
)
																		.addComponent(userNameTxt
,
																				javax
.swing
.GroupLayout
.DEFAULT_SIZE
,
																				111, Short
.MAX_VALUE
)
																		.addComponent(userPasswordTxt
,
																				javax
.swing
.GroupLayout
.DEFAULT_SIZE
,
																				111, Short
.MAX_VALUE
)))
														.addGroup(javax
.swing
.GroupLayout
.Alignment
.TRAILING
,
																layout
.createSequentialGroup().addPreferredGap(
																		javax
.swing
.LayoutStyle
.ComponentPlacement
.RELATED
)
																		.addComponent(jb_reset
).addGap(25, 25, 25)))))
								.addGap(100, 100, 100)));
		
		layout
.setVerticalGroup(layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.LEADING
).addGroup(layout
				
.createSequentialGroup().addGap(60, 60, 60).addComponent(jLabel1
)
				.addPreferredGap(javax
.swing
.LayoutStyle
.ComponentPlacement
.RELATED
)
				.addGroup(layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.BASELINE
).addComponent(jLabel2
)
						.addComponent(userNameTxt
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
,
								javax
.swing
.GroupLayout
.DEFAULT_SIZE
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
))
				.addGap(27, 27, 27)
				.addGroup(layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.BASELINE
).addComponent(jLabel3
)
						.addComponent(userPasswordTxt
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
,
								javax
.swing
.GroupLayout
.DEFAULT_SIZE
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
))
				.addGap(27, 27, 27)
				.addGroup(layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.LEADING
).addComponent(jLabel4
)
						.addComponent(jcb_choose
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
,
								javax
.swing
.GroupLayout
.DEFAULT_SIZE
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
))
				.addGap(34, 34, 34).addGroup(layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.BASELINE
)
						.addComponent(jb_login
).addComponent(jb_reset
))
				.addContainerGap(34, Short
.MAX_VALUE
)));
		pack();
	}
	
	private void jb_loginActionPerformed(java
.awt
.event
.ActionEvent evt
) {
		String userName 
= userNameTxt
.getText();
		String userPassword 
= new String(userPasswordTxt
.getPassword());
		if (StringUtil
.isEmpty(userName
)) {
			JOptionPane
.showMessageDialog(null
, "用户名不能为空!");
			return;
		} else if (StringUtil
.isEmpty(userPassword
)) {
			JOptionPane
.showMessageDialog(null
, "密码不能为空!");
			return;
		}
		User user 
= new User(userName
, userPassword
);
		Connection con 
= null
;
		try {
			con 
= dmutil
.getCon();
			User currentuser 
= userdao
.Login(con
, user
);
			if (currentuser 
!= null
) {
				User user1 
= (User
) jcb_choose
.getSelectedItem();
				String userright 
= user1
.getUserName();
				if (userright
.equals("管理员")) {
					this.dispose();
					MainFrm main 
= new MainFrm();
					main
.setVisible(true);
				} else if (userright
.equals("学生")) {
					this.dispose();
					MainFrm2 main2 
= new MainFrm2();
					main2
.setVisible(true);
				} else {
					JOptionPane
.showMessageDialog(null
, "用户名密码错误!");
				}
			}
		} catch (Exception e
) {
			JOptionPane
.showInternalMessageDialog(null
, "登陆失败");
			e
.printStackTrace();
		}
	}
	
	private void jb_resetActionPerformed(java
.awt
.event
.ActionEvent evt
) {
		this.userNameTxt
.setText("");
		this.userPasswordTxt
.setText("");
	}
	private void userNameTxtActionPerformed(java
.awt
.event
.ActionEvent evt
) {
	}
	
	public static void main(String args
[]) {
		java
.awt
.EventQueue
.invokeLater(new Runnable() {
			public void run() {
				new LoginFrm().setVisible(true);
			}
		});
	}
}
 
MainFrm2.java
 
package com
.sjsq
.view
;
import javax
.swing
.JDesktopPane
;
import javax
.swing
.JMenu
;
import javax
.swing
.JMenuBar
;
import javax
.swing
.JMenuItem
;
import javax
.swing
.JOptionPane
;
public class MainFrm2 extends javax.swing.JFrame {
	private JMenu jMenu1
;
	private JMenu jMenu3
;
	private JMenu jMenu2
;
	private JMenuBar jMenuBar1
;
	private JMenuItem jMenuItem1
;
	private JMenuItem jMenuItem2
;
	private JMenuItem jMenuItem3
;
	private JMenuItem jMenuItem4
;
	private JMenuItem jMenuItem5
;
	private JMenuItem jMenuItem6
;
	private JDesktopPane table
;
	
	public MainFrm2() {
		initComponents();
		
		setBounds(100, 200, 1050, 650);
		
		this.setLocationRelativeTo(null
);
	}
	
	private void initComponents() {
		table 
= new JDesktopPane();
		jMenuBar1 
= new JMenuBar();
		jMenu1 
= new JMenu();
		jMenuItem2 
= new JMenuItem();
		jMenuItem3 
= new JMenuItem();
		jMenu2 
= new JMenu();
		jMenuItem1 
= new JMenuItem();
		jMenuItem4 
= new JMenuItem();
		jMenu3 
= new JMenu();
		jMenuItem5 
= new JMenuItem();
		jMenuItem6 
= new JMenuItem();
		setDefaultCloseOperation(javax
.swing
.WindowConstants
.EXIT_ON_CLOSE
);
		setTitle("学生信息管理学生页面");
		
		jMenu1
.setText("学生入住");
		jMenuItem2
.setText("办理入住");
		jMenuItem2
.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java
.awt
.event
.ActionEvent evt
) {
				jMenuItem2ActionPerformed(evt
);
			}
		});
		jMenu1
.add(jMenuItem2
);
		jMenuItem3
.setText("信息修改");
		jMenuItem3
.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java
.awt
.event
.ActionEvent evt
) {
				jMenuItem3ActionPerformed(evt
);
			}
		});
		jMenu1
.add(jMenuItem3
);
		jMenuBar1
.add(jMenu1
);
		
		jMenu2
.setText("信息查询");
		jMenuItem1
.setText("寝室查询");
		jMenuItem1
.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java
.awt
.event
.ActionEvent evt
) {
				jMenuItem1ActionPerformed(evt
);
			}
		});
		jMenu2
.add(jMenuItem1
);
		jMenuItem4
.setText("人员查询");
		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("帮助服务");
		jMenuItem5
.setText("关于系统");
		jMenu3
.add(jMenuItem5
);
		jMenuItem6
.setText("退出系统");
		jMenuItem6
.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java
.awt
.event
.ActionEvent evt
) {
				jMenuItem6ActionPerformed(evt
);
			}
		});
		jMenu3
.add(jMenuItem6
);
		jMenuBar1
.add(jMenu3
);
		setJMenuBar(jMenuBar1
);
		javax
.swing
.GroupLayout layout 
= new javax.swing.GroupLayout(getContentPane());
		getContentPane().setLayout(layout
);
		layout
.setHorizontalGroup(layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.LEADING
)
				.addComponent(table
, javax
.swing
.GroupLayout
.DEFAULT_SIZE
, 400, Short
.MAX_VALUE
));
		layout
.setVerticalGroup(layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.LEADING
)
				.addComponent(table
, javax
.swing
.GroupLayout
.DEFAULT_SIZE
, 277, Short
.MAX_VALUE
));
		pack();
	}
	
	private void jMenuItem6ActionPerformed(java
.awt
.event
.ActionEvent evt
) {
		int a 
= JOptionPane
.showConfirmDialog(null
, "确定要退出?");
		if (a 
== 0) {
			this.dispose();
		}
	}
	private void jMenuItem1ActionPerformed(java
.awt
.event
.ActionEvent evt
) {
		RoomSearchInterFrm roomSearch 
= new RoomSearchInterFrm();
		roomSearch
.setVisible(true);
		this.table
.add(roomSearch
);
	}
	private void jMenuItem4ActionPerformed(java
.awt
.event
.ActionEvent evt
) {
		StudentSearchInterFrm StudentSearch 
= new StudentSearchInterFrm();
		StudentSearch
.setVisible(true);
		this.table
.add(StudentSearch
);
	}
	private void jMenuItem3ActionPerformed(java
.awt
.event
.ActionEvent evt
) {
		StudentModifyInterFrm StudentModify 
= new StudentModifyInterFrm();
		StudentModify
.setVisible(true);
		this.table
.add(StudentModify
);
	}
	private void jMenuItem2ActionPerformed(java
.awt
.event
.ActionEvent evt
) {
		StudentAddInterFrm Student 
= new StudentAddInterFrm();
		Student
.setVisible(true);
		this.table
.add(Student
);
	}
	
	public static void main(String args
[]) {
		java
.awt
.EventQueue
.invokeLater(new Runnable() {
			public void run() {
				new MainFrm2().setVisible(true);
			}
		});
	}
}
 
RoomAddInterFrm.java
 
package com
.sjsq
.view
;
import java
.sql
.Connection
;
import javax
.swing
.JOptionPane
;
import javax
.swing
.JTextField
;
import javax
.swing
.JLabel
;
import javax
.swing
.JButton
;
import com
.sjsq
.dao
.RoomDao
;
import com
.sjsq
.model
.Room
;
import com
.sjsq
.util
.DMUtil
;
public class RoomAddInterFrm extends javax.swing.JInternalFrame {
	private JTextField dm_leader
;
	private JTextField dm_number
;
	private JLabel jLabel1
;
	private JLabel jLabel2
;
	private JLabel jLabel3
;
	private JButton jb_add
;
	private JButton jb_reset
;
	DMUtil dmutil 
= new DMUtil();
	RoomDao roomdao 
= new RoomDao();
	public RoomAddInterFrm() {
		initComponents();
		this.setLocation(200, 50);
	}
	private void initComponents() {
		jLabel1 
= new JLabel();
		dm_number 
= new JTextField();
		jLabel2 
= new JLabel();
		dm_leader 
= new JTextField();
		jb_add 
= new JButton();
		jb_reset 
= new JButton();
		jLabel3 
= new JLabel();
		setClosable(true);
		setIconifiable(true);
		setTitle("宿舍添加");
		jLabel1
.setText("宿舍号:");
		jLabel2
.setText("寝室长:");
		jb_add
.setText("添加");
		jb_add
.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java
.awt
.event
.ActionEvent evt
) {
				jb_addActionPerformed(evt
);
			}
		});
		jb_reset
.setText("重置");
		jb_reset
.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java
.awt
.event
.ActionEvent evt
) {
				jb_resetActionPerformed(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(150, 150, 150)
				.addGroup(layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.LEADING
)
						.addGroup(layout
.createSequentialGroup().addComponent(jLabel2
)
								.addPreferredGap(javax
.swing
.LayoutStyle
.ComponentPlacement
.RELATED
)
								.addComponent(dm_leader
, javax
.swing
.GroupLayout
.DEFAULT_SIZE
, 121, Short
.MAX_VALUE
))
						.addGroup(layout
.createSequentialGroup().addComponent(jLabel1
)
								.addPreferredGap(javax
.swing
.LayoutStyle
.ComponentPlacement
.RELATED
)
								.addComponent(dm_number
, javax
.swing
.GroupLayout
.DEFAULT_SIZE
, 121, Short
.MAX_VALUE
)
								.addPreferredGap(javax
.swing
.LayoutStyle
.ComponentPlacement
.RELATED
))
						.addGroup(javax
.swing
.GroupLayout
.Alignment
.TRAILING
,
								layout
.createSequentialGroup().addComponent(jb_add
).addGap(18, 18, 18)
										.addComponent(jb_reset
)))
				.addGap(4, 4, 4).addComponent(jLabel3
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
, 170,
						javax
.swing
.GroupLayout
.PREFERRED_SIZE
)
				.addGap(25, 25, 25)));
		layout
.setVerticalGroup(layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.LEADING
).addGroup(layout
				
.createSequentialGroup()
				.addGroup(layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.TRAILING
).addGroup(layout
						
.createSequentialGroup().addGap(29, 29, 29)
						.addGroup(layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.BASELINE
)
								.addComponent(jLabel1
).addComponent(dm_number
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
,
										javax
.swing
.GroupLayout
.DEFAULT_SIZE
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
))
						.addGap(70, 70, 70)
						.addGroup(layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.BASELINE
)
								.addComponent(jLabel2
).addComponent(dm_leader
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
,
										javax
.swing
.GroupLayout
.DEFAULT_SIZE
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
))
						.addPreferredGap(javax
.swing
.LayoutStyle
.ComponentPlacement
.RELATED
, 91, Short
.MAX_VALUE
)
						.addGroup(layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.BASELINE
)
								.addComponent(jb_reset
).addComponent(jb_add
)))
						.addGroup(javax
.swing
.GroupLayout
.Alignment
.LEADING
,
								layout
.createSequentialGroup().addGap(27, 27, 27).addComponent(jLabel3
,
										javax
.swing
.GroupLayout
.PREFERRED_SIZE
, 222,
										javax
.swing
.GroupLayout
.PREFERRED_SIZE
)))
				.addContainerGap(40, Short
.MAX_VALUE
)));
		pack();
	}
	private void jb_addActionPerformed(java
.awt
.event
.ActionEvent evt
) {
		String name 
= dm_number
.getText();
		String leader 
= dm_leader
.getText();
		Room room 
= new Room(name
, leader
);
		Connection con 
= null
;
		try {
			con 
= dmutil
.getCon();
			int a 
= roomdao
.roomAdd(con
, room
);
			if (a 
== 1) {
				JOptionPane
.showMessageDialog(null
, "添加成功!");
				this.resetValue();
			} else {
				JOptionPane
.showMessageDialog(null
, "添加失败!");
			}
		} catch (Exception e
) {
			JOptionPane
.showMessageDialog(null
, "添加失败!");
			e
.printStackTrace();
		} finally {
			try {
				dmutil
.closeCon(con
);
			} catch (Exception e
) {
				e
.printStackTrace();
			}
		}
	}
	private void resetValue() {
		this.dm_leader
.setText("");
		this.dm_number
.setText("");
	}
	private void jb_resetActionPerformed(java
.awt
.event
.ActionEvent evt
) {
		this.dm_number
.setText("");
		this.dm_leader
.setText("");
	}
}
 
RoomDeleteInterFrm.java
 
package com
.sjsq
.view
;
import java
.sql
.Connection
;
import java
.sql
.ResultSet
;
import java
.util
.Vector
;
import javax
.swing
.JLabel
;
import javax
.swing
.JScrollPane
;
import javax
.swing
.JButton
;
import javax
.swing
.JTextField
;
import javax
.swing
.JTable
;
import javax
.swing
.JOptionPane
;
import javax
.swing
.table
.DefaultTableModel
;
import com
.sjsq
.dao
.RoomDao
;
import com
.sjsq
.model
.Room
;
import com
.sjsq
.util
.DMUtil
;
import com
.sjsq
.util
.StringUtil
;
public class RoomDeleteInterFrm extends javax.swing.JInternalFrame {
	
	private JLabel jLabel1
;
	private JScrollPane jScrollPane1
;
	private JButton jb_delete
;
	private JButton jb_exit
;
	private JButton jb_search
;
	private JTextField roomNum
;
	private JTable table
;
	DMUtil dmutil 
= new DMUtil();
	RoomDao roomdao 
= new RoomDao();
	
	public RoomDeleteInterFrm() {
		initComponents();
		this.setLocation(200, 50);
		this.fillTable(new Room());
	}
	
	private void fillTable(Room room
) {
		DefaultTableModel dtm 
= (DefaultTableModel
) table
.getModel();
		dtm
.setRowCount(0);
		Connection con 
= null
;
		try {
			con 
= dmutil
.getCon();
			ResultSet rs 
= roomdao
.roomList(con
, room
);
			while (rs
.next()) {
				Vector v 
= new Vector();
				v
.add(rs
.getString("id"));
				v
.add(rs
.getString("member"));
				v
.add(rs
.getString("leader"));
				dtm
.addRow(v
);
			}
		} catch (Exception e
) {
			e
.printStackTrace();
		} finally {
			try {
				dmutil
.closeCon(con
);
			} catch (Exception e
) {
				e
.printStackTrace();
			}
		}
	}
	
	private void initComponents() {
		jLabel1 
= new JLabel();
		roomNum 
= new JTextField();
		jb_search 
= new JButton();
		jScrollPane1 
= new JScrollPane();
		table 
= new JTable();
		jb_delete 
= new JButton();
		jb_exit 
= new JButton();
		setClosable(true);
		setIconifiable(true);
		setTitle("房间删除");
		jLabel1
.setText("房间号:");
		jb_search
.setText("查询");
		jb_search
.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java
.awt
.event
.ActionEvent evt
) {
				jb_searchActionPerformed(evt
);
			}
		});
		table
.setModel(new javax.swing.table.DefaultTableModel(new Object[][] {
		}, new String[] { "编号", "寝室号 ", "寝室长" }) {
			boolean[] canEdit 
= new boolean[] { false, false, false };
			public boolean isCellEditable(int rowIndex
, int columnIndex
) {
				return canEdit
[columnIndex
];
			}
		});
		jScrollPane1
.setViewportView(table
);
		jb_delete
.setText("删除");
		jb_delete
.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java
.awt
.event
.ActionEvent evt
) {
				jb_deleteActionPerformed(evt
);
			}
		});
		jb_exit
.setText("退出");
		jb_exit
.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java
.awt
.event
.ActionEvent evt
) {
				jb_exitActionPerformed(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(64, 64, 64).addComponent(jLabel1
).addGap(18, 18, 18)
						.addComponent(roomNum
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
, 142,
								javax
.swing
.GroupLayout
.PREFERRED_SIZE
)
						.addGap(29, 29, 29).addComponent(jb_search
).addContainerGap(41, Short
.MAX_VALUE
))
				.addGroup(layout
.createSequentialGroup().addGap(76, 76, 76).addComponent(jb_delete
)
						.addPreferredGap(javax
.swing
.LayoutStyle
.ComponentPlacement
.RELATED
, 123, Short
.MAX_VALUE
)
						.addComponent(jb_exit
).addGap(86, 86, 86))
				.addGroup(javax
.swing
.GroupLayout
.Alignment
.TRAILING
,
						layout
.createSequentialGroup()
								.addContainerGap(javax
.swing
.GroupLayout
.DEFAULT_SIZE
, Short
.MAX_VALUE
)
								.addComponent(jScrollPane1
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
, 379,
										javax
.swing
.GroupLayout
.PREFERRED_SIZE
)
								.addContainerGap()));
		layout
.setVerticalGroup(layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.LEADING
).addGroup(layout
				
.createSequentialGroup().addGap(28, 28, 28)
				.addGroup(layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.BASELINE
).addComponent(jb_search
)
						.addComponent(jLabel1
).addComponent(roomNum
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
,
								javax
.swing
.GroupLayout
.DEFAULT_SIZE
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
))
				.addGap(18, 18, 18)
				.addComponent(jScrollPane1
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
, 216,
						javax
.swing
.GroupLayout
.PREFERRED_SIZE
)
				.addPreferredGap(javax
.swing
.LayoutStyle
.ComponentPlacement
.RELATED
, 20, Short
.MAX_VALUE
)
				.addGroup(layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.BASELINE
).addComponent(jb_delete
)
						.addComponent(jb_exit
))
				.addGap(27, 27, 27)));
		pack();
	}
	private void jb_deleteActionPerformed(java
.awt
.event
.ActionEvent evt
) {
		int row 
= this.table
.getSelectedRow();
		String member 
= (String
) this.table
.getValueAt(row
, 1);
		if (StringUtil
.isEmpty(member
)) {
			JOptionPane
.showMessageDialog(null
, "请选择要删除的记录!");
			return;
		}
		int n 
= JOptionPane
.showConfirmDialog(null
, "确定要删除这条记录么");
		if (n 
== 0) {
			Connection con 
= null
;
			try {
				con 
= dmutil
.getCon();
				Room room 
= new Room(member
);
				int deleteNum 
= roomdao
.roomDelete(con
, room
);
				if (deleteNum 
== 1) {
					JOptionPane
.showMessageDialog(null
, "删除成功");
					this.roomNum
.setText("");
					this.fillTable(new Room());
				} else {
					JOptionPane
.showMessageDialog(null
, "删除失败");
				}
			} catch (Exception e
) {
				JOptionPane
.showMessageDialog(null
, "删除失败");
				e
.printStackTrace();
			} finally {
				try {
					dmutil
.closeCon(con
);
				} catch (Exception e
) {
					e
.printStackTrace();
				}
			}
		}
	}
	private void jb_exitActionPerformed(java
.awt
.event
.ActionEvent evt
) {
		int a 
= JOptionPane
.showConfirmDialog(null
, "确认要退出?");
		if (a 
== 0) {
			this.dispose();
		}
	}
	private void jb_searchActionPerformed(java
.awt
.event
.ActionEvent evt
) {
		String member 
= roomNum
.getText();
		Room room 
= new Room(member
);
		this.fillTable(room
);
	}
}
 
RoomManagerInterFrm.java
 
package com
.sjsq
.view
;
import java
.sql
.Connection
;
import java
.sql
.ResultSet
;
import java
.util
.Vector
;
import javax
.swing
.JOptionPane
;
import javax
.swing
.table
.DefaultTableModel
;
import javax
.swing
.JTextField
;
import javax
.swing
.JLabel
;
import javax
.swing
.JPanel
;
import javax
.swing
.JScrollPane
;
import javax
.swing
.JTable
;
import com
.sjsq
.dao
.RoomDao
;
import com
.sjsq
.model
.Room
;
import com
.sjsq
.util
.DMUtil
;
public class RoomManagerInterFrm extends javax.swing.JInternalFrame {
	private JTextField idTxt
;
	private JLabel jLabel1
;
	private JLabel jLabel2
;
	private JLabel jLabel3
;
	private JLabel jLabel4
;
	private JPanel jPanel1
;
	private JScrollPane jScrollPane1
;
	private javax
.swing
.JButton jb_exit
;
	private javax
.swing
.JButton jb_modify
;
	private javax
.swing
.JButton jb_search
;
	private JTextField roomNum
;
	private JTextField roomleader
;
	private JTextField roomnumber
;
	private JTable table
;
	DMUtil dmutil 
= new DMUtil();
	RoomDao roomdao 
= new RoomDao();
	public RoomManagerInterFrm() {
		initComponents();
		this.setLocation(200, 50);
		this.fillTable(new Room());
	}
	private void fillTable(Room room
) {
		DefaultTableModel dtm 
= (DefaultTableModel
) table
.getModel();
		dtm
.setRowCount(0);
		Connection con 
= null
;
		try {
			con 
= dmutil
.getCon();
			ResultSet rs 
= roomdao
.roomList(con
, room
);
			while (rs
.next()) {
				Vector v 
= new Vector();
				v
.add(rs
.getString("id"));
				v
.add(rs
.getString("member"));
				v
.add(rs
.getString("leader"));
				dtm
.addRow(v
);
			}
		} catch (Exception e
) {
			e
.printStackTrace();
		} finally {
			try {
				dmutil
.closeCon(con
);
			} catch (Exception e
) {
				e
.printStackTrace();
			}
		}
	}
	private void initComponents() {
		jLabel1 
= new JLabel();
		roomNum 
= new JTextField();
		jb_search 
= new javax.swing.JButton();
		jScrollPane1 
= new JScrollPane();
		table 
= new JTable();
		jPanel1 
= new JPanel();
		jLabel2 
= new JLabel();
		idTxt 
= new JTextField();
		jLabel3 
= new JLabel();
		roomnumber 
= new JTextField();
		jb_modify 
= new javax.swing.JButton();
		jb_exit 
= new javax.swing.JButton();
		jLabel4 
= new JLabel();
		roomleader 
= new JTextField();
		setClosable(true);
		setIconifiable(true);
		setTitle("宿舍信息修改");
		jLabel1
.setText("寝室号:");
		jb_search
.setText("查询");
		jb_search
.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java
.awt
.event
.ActionEvent evt
) {
				jb_searchActionPerformed(evt
);
			}
		});
		table
.setModel(new javax.swing.table.DefaultTableModel(new Object[][] {
		}, new String[] { "编号", "寝室号", "寝室长" }) {
			boolean[] canEdit 
= new boolean[] { false, false, false };
			public boolean isCellEditable(int rowIndex
, int columnIndex
) {
				return canEdit
[columnIndex
];
			}
		});
		table
.addMouseListener(new java.awt.event.MouseAdapter() {
			public void mousePressed(java
.awt
.event
.MouseEvent evt
) {
				tableMousePressed(evt
);
			}
		});
		jScrollPane1
.setViewportView(table
);
		jPanel1
.setBorder(javax
.swing
.BorderFactory
.createTitledBorder("表单操作"));
		jLabel2
.setText("编号:");
		idTxt
.setEditable(false);
		jLabel3
.setText("寝室号:");
		jb_modify
.setText("修改");
		jb_modify
.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java
.awt
.event
.ActionEvent evt
) {
				jb_modifyActionPerformed(evt
);
			}
		});
		jb_exit
.setText("退出");
		jb_exit
.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java
.awt
.event
.ActionEvent evt
) {
				jb_exitActionPerformed(evt
);
			}
		});
		jLabel4
.setText("寝室长:");
		javax
.swing
.GroupLayout jPanel1Layout 
= new javax.swing.GroupLayout(jPanel1
);
		jPanel1
.setLayout(jPanel1Layout
);
		jPanel1Layout
.setHorizontalGroup(jPanel1Layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.LEADING
)
				.addGroup(jPanel1Layout
.createSequentialGroup().addGap(39, 39, 39).addComponent(jb_modify
)
						.addPreferredGap(javax
.swing
.LayoutStyle
.ComponentPlacement
.RELATED
, 162, Short
.MAX_VALUE
)
						.addComponent(jb_exit
).addGap(64, 64, 64))
				.addGroup(jPanel1Layout
.createSequentialGroup().addGap(21, 21, 21)
						.addGroup(jPanel1Layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.TRAILING
)
								.addComponent(jLabel4
).addComponent(jLabel2
))
						.addPreferredGap(javax
.swing
.LayoutStyle
.ComponentPlacement
.RELATED
)
						.addGroup(jPanel1Layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.LEADING
, false)
								.addComponent(roomleader
)
								.addComponent(idTxt
, javax
.swing
.GroupLayout
.DEFAULT_SIZE
, 92, Short
.MAX_VALUE
))
						.addGap(18, 18, 18).addComponent(jLabel3
).addGap(10, 10, 10)
						.addComponent(roomnumber
, javax
.swing
.GroupLayout
.DEFAULT_SIZE
, 116, Short
.MAX_VALUE
)
						.addGap(62, 62, 62)));
		jPanel1Layout
.setVerticalGroup(jPanel1Layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.LEADING
)
				.addGroup(javax
.swing
.GroupLayout
.Alignment
.TRAILING
, jPanel1Layout
.createSequentialGroup()
						.addGap(19, 19, 19)
						.addGroup(jPanel1Layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.BASELINE
)
								.addComponent(jLabel2
)
								.addComponent(idTxt
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
,
										javax
.swing
.GroupLayout
.DEFAULT_SIZE
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
)
								.addComponent(jLabel3
).addComponent(roomnumber
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
,
										javax
.swing
.GroupLayout
.DEFAULT_SIZE
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
))
						.addGap(33, 33, 33)
						.addGroup(jPanel1Layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.BASELINE
)
								.addComponent(jLabel4
).addComponent(roomleader
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
,
										javax
.swing
.GroupLayout
.DEFAULT_SIZE
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
))
						.addPreferredGap(javax
.swing
.LayoutStyle
.ComponentPlacement
.RELATED
, 60, Short
.MAX_VALUE
)
						.addGroup(jPanel1Layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.BASELINE
)
								.addComponent(jb_modify
).addComponent(jb_exit
))
						.addContainerGap()));
		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(41, 41, 41).addComponent(jLabel1
).addGap(18, 18, 18)
						.addComponent(roomNum
, javax
.swing
.GroupLayout
.DEFAULT_SIZE
, 173, Short
.MAX_VALUE
)
						.addPreferredGap(javax
.swing
.LayoutStyle
.ComponentPlacement
.UNRELATED
).addComponent(jb_search
)
						.addGap(80, 80, 80))
				.addGroup(layout
.createSequentialGroup().addContainerGap()
						.addGroup(layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.TRAILING
, false)
								.addComponent(jPanel1
, javax
.swing
.GroupLayout
.Alignment
.LEADING
, 0,
										javax
.swing
.GroupLayout
.DEFAULT_SIZE
, Short
.MAX_VALUE
)
								.addComponent(jScrollPane1
, javax
.swing
.GroupLayout
.Alignment
.LEADING
,
										javax
.swing
.GroupLayout
.DEFAULT_SIZE
, 379, Short
.MAX_VALUE
))
						.addContainerGap(javax
.swing
.GroupLayout
.DEFAULT_SIZE
, Short
.MAX_VALUE
)));
		layout
.setVerticalGroup(layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.LEADING
).addGroup(layout
				
.createSequentialGroup().addGap(18, 18, 18)
				.addGroup(layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.BASELINE
).addComponent(jLabel1
)
						.addComponent(jb_search
).addComponent(roomNum
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
,
								javax
.swing
.GroupLayout
.DEFAULT_SIZE
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
))
				.addPreferredGap(javax
.swing
.LayoutStyle
.ComponentPlacement
.RELATED
)
				.addComponent(jScrollPane1
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
, 111,
						javax
.swing
.GroupLayout
.PREFERRED_SIZE
)
				.addGap(18, 18, 18).addComponent(jPanel1
, javax
.swing
.GroupLayout
.DEFAULT_SIZE
,
						javax
.swing
.GroupLayout
.DEFAULT_SIZE
, Short
.MAX_VALUE
)
				.addContainerGap()));
		pack();
	}
	private void jb_searchActionPerformed(java
.awt
.event
.ActionEvent evt
) {
		String member 
= roomNum
.getText();
		Room room 
= new Room(member
);
		this.fillTable(room
);
	}
	private void jb_modifyActionPerformed(java
.awt
.event
.ActionEvent evt
) {
		String roomNumber 
= roomnumber
.getText();
		String roomLeader 
= roomleader
.getText();
		String id 
= idTxt
.getText();
		Connection con 
= null
;
		try {
			con 
= dmutil
.getCon();
			Room room 
= new Room(id
, roomNumber
, roomLeader
);
			int a 
= roomdao
.roomModify(con
, room
);
			if (a 
== 1) {
				JOptionPane
.showMessageDialog(null
, "修改成功!");
				resetValue();
				this.fillTable(new Room());
				return;
			} else {
				JOptionPane
.showMessageDialog(null
, "修改失败!");
			}
		} catch (Exception e
) {
			JOptionPane
.showMessageDialog(null
, "修改失败!");
			e
.printStackTrace();
		}
	}
	public void resetValue() {
		roomnumber
.setText("");
		roomleader
.setText("");
		idTxt
.setText("");
	}
	private void jb_exitActionPerformed(java
.awt
.event
.ActionEvent evt
) {
		int result 
= JOptionPane
.showConfirmDialog(null
, "是否退出系统");
		if (result 
== 0) {
			this.dispose();
		}
	}
	private void tableMousePressed(java
.awt
.event
.MouseEvent evt
) {
		int row 
= table
.getSelectedRow();
		idTxt
.setText(table
.getValueAt(row
, 0) + "");
		roomnumber
.setText(table
.getValueAt(row
, 1) + "");
		roomleader
.setText(table
.getValueAt(row
, 2) + "");
	}
}
 
RoomSearchInterFrm.java
 
package com
.sjsq
.view
;
import java
.sql
.Connection
;
import java
.sql
.ResultSet
;
import java
.util
.Vector
;
import javax
.swing
.table
.DefaultTableModel
;
import javax
.swing
.JLabel
;
import javax
.swing
.JScrollPane
;
import javax
.swing
.JButton
;
import javax
.swing
.JTextField
;
import javax
.swing
.JTable
;
import com
.sjsq
.dao
.RoomDao
;
import com
.sjsq
.model
.Room
;
import com
.sjsq
.util
.DMUtil
;
public class RoomSearchInterFrm extends javax.swing.JInternalFrame {
	private JLabel jLabel1
;
	private JScrollPane jScrollPane1
;
	private JButton jb_search
;
	private JTextField roomNumTxt
;
	private JTable table
;
	DMUtil dmutil 
= new DMUtil();
	RoomDao roomdao 
= new RoomDao();
	public RoomSearchInterFrm() {
		initComponents();
		this.setLocation(200, 50);
	}
	private void fillTable(Room room
) {
		DefaultTableModel dtm 
= (DefaultTableModel
) table
.getModel();
		dtm
.setRowCount(0);
		Connection con 
= null
;
		try {
			con 
= dmutil
.getCon();
			ResultSet rs 
= roomdao
.roomList(con
, room
);
			while (rs
.next()) {
				Vector v 
= new Vector();
				v
.add(rs
.getString("id"));
				v
.add(rs
.getString("member"));
				v
.add(rs
.getString("leader"));
				dtm
.addRow(v
);
			}
		} catch (Exception e
) {
			e
.printStackTrace();
		} finally {
			try {
				dmutil
.closeCon(con
);
			} catch (Exception e
) {
				e
.printStackTrace();
			}
		}
	}
	private void initComponents() {
		jLabel1 
= new JLabel();
		roomNumTxt 
= new JTextField();
		jb_search 
= new JButton();
		jScrollPane1 
= new JScrollPane();
		table 
= new JTable();
		setClosable(true);
		setIconifiable(true);
		setTitle("寝室查询");
		jLabel1
.setText("寝室号:");
		jb_search
.setText("查询");
		jb_search
.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java
.awt
.event
.ActionEvent evt
) {
				jb_searchActionPerformed(evt
);
			}
		});
		table
.setModel(new javax.swing.table.DefaultTableModel(new Object[][] {
		}, new String[] { "编号", "寝室号", "寝室长" }) {
			boolean[] canEdit 
= new boolean[] { false, false, false };
			public boolean isCellEditable(int rowIndex
, int columnIndex
) {
				return canEdit
[columnIndex
];
			}
		});
		jScrollPane1
.setViewportView(table
);
		javax
.swing
.GroupLayout layout 
= new javax.swing.GroupLayout(getContentPane());
		getContentPane().setLayout(layout
);
		layout
.setHorizontalGroup(layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.LEADING
).addGroup(layout
				
.createSequentialGroup()
				.addGroup(layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.LEADING
).addGroup(layout
						
.createSequentialGroup().addGap(46, 46, 46).addComponent(jLabel1
).addGap(28, 28, 28)
						.addComponent(roomNumTxt
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
, 132,
								javax
.swing
.GroupLayout
.PREFERRED_SIZE
)
						.addGap(18, 18, 18).addComponent(jb_search
))
						.addGroup(layout
.createSequentialGroup().addContainerGap().addComponent(jScrollPane1
,
								javax
.swing
.GroupLayout
.PREFERRED_SIZE
, 379, javax
.swing
.GroupLayout
.PREFERRED_SIZE
)))
				.addContainerGap(javax
.swing
.GroupLayout
.DEFAULT_SIZE
, Short
.MAX_VALUE
)));
		layout
.setVerticalGroup(layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.LEADING
).addGroup(layout
				
.createSequentialGroup().addGap(23, 23, 23)
				.addGroup(layout
.createParallelGroup(javax
.swing
.GroupLayout
.Alignment
.BASELINE
).addComponent(jb_search
)
						.addComponent(roomNumTxt
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
,
								javax
.swing
.GroupLayout
.DEFAULT_SIZE
, javax
.swing
.GroupLayout
.PREFERRED_SIZE
)
						.addComponent(jLabel1
))
				.addGap(18, 18, 18)
				.addComponent(jScrollPane1
, javax
.swing
.GroupLayout
.DEFAULT_SIZE
, 292, Short
.MAX_VALUE
)
				.addContainerGap()));
		pack();
	}
	private void jb_searchActionPerformed(java
.awt
.event
.ActionEvent evt
) {
		String member 
= roomNumTxt
.getText();
		Room room 
= new Room(member
);
		this.fillTable(room
);
	}
}
 
四、其他
 
1.其他系统实现
 
Java+Swing实现仓库管理系统 Java+Swing实现学生信息管理系统
 
2.获取源码
 
请联系QQ:3079118617