资源描述
学生管理系统(图形界面)——Java
源代码:
package exp10;
import javax。swing。JFrame;
public class MainClass {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
JFrame myFrame=new JFrame(”学生成绩管理系统”);
myFrame。setLocation(300,100);
//
myFrame。setContentPane(new LoginPane(myFrame));
myFrame。pack();
myFrame。setVisible(true);
}
}
package exp10;
import java.sql。Connection;
import java。sql。DriverManager;
import java。sql。ResultSet;
import java。sql。SQLException;
import java。sql.Statement;
public class DataBase {
Connection conn=null;
public Connection getConn(){
return this.conn;
}
public void setConn(Connection conn){
this。conn=conn;
}
public boolean getConnection(){
String url=”jdbc:mysql://localhost:3306/ScoreManagement?user=root&password=123”;
try{
Class。forName("org。gjt。mm。mysql.Driver”);
conn=DriverManager.getConnection(url);
return true;
}catch(SQLException e){
System。out。println(e。getMessage());
return false;
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return false;
}
}
public ResultSet executeQuery(String sql){
ResultSet rs=null;
Statement stmt=null;
if(conn==null){
this。getConnection();}
try{
stmt=conn.createStatement();
rs=stmt。executeQuery(sql);
return rs;
}catch(SQLException e){
return null;
}
}
public int executeUpdate(String sql){
Statement stmt=null;
int linecount=0;
if(conn==null){
this。getConnection();}
try{
stmt=conn.createStatement();
linecount=stmt。executeUpdate(sql);
}catch(SQLException e){}
return linecount;
}
}
package exp10;
import java.awt。event。ActionEvent;
import java.awt。event.ActionListener;
import java.sql。ResultSet;
import java。sql。SQLException;
import javax.swing。Box;
import javax。swing.ButtonGroup;
import javax.swing。JButton;
import javax。swing。JFrame;
import javax。swing.JLabel;
import javax。swing。JPanel;
import javax。swing。JPasswordField;
import javax。swing.JRadioButton;
import javax。swing。JTextField;
public class LoginPane extends JPanel implements ActionListener{
/**
*
*/
private static final long serialVersionUID = 1L;
JFrame myFrame;
JLabel lab_username=new JLabel("用户名”);
JTextField jt_username=new JTextField(20);
JLabel lab_password=new JLabel(”密 码”);
JPasswordField jt_pwd=new JPasswordField(20);
JRadioButton jrb_manager=new JRadioButton(”管理员");
JRadioButton jrb_teacher=new JRadioButton(”教师”);
JRadioButton jrb_student=new JRadioButton("学生”);
public LoginPane(JFrame myFrame){
this。myFrame=myFrame;
this.init();
}
public void init(){
Box box_user=Box.createHorizontalBox();
box_user.add(lab_username);
box_user。add(Box。createHorizontalStrut(20));
box_user。add(jt_username);
jt_pwd.setEchoChar(’#');
Box box_pwd=Box.createHorizontalBox();
box_pwd。add(lab_password);
box_pwd。add(Box。createHorizontalStrut(20));
box_pwd。add(jt_pwd);
ButtonGroup bg=new ButtonGroup();
bg.add(jrb_manager);
bg.add(jrb_teacher);
bg。add(jrb_student);
Box box_role=Box。createHorizontalBox();
box_role。add(jrb_manager);
box_role。add(Box。createHorizontalStrut(5));
box_role。add(jrb_teacher);
box_role。add(Box。createHorizontalStrut(5));
box_role.add(jrb_student);
JButton jb_login=new JButton("登陆”);
JButton jb_exit=new JButton("退出”);
Box box_button=Box.createHorizontalBox();
box_button。add(jb_login);
box_button。add(Box。createHorizontalStrut(30));
box_button.add(jb_exit);
jb_login.addActionListener(this);
jb_exit。addActionListener(this);
jb_login。setActionCommand("login”);
jb_exit.setActionCommand(”exit”);
Box box_login=Box.createVerticalBox();
box_login.add(box_user);
box_login.add(Box.createHorizontalStrut(10));
box_login.add(box_pwd);
box_login。add(Box.createHorizontalStrut(10));
box_login。add(box_role);
box_login。add(Box。createHorizontalStrut(10));
box_login。add(box_button);
this。add(box_login);
}
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if(e。getActionCommand().equals("login")){
String username=this。jt_username.getText()。trim();
String pwd=String.valueOf(this。jt_pwd。getPassword());
DataBase db=new DataBase();
String sql=”select * from User where name=’”+username+”’ and password='"+pwd+"'";
ResultSet rs=db。executeQuery(sql);
if(rs!=null){
this。myFrame。setContentPane(new ManagerPane(this.myFrame));
myFrame.setSize(800,500);
this。myFrame。validate();
}
}else{
this。myFrame。dispose();
}
}
}
package exp10;
import java.awt。event.ActionEvent;
import java.awt.event。ActionListener;
import java。awt.event.ItemEvent;
import java。awt。event.ItemListener;
import javax。swing。JFrame;
import javax.swing。JMenu;
import javax。swing。JMenuBar;
import javax.swing。JMenuItem;
import javax。swing.JPanel;
import javax。swing。JTable;
public class ManagerPane extends JPanel implements ActionListener{
JFrame myFrame;
public ManagerPane(JFrame myFrame){
this.myFrame=myFrame;
this。init();
}
public void init(){
JMenuBar menu=new JMenuBar();
JMenu jm_user=new JMenu(”人员管理”);
JMenuItem jmi_add=new JMenuItem(”增加人员”);
JMenuItem jmi_search=new JMenuItem("查询人员");
jmi_add.addActionListener(this);
jmi_add。setActionCommand(”addUser");
jmi_search。addActionListener(this);
jmi_search。setActionCommand(”searchUser”);
jm_user。add(jmi_add);
jm_user.add(jmi_search);
JMenu jm_exit=new JMenu(”退出");
menu。add(jm_user);
menu。add(jm_exit);
this。add(menu,0);
}
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto—generated method stub
if(e。getActionCommand()。equals("searchUser”)){
this。myFrame.setContentPane(new SearchUserPane(this。myFrame));
this。myFrame.validate();
}
}
}
package exp10;
import java.awt。event.ActionEvent;
import java.awt。event。ActionListener;
import java。sql.ResultSet;
import java。sql。SQLException;
import java.util。Vector;
import javax。swing。Box;
import javax。swing.JButton;
import javax。swing.JFrame;
import javax.swing。JLabel;
import javax。swing。JPanel;
import javax。swing。JTable;
import javax。swing。JTextField;
import javax.swing.table.DefaultTableModel;
public class SearchUserPane extends JPanel implements ActionListener {
/**
*
*/
private static final long serialVersionUID = 1L;
JFrame myFrame;
JLabel jlb_name=new JLabel("查询用户名");
JTextField jt_name=new JTextField(20);
JButton btn_search=new JButton(”查询”);
DataBase db=new DataBase();
DefaultTableModel tableModel;
JTable jt_show;
public SearchUserPane(JFrame myFrame){
this。myFrame=myFrame;
init();
}
public void init(){
Box box_user=Box.createHorizontalBox();
box_user.add(jlb_name);
box_user。add(Box.createHorizontalStrut(20));
box_user.add(jt_name);
btn_search。addActionListener(this);
box_user。add(btn_search);
String[] colname={"编号”,"姓名”,”密码”,”身份”};
tableModel=new DefaultTableModel(null,colname);
jt_show=new JTable(tableModel);
Box box_show=Box.createHorizontalBox();
box_show.add(jt_show);
ResultSet rs=db。executeQuery(”select * from User");
try {
while(rs.next()){
Vector data=new Vector();
data。add(rs。getString(”id”));
data.add(rs。getString("name”));
data.add(rs.getString(”password”));
data.add(rs。getString("role"));
tableModel。addRow(data);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e。printStackTrace();
}
Box box_search=Box.createVerticalBox();
box_search。add(box_user);
box_search.add(Box。createVerticalStrut(50));
box_search。add(box_show);
this。add(box_search);
}
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto—generated method stub
if(e。getSource()==this.btn_search){
String username=this。jt_name.getText().trim();
ResultSet rs=db.executeQuery("select * from User where name='”+username+"’");
try {
while(rs.next()){
Vector data=new Vector();
data。add(rs.getString(”id"));
data。add(rs。getString(”name"));
data。add(rs.getString(”password”));
data.add(rs。getString(”role"));
tableModel。fireTableDataChanged();
tableModel.addRow(data);
}
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
}
}
package exp10;
import javax.swing。JTable;
import javax.swing.table.DefaultTableModel;
public class UserTable extends JTable {
public UserTable(){
}
}
package exp10;
import java。sql.ResultSet;
import java。sql。ResultSetMetaData;
import java.sql.SQLException;
import java.util。Vector;
import javax.swing.table.AbstractTableModel;
public class UserTableModel extends AbstractTableModel {
ResultSet rs;
Vector tabledat;
public UserTableModel(){
DataBase db=new DataBase();
rs=db。executeQuery("select * from User”);
tabledat=new Vector();
}
@Override
public int getColumnCount() {
// TODO Auto-generated method stub
try {
ResultSetMetaData metadata=rs。getMetaData();
return metadata。getColumnCount();
} catch (SQLException e) {
// TODO Auto-generated catch block
return 0;
}
}
@Override
public int getRowCount() {
// TODO Auto—generated method stub
int rownum=0;
try {
while(rs。next()){
rownum++;
}
} catch (SQLException e) {
// TODO Auto—generated catch block
e.printStackTrace();
}
return rownum;
}
@Override
public Object getValueAt(int row, int col) {
// TODO Auto-generated method stub
try {
if(rs.absolute(row)){
return rs.getObject(col);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
}
return null;
}
}
展开阅读全文