只是参考,需要自己需改!
望都ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联建站的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18982081108(备注:SSL证书合作)期待与您的合作!
package com.ivory.view;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.imageio.ImageIO;
import javax.swing.*;
import com.ivory.common.User;
import com.ivory.sql.UserServer;
public class AddUser extends JDialog implements ActionListener
{
JLabel jl1,jl2,jl3,jl4,jl5,jl6,jl7,jl8,jl9;
JTextField jtf1,jtf2,jtf3,jtf4,jtf5,jtf6,jtf7,jtf8;
JButton jb1,jb2;
Font f1=new Font("宋体",Font.PLAIN,16);
User user;
public AddUser(User u)
{
Container ct=new Container();
jl1=new JLabel("账号");
jl1.setFont(f1);
jl1.setBounds(10, 60, 100, 30);
jl2=new JLabel("密码");
jl2.setFont(f1);
jl2.setBounds(10, 110, 100, 30);
jl3=new JLabel("密码");
jl3.setFont(f1);
jl3.setBounds(10, 160, 100, 30);
jl4=new JLabel("姓名");
jl4.setFont(f1);
jl4.setBounds(10, 210, 100, 30);
jl5=new JLabel("性别");
jl5.setFont(f1);
jl5.setBounds(10, 260, 100, 30);
jl6=new JLabel("班级");
jl6.setFont(f1);
jl6.setBounds(10, 310, 100, 30);
jl7=new JLabel("Tel");
jl7.setFont(f1);
jl7.setBounds(10, 370, 100, 30);
jl8=new JLabel("成绩");
jl8.setFont(f1);
jl8.setBounds(10, 410, 100, 30);
jl9=new JLabel("注册用户");
jl9.setFont(f1);
jl9.setBounds(100, 10, 100, 30);
jb1=new JButton(new ImageIcon("image\\queding.jpg"));
jb1.setBounds(40, 460, 70, 30);
jb1.addActionListener(this);
jb1.setActionCommand("queding");
jb2=new JButton(new ImageIcon("image\\quxiao.jpg"));
jb2.setBounds(200, 460, 70, 30);
jb2.addActionListener(this);
jb2.setActionCommand("quxiao");
jtf1=new JTextField(20);
jtf1.setBounds(50, 60, 200, 30);
jtf2=new JTextField(20);
jtf2.setBounds(50, 110, 200, 30);
jtf3=new JTextField(10);
jtf3.setBounds(50, 160, 200, 30);
jtf4=new JTextField(20);
jtf4.setBounds(50, 210, 200, 30);
jtf5=new JTextField(15);
jtf5.setBounds(50, 260, 200, 30);
jtf6=new JTextField(20);
jtf6.setBounds(50, 310, 200, 30);
jtf7=new JTextField(10);
jtf7.setBounds(50, 360, 200, 30);
jtf8=new JTextField(20);
jtf8.setBounds(50, 410, 200, 30);
jtf8.setText("100");
jtf8.setEditable(false);
ct.add(jl9);ct.add(jl1);ct.add(jl2);
ct.add(jl3);ct.add(jl4);ct.add(jl5);
ct.add(jl6);ct.add(jl7);ct.add(jl8);
ct.add(jtf1);ct.add(jtf2);ct.add(jtf3);
ct.add(jtf4);ct.add(jtf5);ct.add(jtf6);
ct.add(jtf7);ct.add(jtf8);
ct.add(jb1);ct.add(jb2);
BackIamge bi=new BackIamge();
bi.setBounds(0,0,300,500);
ct.add(bi);
this.add(ct);
this.setSize(300,500);
this.setUndecorated(true);
this.setLocation(500, 100);
this.setVisible(true);
}
//定义一个内部类(背景图片)
class BackIamge extends JPanel
{
Image im;
public BackIamge()
{
try {
im=ImageIO.read(new File("image//add.jpg"));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//定义paint方法
public void paintComponent(Graphics g)
{
//画出背景图片
g.drawImage(im, 0,0,300,500,this);
}
}
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if(e.getActionCommand().equals("queding"))
{
User u=new User();
u.setUser(jtf1.getText());
u.setPassword(jtf2.getText());
u.setPassword(jtf3.getText());
u.setNumName(jtf4.getText());
u.setNumSex(jtf5.getText());
u.setNumClass(jtf6.getText());
u.setNumTel(jtf7.getText());
u.setNumMark(jtf8.getText());
u.setMessage("add");
if(!jtf2.getText().equals(jtf3.getText()))
{
JOptionPane.showMessageDialog(null, "密码不一致");
}
else
{
if(u.getMessage().equals("1"))
{
JOptionPane.showMessageDialog(null, "注册成功!");
this.dispose();
}else
{
JOptionPane.showMessageDialog(null, "注册失败!");
}
}
}
else if(e.getActionCommand().equals("quxiao"))
{
this.dispose();
}
}
}
效果图
参考代码和注释
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
//该窗口继承自JFrame, 实现了ActionListener接口
public class SingUpFrame extends JFrame implements ActionListener {
//定义需要的组件
JTextField jtfName, jtfEmail;
JPasswordField jpf;
JRadioButton jrb1, jrb2;
JComboBoxString jcb;
JButton jbReset, jbSingUp;
//常量
static final String NEW_LINE = System.getProperty("line.separator");// 获取系统的换行符
static final String FILE_PATH = "d:/users.txt";//指定文件的路径
//构造器
public SingUpFrame() {
JPanel jp1 = new JPanel();
JLabel jl1 = new JLabel("账号");
jtfName = new JTextField(15);
jp1.add(jl1);
jp1.add(jtfName);
JPanel jp2 = new JPanel();
JLabel jl2 = new JLabel("密码");
jpf = new JPasswordField(15);
jp2.add(jl2);
jp2.add(jpf);
JPanel jp3 = new JPanel();
JLabel jl3 = new JLabel("邮箱");
jtfEmail = new JTextField(15);
jp3.add(jl3);
jp3.add(jtfEmail);
JPanel jp4 = new JPanel();
JLabel jl4 = new JLabel("性别");
ButtonGroup bg = new ButtonGroup();
jrb1 = new JRadioButton("男");
jrb1.setSelected(true);// 默认选中男性
jrb2 = new JRadioButton("女");
bg.add(jrb1);
bg.add(jrb2);
jp4.add(jl4);
jp4.add(jrb1);
jp4.add(jrb2);
JLabel jl5 = new JLabel("年龄");
String[] ary = new String[12];
for (int i = 18; i 30; i++) {// 18~30可供选中的范围
ary[i - 18] = i + "";
}
jcb = new JComboBoxString(ary);
jp4.add(jl5);
jp4.add(jcb);
JPanel jpc = new JPanel(new GridLayout(4, 1));// 4行1列布局
jpc.add(jp1);
jpc.add(jp2);
jpc.add(jp3);
jpc.add(jp4);
add(jpc);
JPanel jps = new JPanel();
jbReset = new JButton("重填");
jbReset.addActionListener(this);//给按钮添加响应
jbSingUp = new JButton("确定");
jbSingUp.addActionListener(this);//给按钮添加响应
jps.add(jbReset);
jps.add(jbSingUp);
add(jps, BorderLayout.SOUTH);
setTitle("注册窗口");// 窗口标题
setSize(300, 285);// 窗口大小
setLocationRelativeTo(null);// 窗口居中
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);// 当窗口关闭时,程序结束
}
@Override
public void actionPerformed(ActionEvent e) {
JButton jb = (JButton) e.getSource();
if (jb == jbReset) {
jtfName.setText("");
jpf.setText("");
jtfEmail.setText("");
jrb1.setSelected(true);
jcb.setSelectedIndex(0);// 选中第1个选项(18)
} else if (jb == jbSingUp) {
String name = jtfName.getText().trim();
String pswd = new String(jpf.getPassword());
String email = jtfEmail.getText().trim();
String xb = jrb1.isSelected() ? "男" : "女";
String age = (String) jcb.getSelectedItem();
if(name.equals("")||pswd.equals("")||email.equals("")) {//对输入的信息进行一个简单的判断
JOptionPane.showMessageDialog(null, "请完整填写所有的信息", "提示",JOptionPane.WARNING_MESSAGE);
return;
}
StringBuffer sb = new StringBuffer();
sb.append("账号:" + name + NEW_LINE + "密码:" + pswd + NEW_LINE + "邮箱:" + email + NEW_LINE + "性别:" + xb
+ NEW_LINE + "年龄:" + age+NEW_LINE);
boolean flag = saveInfo(sb.toString());
if(flag) {
JOptionPane.showMessageDialog(null, "注册成功 ,保存成功");
}else {
JOptionPane.showMessageDialog(null, "Sorry!保存失败.注册出现了问题...", "IO错误",JOptionPane.ERROR_MESSAGE);
}
}
}
//方法:保存信息到文件
public boolean saveInfo(String info) {
FileWriter fw;
try {
fw = new FileWriter(FILE_PATH, true);//追加文字到文件尾部
fw.write(info);
fw.close();
} catch (IOException e) {
e.printStackTrace();
return false;//IO异常,保存不成功
}
return true;//保存成功
}
//main方法
public static void main(String[] args) {
new SingUpFrame().setVisible(true); //创建窗口并可见
}
}
界面建议用可视化来做,美观且便捷。下面这个是完全用代码写的,仅供参考。
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
import java.sql.*;
public class Register extends JFrame {
JLabel jl1 = new JLabel("用户名");
JTextField jt1 = new JTextField();
JLabel jl2 = new JLabel("邮箱");
JTextField jt2 = new JTextField();
JLabel jl3 = new JLabel("密码");
JPasswordField jpw1 = new JPasswordField();
JLabel jl4 = new JLabel("密码确认");
JPasswordField jpw2 = new JPasswordField();
JButton register = new JButton("注册");
JButton clean = new JButton("清空");
public Register(){
setLayout(new GridLayout(5,2));
add(jl1);
add(jt1);
add(jl2);
add(jt2);
add(jl3);
add(jpw1);
add(jl4);
add(jpw2);
add(register);
add(clean);
String name = jt1.getText();
String email = jt2.getText();
String pw = jpw1.getText();
register.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
try{
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost/db","root","");
Statement sta = con.createStatement();
sta.executeUpdate("INSERT INTO register VALUES(name,email,pw)");
JOptionPane.showMessageDialog(null,"注册成功","提示",JOptionPane.INFORMATION_MESSAGE);
}
catch(Exception ex){
ex.getStackTrace();
}
}
});
clean.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
jt1.setText("");
jt2.setText("");
jpw1.setText("");
jpw2.setText("");
}
});
}
public static void main(String[] args){
Register frame = new Register();
frame.setTitle("用户注册");
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(400,400);
frame.setVisible(true);
}
}
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
public class TestLogin implements ActionListener {
JTextField jtf1 = new JTextField(15);
JPasswordField jtf2 = new JPasswordField(15);
JTextField jtf3 = new JTextField(15);
JLabel jl0 = new JLabel("欢迎注册!");
String result = "";
@Override
public void actionPerformed(ActionEvent e) {
String comn = e.getActionCommand();
if ("提交".equals(comn)) {
FileInputStream fis;
try {
fis = new FileInputStream("D:\\Program File\\image\\input.txt");
byte[] b = new byte[1024];
while (true) {
int num = fis.read(b);
if (num == -1)
break;
result = result + new String(b, 0, num);
}
fis.close();
} catch (FileNotFoundException e1) {
e1.printStackTrace();
} catch (IOException ioe) {
ioe.printStackTrace();
}
String[] s = result.split(";", 0);
String name = jtf1.getText();
String password = jtf2.getText();
String email = jtf3.getText();
String temp = name + "," + password + "," + email + ";";
boolean flag = true;
for (int i = 0; i s.length; i++) {
String[] name0 = s[i].split(",", 0);
if (name.equals(name0[0])) {
jl0.setText("你输入的用户名重复啦!请重新输入");
flag = false;
jtf1.setText("");
jtf2.setText("");
jtf3.setText("");
jtf1.requestFocus();
break;
}
}
if (flag) {
try {
FileOutputStream fos = new FileOutputStream(
"D:\\Program File\\image\\input.txt", true);
fos.write(temp.getBytes());
fos.close();
jl0.setText("恭喜你!注册成功!");
jtf1.setText("");
jtf2.setText("");
jtf3.setText("");
jtf1.requestFocus();
} catch (Exception ae) {
ae.printStackTrace();
}
}
} else if ("清空".equals(comn)) {
jtf1.setText("");
jtf2.setText("");
jtf3.setText("");
jtf1.requestFocus();
}
}
public TestLogin() {
JFrame jf = new JFrame("登录界面");
GridLayout gl = new GridLayout(5, 1);
jf.setLayout(gl);
JPanel[] jp = new JPanel[5];
for (int i = 0; i jp.length; i++) {
jp[i] = new JPanel();
jf.add(jp[i]);
}
jp[0].add(jl0);
JLabel jl1 = new JLabel("用户名:");
jp[1].add(jl1);
jp[1].add(jtf1);
JLabel jl2 = new JLabel(" 密码: ");
jp[2].add(jl2);
jp[2].add(jtf2);
JLabel jl3 = new JLabel(" Email:");
jp[3].add(jl3);
jp[3].add(jtf3);
JButton jb1 = new JButton("提交");
jp[4].add(jb1);
jb1.addActionListener(this);
JButton jb2 = new JButton("清空");
jp[4].add(jb2);
jb2.addActionListener(this);
jf.setLocation(300, 200);
jf.pack();
jf.setVisible(true);
jf.setDefaultCloseOperation(jf.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
new TestLogin();
}
}
这个应该就是你想要的答案!