JAVA实验报告.docx_第1页
JAVA实验报告.docx_第2页
JAVA实验报告.docx_第3页
JAVA实验报告.docx_第4页
JAVA实验报告.docx_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

江苏科技大学计算机科学与工程学院 Java 实 验 报 告 学号:1141904204 姓名:袁慧君 专业:软件工程 目录一学生门户登陆系统(一)主要类的设计(二)功能分析(三)功能图(四)源程序代码与运行窗口登陆界面注册界面用户界面二主界面与数据库的交互需求分析概念设计三操作体会与小结一学生门户登陆系统主要类的设计加载 JDBC驱动程序使用Class.forName()语法:Class.forName(驱动程序名称)使用DriverManager.registerDriver()DriverManager.registerDriver(new sql.jdbc.driver.SqlDriver();DriverManager类的Connection接口,Statement接口,ResultSet接口功能分析实现从登陆界面进入到主界面,然后通过控件与数据库连接,从而实现登陆,注册,添加纪录等功能。功能图 打开登陆界面 注册界面用户界面与数据库进行交互源程序代码与运行窗口登陆界面源代码package Login_sql;import javax.swing.JOptionPane;public class login extends javax.swing.JFrame final String username=abc; final String passwd=123; public login() initComponents(); SuppressWarnings(unchecked) / private void initComponents() jLabel1 = new javax.swing.JLabel(); jLabel2 = new javax.swing.JLabel(); jLabel3 = new javax.swing.JLabel(); txt_username = new javax.swing.JTextField(); txt_passwd = new javax.swing.JPasswordField(); btn_sure = new javax.swing.JButton(); btn_cancel = new javax.swing.JButton(); setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); jLabel1.setFont(new java.awt.Font(宋体, 0, 24); jLabel1.setText(学生选课系统); jLabel2.setText(用户名); jLabel3.setText(密码); txt_username.setToolTipText(请输入用户名!); txt_passwd.setToolTipText(请输入密码!); btn_sure.setText(确定); btn_sure.addMouseListener(new java.awt.event.MouseAdapter() public void mouseClicked(java.awt.event.MouseEvent evt) btn_sureMouseClicked(evt); ); btn_cancel.setText(退出); btn_cancel.addMouseListener(new java.awt.event.MouseAdapter() public void mouseClicked(java.awt.event.MouseEvent evt) btn_cancelMouseClicked(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() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) .addGroup(layout.createSequentialGroup() .addGap(49, 49, 49) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) .addComponent(jLabel3) .addComponent(jLabel2) .addGap(34, 34, 34) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false) .addGroup(layout.createSequentialGroup() .addComponent(jLabel1) .addGap(36, 36, 36) .addComponent(txt_username, javax.swing.GroupLayout.DEFAULT_SIZE, 180, Short.MAX_VALUE) .addComponent(txt_passwd) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() .addGap(72, 72, 72) .addComponent(btn_sure) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(btn_cancel) .addContainerGap(101, Short.MAX_VALUE) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGap(27, 27, 27) .addComponent(jLabel1) .addGap(50, 50, 50) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jLabel2) .addComponent(txt_username, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(44, 44, 44) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel3) .addComponent(txt_passwd, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 75, Short.MAX_VALUE) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(btn_cancel) .addComponent(btn_sure) .addGap(62, 62, 62) ); pack(); / Private void btn_sureMouseClicked(java.awt.event.MouseEvent evt) if(username.equals(txt_username.getText()&passwd.equals(txt_passwd.getText() main1 a=new main1(); a.show(); this.hide(); else JOptionPane.showMessageDialog(rootPane, Error); Private void btn_cancelMouseClicked(java.awt.event.MouseEvent evt) System.exit(0); / TODO add your handling code here: public static void main(String args) java.awt.EventQueue.invokeLater(new Runnable() public void run() new login().setVisible(true); ); / Variables declaration - do not modify private javax.swing.JButton btn_cancel; private javax.swing.JButton btn_sure; private javax.swing.JLabel jLabel1; private javax.swing.JLabel jLabel2; private javax.swing.JLabel jLabel3; private javax.swing.JPasswordField txt_passwd; private javax.swing.JTextField txt_username; / End of variables declaration 界面注册界面源代码Java注册界面设计package test;import java.awt.Component;import java.awt.Dimension;import java.awt.Font;import java.awt.GridBagConstraints;import java.awt.GridBagLayout;import java.awt.Toolkit;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.BorderFactory;import javax.swing.Box;import javax.swing.ButtonGroup;import javax.swing.JButton;import javax.swing.JComboBox;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;import javax.swing.border.Border;import java.util.Vector;public class Register_GUI public Register_GUI() RegisterFrame rf = new RegisterFrame();rf.setVisible(true);public static void main(String args) new Register_GUI();class RegisterFrame extends JFrame / 框架类/* * */private static final long serialVersionUID = -3779096743730354383L;private Toolkit tool;public RegisterFrame() setTitle(用户注册);tool = Toolkit.getDefaultToolkit();Dimension ds = tool.getScreenSize();int w = ds.width;int h = ds.height;setBounds(w - 300) / 2, (h - 300) / 2, 300, 300);setResizable(false);RegisterPanel rp = new RegisterPanel(this);add(rp);class RegisterPanel extends JPanel implements ActionListener / 容器类/* * */private static final long serialVersionUID = -7078727217525013349L;private JLabel titlelabel, namelabel, pwdlabel1, pwdlabel2, sexlabel,agelabel, classlabel;private JTextField namefield, agefield;private JPasswordField pwdfield1, pwdfield2;private JButton commitbtn, resetbtn, cancelbtn;private JRadioButton rbtn1, rbtn2;private JComboBox combo;private Vector v;private GridBagLayout gbl;private GridBagConstraints gbc;private JPanel panel;private Box box;private JFrame iframe;RegisterPanel(JFrame frame) iframe = frame;titlelabel = new JLabel(用户注册);titlelabel.setFont(new Font(华文彩云, Font.BOLD, 24);namelabel = new JLabel(用 户 名:);pwdlabel1 = new JLabel(密 码:);pwdlabel2 = new JLabel(确认密码:);sexlabel = new JLabel(性 别:);agelabel = new JLabel(年 龄:);classlabel = new JLabel(所属班级:);namefield = new JTextField(16);pwdfield1 = new JPasswordField(16);pwdfield1.setEchoChar(*);pwdfield2 = new JPasswordField(16);pwdfield2.setEchoChar(*);agefield = new JTextField(16);rbtn1 = new JRadioButton(男);rbtn2 = new JRadioButton(女);rbtn1.setSelected(true);ButtonGroup bg = new ButtonGroup();bg.add(rbtn1);bg.add(rbtn2);v = new Vector();v.add(ACCP1);v.add(ACCP2);v.add(软件开发);v.add(网络编程);v.add(计算机应用);combo = new JComboBox(v);commitbtn = new JButton(注册);commitbtn.addActionListener(this);resetbtn = new JButton(重置);resetbtn.addActionListener(this);cancelbtn = new JButton(取消);cancelbtn.addActionListener(this);panel = new JPanel();panel.add(rbtn1);panel.add(rbtn2);Border border = BorderFactory.createTitledBorder();panel.setBorder(border);box = Box.createHorizontalBox();box.add(commitbtn);box.add(Box.createHorizontalStrut(30);box.add(resetbtn);box.add(Box.createHorizontalStrut(30);box.add(cancelbtn);gbl = new GridBagLayout();setLayout(gbl);gbc = new GridBagConstraints();addCompnent(titlelabel, 0, 0, 4, 1);add(Box.createVerticalStrut(20);gbc.anchor = GridBagConstraints.CENTER;gbc.fill = GridBagConstraints.HORIZONTAL;gbc.weightx = 0;gbc.weighty = 100;addCompnent(namelabel, 0, 1, 1, 1);addCompnent(namefield, 1, 1, 4, 1);addCompnent(pwdlabel1, 0, 2, 1, 1);addCompnent(pwdfield1, 1, 2, 4, 1);addCompnent(pwdlabel2, 0, 3, 1, 1);addCompnent(pwdfield2, 1, 3, 4, 1);addCompnent(sexlabel, 0, 4, 1, 1);addCompnent(panel, 1, 4, 1, 1);gbc.anchor = GridBagConstraints.EAST;gbc.fill = GridBagConstraints.NONE;addCompnent(agelabel, 2, 4, 1, 1);gbc.fill = GridBagConstraints.HORIZONTAL;addCompnent(agefield, 3, 4, 2, 1);addCompnent(classlabel, 0, 5, 4, 1);addCompnent(combo, 1, 5, 4, 1);gbc.anchor = GridBagConstraints.CENTER;gbc.fill = GridBagConstraints.NONE;addCompnent(box, 0, 6, 4, 1);public void addCompnent(Component c, int x, int y, int w, int h) gbc.gridx = x;gbc.gridy = y;gbc.gridwidth = w;gbc.gridheight = h;add(c, gbc);public void actionPerformed(ActionEvent e) Register rinfo = new Register();if (e.getSource() = commitbtn) = namefield.getText().trim();rinfo.password = new String(pwdfield1.getPassword();rinfo.sex = rbtn1.isSelected() ? 男 : 女;rinfo.age = agefield.getText().trim();rinfo.nclass = combo.getSelectedItem().toString();if (.length() = 0) JOptionPane.showMessageDialog(null, t 用户名不能为空);return;if (rinfo.password.length() = 0) JOptionPane.showMessageDialog(null, t 密码不能为空 );return;if (!rinfo.password.equals(new String(pwdfield2.getPassword() JOptionPane.showMessageDialog(null, 密码两次输入不一致,请重新输入);return;if (rinfo.age.length() = 0) JOptionPane.showMessageDialog(null, t 年龄不能为空);return;int age = Integer.parseInt(rinfo.age);if (age 100) JOptionPane.showMessageDialog(null, t 年龄输入不合法);return;JOptionPane.showMessageDialog(null, t 注册成功! + n 姓名:++ n 性别:+rinfo.sex+n 年龄:+rinfo.age+n 班级: +rinfo.nclass);if (e.getSource() = resetbtn) namefield.setText();pwdfield1.setText();pwdfield2.setText();rbtn1.isSelected();agefield.setText();combo.setSelectedIndex(0);if (e.getSource() = cancelbtn) iframe.dispose();class Register String name;String password;String sex;String age;String nclass;界面用户界面源代码package Login_sql;import java.util.logging.Level;import java.util.logging.Logger;import javax.swing.JOptionPane;import java.sql.*;public class main1 extends javax.swing.JFrame private String rowData; public main1() initComponents(); SuppressWarnings(unchecked) / private void initComponents() jLabel1 = new javax.swing.JLabel(); jLabel2 = new javax.swing.JLabel(); jLabel3 = new javax.swing.JLabel(); jLabel4 = new javax.swing.JLabel(); Btn_add = new javax.swing.JButton(); Stuid = new javax.swing.JTextField(); StuName = new javax.swing.JTextField(); StuClass = new javax.swing.JTextField(); stusex = new javax.swing.JTextField(); jLabel5 = new javax.swing.JLabel(); btn_delete = new javax.swing.JButton(); setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); jLabel1.setText(学号); jLabel2.setText(姓名); jLabel3.setText(性别); jLabel4.setText(班级); Btn_add.setText(增加); Btn_add.addMouseListener(new java.awt.event.MouseAdapter() public void mouseClicked(java.awt.event.MouseEvent evt) Btn_addMouseClicked(evt); ); jLabel5.setFont(new java.awt.Font(宋体, 0, 24); jLabel5.setText(学生信息); btn_delete.setText(删除); btn_delete.addMouseListener(new java.awt.event.MouseAdapter() public void mouseClicked(java.awt.event.MouseEvent evt) btn_deleteMouseClicked(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(120, 120, 120) .addComponent(jLabel5) .addContainerGap(101, Short.MAX_VALUE) .addGroup(layout.createSequentialGroup() .addGap(39, 39, 39) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() .addGap(8, 8, 8) .addComponent(Btn_add) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 87, Short.MAX_VALUE) .addComponent(btn_delete) .addGap(69, 69, 69) .addGroup(layout.createSequentialGroup() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jLabel3) .addComponent(jLabel1) .addComponent(jLabel2) .addComponent(jLabel4) .addGap(29, 29, 29) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(stusex, javax.swing.GroupLayout.DEFAULT_SIZE, 178, Short.MAX_VALUE) .addComponent(StuClass, javax.swing.GroupLayout.DEFAULT_SIZE, 178, Short.MAX_VALUE) .addComponent(StuName, javax.swing.GroupLayout.DEFAULT_SIZE, 178, Short.MAX_VALUE) .addComponent(Stuid, javax.swing.GroupLayout.DEFAULT_SIZE, 178, Short.MAX_VALUE) .addGap(47, 47, 47) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGap(18, 18, 18) .addComponent(jLabel5) .addGap(29, 29, 29) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel1) .addComponent(Stuid, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(30, 30, 30) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel2) .addComponent(StuName, 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(jLa

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论