已阅读5页,还剩127页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1. MIS_frame类package MIS_Login;import java.awt.Container;import java.awt.Cursor;import java.awt.Dimension;import java.awt.FlowLayout;import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import javax.swing.ButtonGroup;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JPasswordField;import javax.swing.JRadioButton;import javax.swing.JTextField;/* * *总 目标: * 1.一个用户名输入框,一个密码输入框 * 2.就一个登陆的按钮 * 3.加一组JRadioButton ,一个是管理员,一个是学生用户 * 4.两个超链接,一个是 忘记密码,一个是用户注册 * *用户注册: *1.。只面向的是学生用户,不对管理员开放 *2.注册的时候只有接受协议的时候,才能跳到下一步详细信息的填写。 *3.包括的信息:学号,姓名,用户名,邮箱名,密码,确认密码,(5)个基本信息,两个按钮,确认与取消 *4.学号必须是系统存在的。两次的密码必须是一致的。符合的话,给出注册成功的信息,否则给出提示信息 *5.dispose(),返回到登陆界面 * *忘记密码: *1.一个窗体,必须先填写用户名,先匹配数据库,给出提示, *2.如果存在用户名,提示信息,“已向*(邮箱),发送验证码”,释放原先的窗体,弹出一个新的窗体, *包含的内容有:用户名(不可修改),验证码,新的密码,确认密码。 *3.验证码正确,提示,否则,提示。 * * * */import Student.SubFrame.all.AllFrame_stu;import Admin.SubFrame.all.Allframe_admin;public class MIS_frame implements ActionListener public JButton b_login;public JLabel lab_username,lab_pwd;public JTextField txt_login;public JPasswordField txt_pwd;public JLabel lab_forget,lab_register;public JRadioButton b_admin_login,b_stu_login;public JPanel MIS_p1,MIS_p2,MIS_p3,MIS_p4,MIS_p5;public JFrame mis_frame;public void MIS_display()MIS_p1 = new JPanel();lab_username = new JLabel(用户名:);txt_login = new JTextField(15);MIS_p1.add(lab_username);MIS_p1.add(txt_login);MIS_p1.setLayout(new FlowLayout(FlowLayout.CENTER,0,40);MIS_p2 = new JPanel();lab_pwd = new JLabel(密 码:);txt_pwd = new JPasswordField(15);MIS_p2.add(lab_pwd);MIS_p2.add(txt_pwd);MIS_p2.setLayout(new FlowLayout(FlowLayout.CENTER,0,15);MIS_p3 = new JPanel();b_login = new JButton(登陆);MIS_p3.add(b_login);MIS_p3.setLayout(new FlowLayout(FlowLayout.CENTER,0,15);MIS_p4 = new JPanel();b_admin_login = new JRadioButton(管理员,true);b_stu_login = new JRadioButton(学生用户);ButtonGroup bg_login_button = new ButtonGroup();bg_login_button.add(b_admin_login);bg_login_button.add(b_stu_login);MIS_p4.add(b_admin_login);MIS_p4.add(b_stu_login);MIS_p4.setLayout(new FlowLayout(FlowLayout.CENTER,10,15);MIS_p5 = new JPanel();lab_forget = new JLabel(忘记密码+ );lab_register = new JLabel(注册);MIS_p5.add(lab_forget);MIS_p5.add(lab_register);MIS_p5.setLayout(new FlowLayout(FlowLayout.CENTER);lab_forget.setCursor(new Cursor(Cursor.HAND_CURSOR);lab_register.setCursor(new Cursor(Cursor.HAND_CURSOR);/ ImageIcon img = new ImageIcon(D:2013-2014课程表.png);/ JLabel imgLabel = new JLabel(img);/将背景图放在标签里。/ jf.getLayeredPane().add(imgLabel, new Integer(Integer.MIN_VALUE);/ imgLabel.setBounds(0,0,img.getIconWidth(), img.getIconHeight();/mis_frame = new JFrame();Container mis_container = mis_frame.getContentPane();mis_container.add(MIS_p1);mis_container.add(MIS_p2);mis_container.add(MIS_p4);mis_container.add(MIS_p3);mis_container.add(MIS_p5);mis_frame.setLayout(new GridLayout(5,1);mis_frame.setLocation(600, 200);mis_frame.setPreferredSize(new Dimension(500,350);mis_frame.pack();mis_frame.setVisible(true);/忘记密码鼠标监听 lab_forget.addMouseListener(new MouseAdapter() public void mouseClicked(MouseEvent e) new Forget_pwd_frame().forget_button_function(); ); /注册鼠标监听 lab_register.addMouseListener(new MouseAdapter() public void mouseClicked(MouseEvent e) System.out.println(注册!); new Register_frame().statement_useragr_frame(); ); /登陆按钮监听 b_login.addActionListener(this);/管理员登陆事件public void action_admin_login()String sql_admin_login = select * from Login_admin_info where A_no = ?;int admin_login_flag = 0;admin_login_flag = Search_sno_DB.serch_sno_from_stuDB(sql_admin_login , txt_login.getText();if(admin_login_flag = 1 )new Allframe_admin().buttonFunction();/mis_frame.dispose();txt_login.setText(null);txt_pwd.setText(null);else JOptionPane.showMessageDialog(null,登录失败,请检查用户名密码,提示,0);/学生用户登陆public void action_stu_login()String sql_admin_login = select * from Login_stu_info where Sno = ?;int stu_login_flag = 0;stu_login_flag = Search_sno_DB.serch_sno_from_stuDB(sql_admin_login , txt_login.getText();if(stu_login_flag = 1 )new AllFrame_stu().all_stu_function();txt_login.setText(null);txt_pwd.setText(null);else JOptionPane.showMessageDialog(null,登录失败,请检查用户名密码,提示,0);/监听登陆按钮public void actionPerformed(ActionEvent e)if(e.getSource().equals(b_login)/管理员登陆if(b_admin_login.isSelected()action_admin_login();/学生用户登陆else if(b_stu_login.isSelected()action_stu_login();public static void main(String args)new MIS_frame().MIS_display();2. Info_user_reg_classpackage MIS_Login;import java.awt.BorderLayout;import java.awt.Container;import java.awt.Dimension;import java.awt.FlowLayout;import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.PreparedStatement;import java.sql.SQLException;import javax.swing.*;import StudentDB.Interactive.StudentDB;public class Info_user_reg_class extends Verification_Test public JFrame info_user_reg;public JLabel lab_reg_sno,lab_reg_name,lab_reg_email,lab_reg_pwd,lab_reg_pwd_c;public JTextField txt_reg_sno,txt_reg_name,txt_reg_email;public JPasswordField txt_reg_pwd,txt_reg_pwd_c;public JButton reg_confirm,reg_cancel;public int reg_stu_info_flag = 0; /注册信息标示符。在student_info表的学号public int reg_login_info_flag = 1;/登录表里的学号public String sql_search_sno_DB = select * from Student_info where Sno = ?;public String sql_search_sno_Login = select * from Login_stu_info where sno = ?;public String sql_login_info_save = insert into Login_stu_info values(?,?,?,?);public void info_user_frame()info_user_reg = new JFrame(注册信息);lab_reg_sno = new JLabel(学 号:);lab_reg_name = new JLabel(用 户 名:);lab_reg_email = new JLabel(邮 箱:);lab_reg_pwd = new JLabel(密 码:);lab_reg_pwd_c = new JLabel(确认密码:);txt_reg_sno = new JTextField(10);txt_reg_name = new JTextField(10);txt_reg_email = new JTextField(10);txt_reg_pwd = new JPasswordField(10);txt_reg_pwd_c = new JPasswordField(10);JPanel info_reg_pb = new JPanel();reg_confirm = new JButton(确认);reg_cancel = new JButton(取消);info_reg_pb.add(reg_confirm);info_reg_pb.add(reg_cancel);JPanel info_reg_p1 = new JPanel(new FlowLayout(FlowLayout.CENTER,15,0);info_reg_p1.add(lab_reg_sno);info_reg_p1.add(txt_reg_sno);JPanel info_reg_p2 = new JPanel(new FlowLayout(FlowLayout.CENTER,15,0);info_reg_p2.add(lab_reg_name);info_reg_p2.add(txt_reg_name);JPanel info_reg_p3 = new JPanel(new FlowLayout(FlowLayout.CENTER,15,0);info_reg_p3.add(lab_reg_email);info_reg_p3.add(txt_reg_email);JPanel info_reg_p4 = new JPanel(new FlowLayout(FlowLayout.CENTER,15,0);info_reg_p4.add(lab_reg_pwd);info_reg_p4.add(txt_reg_pwd);JPanel info_reg_p5 = new JPanel(new FlowLayout(FlowLayout.CENTER,15,0);info_reg_p5.add(lab_reg_pwd_c);info_reg_p5.add(txt_reg_pwd_c);JPanel info_reg_pall = new JPanel(new GridLayout(5,1);info_reg_pall.add(info_reg_p1);info_reg_pall.add(info_reg_p2);info_reg_pall.add(info_reg_p3);info_reg_pall.add(info_reg_p4);info_reg_pall.add(info_reg_p5);info_reg_pall.setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(),用户信息);Container info_reg_container = info_user_reg.getContentPane();info_reg_container.setLayout(new BorderLayout();info_reg_container.add(info_reg_pall,BorderLayout.CENTER);info_reg_container.add(info_reg_pb,BorderLayout.SOUTH);info_user_reg.setLocation(600, 200);info_user_reg.setPreferredSize(new Dimension(500,350);info_user_reg.pack();info_user_reg.setVisible(true);/info_user_reg.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);/监听按钮reg_confirm.addActionListener(new ActionListener()SuppressWarnings(deprecation)public void actionPerformed(ActionEvent e)if(!txt_reg_name.getText().isEmpty() /* 两种情况: * 第一种是:两次的密码必须要一致 * 第二中是:返回的res_flag要为1.即代表注册成功 */if(txt_reg_pwd.getText().equals(txt_reg_pwd_c.getText()/寻找在学生管理系统中是否存在学号reg_stu_info_flag = Search_sno_DB.serch_sno_from_stuDB(sql_search_sno_DB,txt_reg_sno.getText();/寻找注册用户中是否有存在注册过的学号reg_login_info_flag = Search_sno_DB.serch_sno_from_stuDB(sql_search_sno_Login,txt_reg_sno.getText();if(reg_stu_info_flag = 1)if(reg_login_info_flag = 0)/发送邮件sendVerification(txt_reg_email.getText();/发送邮件验证码确认信息-参数是学号,传递给下一个窗体confirm_verification(txt_reg_sno.getText();elseJOptionPane.showMessageDialog(null,这个学号已经注册过!,提示, 1);else JOptionPane.showMessageDialog(null,您的学号不存在!,提示, 0);info_user_reg.dispose();else JOptionPane.showMessageDialog(null,您输入的两次密码不一致,提示, 0);txt_reg_pwd.setText(null);txt_reg_pwd_c.setText(null);else JOptionPane.showMessageDialog(null,您输入的用户名不能为空!,提示, 0););reg_cancel.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)info_user_reg.dispose(););/保存信息SuppressWarnings(deprecation)public void save_login_info()try/返回已创建的预编译的对象,PreparedStatement ps = StudentDB.getConnection(sql_login_info_save);/提交保存ps.setString(1,txt_reg_sno.getText();ps.setString(2, txt_reg_name.getText();ps.setString(3,txt_reg_email.getText();ps.setString(4, txt_reg_pwd.getText();ps.executeUpdate();JOptionPane.showMessageDialog(null,恭喜注册成功!快去登陆吧, 保存成功,JOptionPane.INFORMATION_MESSAGE);info_user_reg.dispose();catch(SQLException e_sql)Overridepublic void actionPerformed(ActionEvent e)if(e.getSource().equals(verifi_OK)if(get_veri_flag() = 1)save_login_info();else JOptionPane.showMessageDialog(null,验证失败!,提示,0);/else /JOptionPane.showMessageDialog(null,验证码不正确!,提示,0);/public static void main(String args)/new Info_user_reg_class().info_user_frame();/3. Forget_pwd_framepackage MIS_Login;import java.awt.Container;import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.PreparedStatement;import java.sql.ResultSet;import javax.swing.BorderFactory;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JTextField;import StudentDB.Interactive.StudentDB; public class Forget_pwd_frame extends Verification_Test /第一个窗体-查询的窗体public JFrame forget_frame = new JFrame(输入学号);public JLabel forget_tip_sno = new JLabel(学号: );public JTextField forget_sno = new JTextField(15);public JButton forget_OK = new JButton(确定);protected int forget_flag = 0;protected String forget_mail = null;private String sql_test = select * from Login_stu_info where Sno=?;private String original_pwd = null;public void forget_button_function()JPanel forget_p1 = new JPanel();forget_p1 .add(forget_tip_sno);forget_p1 .add(forget_sno);forget_p1 .setLayout(new FlowLayout(FlowLayout.LEFT,15,0);forget_p1 .setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(),输入学号);JPanel forget_p2 = new JPanel();forget_p2 .add(forget_OK);forget_p2 .setLayout(new FlowLayout(FlowLayout.CENTER,30,0);Container forget_c = forget_frame.getContentPane();forget_c .add(forget_p1,Center);forget_c .add(forget_p2,South);forget_frame.setLocation(600, 200);forget_frame.pack();forget_frame.setVisible(true);/info_query_frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);/* * 监听查询按钮 * * */forget_OK.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)if(!forget_sno.getText().isEmpty()forget_flag = serch_sno_from_stuDB(sql_test,forget_sno.getText();if(forget_flag = 1)/发送邮件sendVerification(forget_mail);confirm_verification(forget_sno.getText();/JOptionPane.showMessageDialog(null,验证成功!,提示,2);forget_frame.dispose();else JOptionPane.showMessageDialog(null,用户不存在,提示,0);forget_frame.dispose();elseJOptionPane.showMessageDialog(null,学号不能为空,提示,0););/寻找学号是否存在与Login表中,返回学号存在标示符,而且给邮箱地址和原始密码赋值。private int serch_sno_from_stuDB(String sql_MIS_search,String sno) int flag = 0;PreparedStatement MIS_search = StudentDB.getConnection(sql_MIS_search);tryMIS_search.setString(1,sno);MIS_search.executeQuery();ResultSet MIS_search_rs = MIS_search.getResultSet();if(MIS_search_rs.next()flag =1;forget_mail = MIS_search_rs.getString(log_email);original_pwd = MIS_search_rs.getString(log_pwd);else flag = 0;catch(Exception e)e.printStackTrace();return flag;Overridepublic void actionPerformed(ActionEvent e)if(e.getSource().equals(verifi_OK)if(get_veri_flag() = 1)new Alter_pwd_class().alter_pwd_funtion(forget_sno.getText(),original_pwd);/else /JOptionPane.showMessageDialog(null,验证码不正确!,提示,0);/public static void main(String args)/new Forget_pwd_frame().forget_button_function();/4. Alter_pwd_classpackage MIS_Login;import java.awt.BorderLayout;import java.awt.Container;import java.awt.Dimension;import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.PreparedStatement;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JPasswordField;import StudentDB.Interactive.StudentDB;public class Alter_pwd_class public JFrame alter_pwd_frame = new JFrame(修改密码);public JLabel lab_alter_pwd_ori = new JLabel(原始密码: );public JLabel lab_alter_pwd_new = new JLabel(新 密 码: );public JLabel lab_alter_pwd_again = new JLabel(确认密码: );public JPasswordField txt_alter_pwd_ori = new JPasswordField(15);public JPasswordField txt_alter_pwd_new = new JPasswordField(15);public JPasswordField txt_alter_pwd_again = new JPasswordField(15);public JButton b_alter_pwd_OK = new JButton(确定);public JButton b_alter_pwd_cancel = new JButton(取消);private String sql_alter_pwd = update Login_stu_info set log_pwd = ? where Sno = ?;/修改密码的窗体public void alter_pwd_funtion(final String sno,final String ori_pwd)JPanel alter_pwd_p1 = new JPanel(new FlowLayout(FlowLayout.CENTER,15,0);alter_pwd_p1.add(lab_alter_pwd_ori);alter_pwd_p1.add(txt_alter_pwd_ori);JPanel alter_pwd_p2 = new JPanel(new FlowLayout(FlowLayout.CENTER,15,0);alter_pwd_p2.add(lab_alter_pwd_new);alter_pwd_p2.add(txt_alter_pwd_new);JPanel alter_pwd_p3 = new JPanel(new FlowLayout(FlowLayout.CENTER,15,0);alter_pwd_p3.add(lab_alter_pwd_again);alter_pwd_p3.add(txt_alter_pwd_again);JPanel alter_pwd_pb = new JPanel();alter_pwd_pb.add(b_alter_pwd_OK);alter_pwd_pb.add(b_alter_pwd_cancel);JPanel alter_pwd_pall = new JPanel(new FlowLayout(FlowLayout.CENTER,25,20);alter_pwd_pall.add(alter_pwd_p1);alter_pwd_pall.add(alter_pwd_p2);alter_pwd_pall.add(alter_pwd_p3);/alter_p
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农村集体土地征收补偿制度研究
- 集装箱船舶载运危险货物安全问题研究
- 学校体育场馆开放情况研究
- 供水管网调度管理优化方案
- 企业人才梯队建设与发展计划
- 岩土工程勘察与地基设计实施方案
- 水库水质自动化监控与信息发布系统
- 废弃资源循环利用经济产业化项目环境影响报告书
- 土壤检测试题及答案
- 五金店销售员试题及答案
- 2025年现代农业产业园区行业当前发展现状及增长策略研究报告
- 医院感染风险评估制度
- 医院运营数据分析与改进措施
- 2025注安《化工安全》考前必背笔记
- 医美咨询培训课件
- 2025至2030中国医用级聚乳酸行业市场发展现状及竞争格局与应用领域报告
- pdca康复科课件教学课件
- 原始反射整合疗法对ADHD倾向儿童持续注意影响的实验研究
- 眼科“一科一品”护理亮点
- 自来水公司考试试题及答案
- 2025至2030中国脑深部刺激(DBS)装置行业发展趋势分析与未来投资战略咨询研究报告
评论
0/150
提交评论