摘要:注册用户程序java综合案例数据库操作odbc,注册数据库的驱动通过DriverManager获取数据库连接,通过Connection对象获取Statement对象,使用Statement执行SQL语句。。以下是我们为大家整理的,相信大家阅读完后肯定有了自己的选择吧。
package jdbc; import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.sql.*; import java.util.*; public class reguser extends JFrame { //定义窗体变量 private JButton reg; private JButton show; private JButton edit; private JButton del; private JPanel up; private JPanel down; private JLabel uptext; private JTextField user; private JTextField pass; private JLabel result; private JButton regsave=new JButton("提交注册"); private JButton editpass=new JButton("修改密码"); private Mapusermap=new HashMap(); //定义数据库变量 Statement stmt = null; Connection conn = null; ResultSet rs = null; void reg() { JDialog dialog = new JDialog(reguser.this, true ); dialog.setLayout(new GridLayout(3,2)); dialog.setTitle("用户注册"); dialog.setSize(300, 200); dialog.setLocation(50, 50); JLabel usertext=new JLabel("用户名"); JLabel passtext=new JLabel("密码"); user=new JTextField(); pass=new JTextField(); result=new JLabel(); dialog.add(usertext); dialog.add(user); dialog.add(passtext); dialog.add(pass); dialog.add(regsave); dialog.add(result); dialog.setVisible(true); } void conn() { try { // 1. 注册数据库的驱动 Class.forName("com.mysql.jdbc.Driver"); // 2.通过DriverManager获取数据库连接 String url = "jdbc:mysql://localhost:3306/test"; String username = "root"; String password = "root"; conn = DriverManager.getConnection(url, username, password); // 3.通过Connection对象获取Statement对象 stmt = conn.createStatement(); // 4.使用Statement执行SQL语句。 } catch (Exception e) { e.printStackTrace(); } } void closedb() { // 6.回收数据库资源 if (rs != null) { try { rs.close(); } catch (SQLException e) { e.printStackTrace(); } rs = null; } if (stmt != null) { try { stmt.close(); } catch (SQLException e) { e.printStackTrace(); } stmt = null; } if (conn != null) { try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } conn = null; } } public reguser() { //窗体 JFrame f=new JFrame("注册窗口"); f.setSize(300,200); f.setLocation(300,200); reg=new JButton("注册") ; show=new JButton("查看"); edit=new JButton("修改") ; del=new JButton("删除"); f.setLayout(new BorderLayout()); up=new JPanel() ; down=new JPanel(){ protected void paintComponent(Graphics g) { super.paintComponent(g); ImageIcon img = new ImageIcon(reguser.class.getResource("background.jpg")); img.paintIcon(this, g, 0, 0); } }; f.add(up,BorderLayout.NORTH); f.add(down,BorderLayout.SOUTH); down.add(reg); down.add(show); down.add(edit); down.add(del); uptext=new JLabel("用户注册界面"); uptext.setFont(new Font("宋体",Font.PLAIN,30)); up.add(uptext); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //菜单 JMenuBar menuBar = new JMenuBar(); JMenu menu = new JMenu("操作"); JMenuItem item1 = new JMenuItem("注册用户"); JMenuItem item2 = new JMenuItem("关闭"); f.setJMenuBar(menuBar); menuBar.add(menu); menu.add(item1); menu.add(item2); f.setVisible(true); //按钮注册弹窗 reg.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { reg(); } }); //菜单注册弹窗 item1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { reg(); } }); //修改密码 edit.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { JDialog dialog = new JDialog(reguser.this, true ); dialog.setLayout(new GridLayout(3,2)); dialog.setTitle("用户注册"); dialog.setSize(300, 200); dialog.setLocation(50, 50); JLabel usertext=new JLabel("用户名"); JLabel passtext=new JLabel("密码"); user=new JTextField(); pass=new JTextField(); result=new JLabel(); dialog.add(usertext); dialog.add(user); dialog.add(passtext); dialog.add(pass); dialog.add(editpass); dialog.add(result); dialog.setVisible(true); } }); //提交注册监听 regsave.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { String usersave=user.getText(); String passave=pass.getText(); if(usermap.size()>0){ Setuserkey=usermap.keySet(); for(String user:userkey) { if(!usersave.equals(user)) { usermap.put(usersave,passave); result.setText("注册成功"); insertuser(usersave,passave); }else { result.setText("用户名重复"); } } }else { usermap.put(usersave,passave); result.setText("注册成功"); insertuser(usersave,passave); } } }); //查看用户名 show.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ Object[] tabletop= {"用户名","密码"}; Object[][] tableuser= new Object[usermap.size()][]; Setuserkey=usermap.keySet(); int i=0; for(String user:userkey) { tableuser[i]=new Object[]{user,usermap.get(user)}; i++; } tableuser=readuser(); JTable table = new JTable(tableuser,tabletop); JDialog dialog = new JDialog(reguser.this, true ); dialog.setTitle("显示用户名"); dialog.setSize(300, 200); dialog.setLocation(50, 50); dialog.add(table); dialog.setVisible(true); } }); } //读取数据库用户 Object[][] readuser() { Object[][] tableuser = null; try { conn(); int count=0; String sqlall = "select count(*) as result from user"; rs = stmt.executeQuery(sqlall); while(rs.next()) { count = rs.getInt("result"); } tableuser= new Object[count][]; String sql = "select * from user"; rs = stmt.executeQuery(sql); int i=0; while (rs.next()) { String user = rs.getString("user"); String pass = rs.getString("pass"); tableuser[i]=new Object[]{user,pass}; i++; } } catch (Exception e) { e.printStackTrace(); } finally { closedb(); } return tableuser; } //插入数据库用户 void insertuser(String user,String pass) { try { conn(); String sql = "INSERT INTO user(user,pass) value('"+user+"','"+pass+"')"; stmt.executeUpdate(sql); System.out.print(sql); } catch (Exception e) { e.printStackTrace(); } finally { closedb(); } } public static void main(String[] aa) { new reguser(); } }