数据库操作MySQL
CREATE DATABASE clazz
CREATE TABLE Student(
id int not null primary key auto_increment ,
name varchar(30 ) not null ,
sex varchar(10 ),
age int )
insert into Student (name,sex,age)values("张三" ,"男" ,20 )
insert into Student (name,sex,age)values("李斯" ,"男" ,23 )
delete from Student where id=2
update Student set name="张思" ,age=21 where id=1
select * from Student
insert into Student (name,sex,age)values("李斯" ,"男" ,23 )
select * from Student
注册、登录
public class SQLManger {
private Statement state;
public Statement getState () {
return state;
}
public void setState (Statement state) {
this .state = state;
}
public static SQLManger manger;
public static synchronized SQLManger newInstance (){
if (manger==null ){
manger=new SQLManger();
}
return manger;
}
private SQLManger (){
String driver="com.mysql.jdbc.Driver" ;
String url="jdbc:mysql://localhost:3306/clazz" ;
String user="root" ;
String password="123456" ;
try {
Class.forName(driver);
Connection conn=DriverManager.getConnection(url, user, password);
if (!conn.isClosed()){
state=conn.createStatement();
String create="create table if not exists user(id int not null primary key auto_increment ,name varchar(30) not null,password varchar(30) not null)" ;
state.execute(create);
System.out.println("user表创建成功" );
}else {
System.out.println("请打开数据库" );
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public class Register extends JFrame {
private JPanel contentPane;
private JTextField textField;
private JTextField textField_1;
/**
* Launch the application.
*/
public static void main (String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run () {
try {
Register frame = new Register();
frame.setTitle("注册" );
frame.setVisible(true );
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public Register () {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100 , 100 , 450 , 300 );
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5 , 5 , 5 , 5 ));
setContentPane(contentPane);
contentPane.setLayout(null );
textField = new JTextField();
textField.setBounds(131 , 30 , 148 , 34 );
contentPane.add(textField);
textField.setColumns(10 );
textField_1 = new JTextField();
textField_1.setBounds(131 , 93 , 148 , 34 );
contentPane.add(textField_1);
textField_1.setColumns(10 );
JButton btnNewButton = new JButton("register" );
btnNewButton.addActionListener(new ActionListener() {
public void actionPerformed (ActionEvent arg0) {
String name=textField.getText();
String password=textField_1.getText();
Statement state=SQLManger.newInstance().getState();
String sql="select * from user where name='" +name+"'" ;
try {
ResultSet set = state.executeQuery(sql);
set.last();
int num=set.getRow();
System.out.println(num);
if (num>0 ){
System.out.println("该用户已存在" );
}else {
String register="insert into user(name,password)values('"
+name+"','"
+password
+"')" ;
state.execute(register);
System.out.println("注册成功" );
}
} catch (SQLException e) {
e.printStackTrace();
}
}
});
btnNewButton.setBounds(155 , 169 , 93 , 23 );
contentPane.add(btnNewButton);
JLabel lblUsername = new JLabel("username" );
lblUsername.setBounds(39 , 39 , 82 , 15 );
contentPane.add(lblUsername);
JLabel lblPasword = new JLabel("pasword" );
lblPasword.setBounds(39 , 102 , 82 , 15 );
contentPane.add(lblPasword);
}
}
public class Login extends JFrame {
private JPanel contentPane;
private JTextField textField;
private JTextField textField_1;
/**
* Launch the application.
*/
public static void main (String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run () {
try {
Login frame = new Login();
frame.setTitle("登录" );
frame.setVisible(true );
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public Login () {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100 , 100 , 450 , 300 );
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5 , 5 , 5 , 5 ));
setContentPane(contentPane);
contentPane.setLayout(null );
textField = new JTextField();
textField.setBounds(151 , 43 , 147 , 30 );
contentPane.add(textField);
textField.setColumns(10 );
textField_1 = new JTextField();
textField_1.setBounds(151 , 100 , 147 , 30 );
contentPane.add(textField_1);
textField_1.setColumns(10 );
JButton btnLogin = new JButton("login" );
btnLogin.addActionListener(new ActionListener() {
public void actionPerformed (ActionEvent arg0) {
String name=textField.getText();
String password=textField_1.getText();
Statement state=SQLManger.newInstance().getState();
String sql="select * from user where name='" +name+"' and password='" +password+"'" ;
try {
ResultSet set=state.executeQuery(sql);
set.last();
int num=set.getRow();
if (num==1 ){
System.out.println("登录成功" );
}
} catch (SQLException e) {
e.printStackTrace();
}
}
});
btnLogin.setBounds(178 , 162 , 93 , 23 );
contentPane.add(btnLogin);
JLabel lblUsername = new JLabel("username" );
lblUsername.setBounds(56 , 50 , 85 , 15 );
contentPane.add(lblUsername);
JLabel lblPassword = new JLabel("password" );
lblPassword.setBounds(56 , 107 , 85 , 15 );
contentPane.add(lblPassword);
}
}