java登錄注冊完整代碼
package cc.icoc.javaxu.;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class MySQLOprea { /** * 增加記錄 INSERT INTO 表名(欄位名,欄位名) VALUES (值,值); * 刪除記錄 DELETE FROM 表名 WHERE 條件() * 修改記錄 UPDATE 表名 SET 欄位=值,欄位=值 WHERE 條件 * 查詢記錄 SELECT 欄位,欄位 FROM 表名 WHERE 條件 */ ResultSet rs = null; Connection conn = null; Statement statement = null; //鏈接 public Connection connSQL() { String DRIVER = "com.mysql.jdbc.Driver";// 資料庫驅動 String URL = "jdbc:mysql://localhost:3306/mydata?useUnicode=true&characterEncoding=gb2312";// String DBNAME = "root";// 用戶名 String DBPASS = "341341";// 密碼 try { Class.forName(DRIVER).newInstance();// 注冊驅動 conn = DriverManager.getConnection(URL, DBNAME, DBPASS); statement = conn.createStatement(); } catch (Exception e) {} return conn; } //增 /** * 插入新記錄的操作 * @param table 表名 * @param userName 插入的用戶名 * @param passWord 插入的用戶密碼 * @return true代表插入成功,false代表插入失敗 */ public String insert(String table, String userName, String passWord) { connSQL(); String s = "注冊成功"; try { String insert = "insert into "+table+"(userName,passWord) values ("+"'"+userName+"'"+","+"'"+passWord+"'"+")"; statement.executeUpdate(insert); closeDB(); } catch (Exception e) { // TODO: handle exception s = "注冊失敗"+e.toString(); } return s; } //刪 public void delete(String table, String whereValue) throws SQLException { String delete = "Delete from "+table+" where userName = "+whereValue; statement.executeUpdate(delete); } //改 public void update(String table, String whereValue , String newValue) throws SQLException { String update = "Update "+table+" set passWord ="+newValue+" where userName ="+whereValue; statement.executeUpdate(update); } //查 public String query(String table , String whereValue1 ,String whereValue2, String whatCol1, String whatCol2) throws SQLException { connSQL(); String query = null;// ResultSet set= null; try { query = "select "+whatCol1+","+whatCol2+" from "+table +" where "+whatCol1+"="+'"'+whereValue1+'"'+" and "+whatCol2+"="+'"'+whereValue2+'"'; rs = statement.executeQuery(query); closeDB(); } catch (Exception e) { // TODO: handle exception return "false exception:"+e.toString(); } if(rs.next()) { return "true:"; } return "false:"; } private void closeDB() { // TODO Auto-generated method stub try { if(rs != null) { rs.close(); } if(statement != null) { statement.close(); } if(conn != null) { conn.close(); } } catch (Exception e) { // TODO: handle exception System.out.println("資料庫關閉時出現異常"); } }}
⑵ java 中 有1.注冊 2.登錄 3.退出功能 我輸入一 就實現注冊然後返回 選擇2就能登錄 提供以下代碼
不要復雜化,代碼要簡單化,需求是什麼就寫什麼。參考如下:
//用於保存用戶帳戶信息的數組
Scannerscanner=newScanner(System.in);
String[]user=newString[2];
while(true){
//銀行主界面
System.out.println("------------------------------歡迎來到銀行------------------------------");
System.out.println("請選擇編號: 1:注冊 2:登錄 3退出");
intnum=scanner.nextInt();
switch(num){
case1:
//注冊
System.out.println("請輸入您的賬戶名:");
Stringname=scanner.next();
user[0]=name;
System.out.println("請輸入您的密碼:");
Stringpassword=scanner.next();
user[1]=password;
System.out.println("注冊成功!");
//返回主界面
break;
case2:
while(true){
//登錄
System.out.println("請輸入您的帳戶名:");
StringuserName=scanner.next();
System.out.println("請輸入您的密碼:");
StringuserPwd=scanner.next();
//判斷輸入的用戶名是否在數組中存在(判斷該用戶是否注冊)
if(user[0].equals(userName)&&user[1].equals(userPwd)){
System.out.println("-----------登錄成功,請選擇您要辦理的業務------------");
break;
}else{
System.out.println("-----------用戶名或密碼錯誤,請重新輸入------------");//返回到登錄界面
continue;
}
}
break;
case3:
//退出系統程序結束
System.out.println("退出成功,歡迎再次使用");
System.exit(0);
break;
default:
break;
}
}
⑶ 求用java實現簡單的登錄和注冊功能,主要是為了了解怎樣對資料庫進行
//User 用戶的基本信息,也是USERINFO表中的3個列
package 登陸判斷;
public class User {
private String name;
private String loginname;
private String loginpsw;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getLoginname() {
return loginname;
}
public void setLoginname(String loginname) {
this.loginname = loginname;
}
public String getLoginpsw() {
return loginpsw;
}
public void setLoginpsw(String loginpsw) {
this.loginpsw = loginpsw;
}
}
//用於注冊和登陸的小小代碼塊
package 登陸判斷;
import java.util.Scanner;
public class In {
public static User getUser(){
User u = new User();
Scanner sc = new Scanner(System.in);
System.out.println("請輸入登陸名");
u.setLoginname(sc.nextLine());
System.out.println("請輸入密碼");
u.setLoginpsw(sc.nextLine());
return u;
}
public static User registerUser(){
User u = new User();
Scanner sc = new Scanner(System.in);
System.out.println("請注冊用戶名名");
u.setName(sc.nextLine());
System.out.println("請注冊登陸名");
u.setLoginname(sc.nextLine());
System.out.println("請注冊密碼");
u.setLoginpsw(sc.nextLine());
return u;
}
}
//登陸時的檢查,判斷登陸名和密碼是否正確,正確則返回 用戶名
package 登陸判斷;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class Check {
public static void checkUser(User u)
{
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
String url = "jdbc:oracle:thin:@localhost:1521:orcl";
String user = "scott";
String password = "tiger";
Connection conn = null;
ResultSet rs = null;
PreparedStatement pst = null;
String sql = "Select name from USERINFO where loginname = ? and loginpsw = ? ";
try {
conn = DriverManager.getConnection(url, user, password);
pst = conn.prepareStatement(sql);
pst.setString(1, u.getLoginname());
pst.setString(2,u.getLoginpsw());
rs = pst.executeQuery();
while(rs.next()){
u.setName(rs.getString(1));
}
} catch (SQLException e) {
e.printStackTrace();
}finally{
try {
rs.close();
pst.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(u.getName() == null || u.getName().isEmpty()){
System.out.println("登陸失敗");
}else{
System.out.println("歡迎"+u.getName()+"登陸");
}
}
}
//注冊界面,要判斷 登陸名是否有重復,有重復則注冊失敗。有點小疑問,已用注釋標出來
package 登陸判斷;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class Register {
public static void registUser(User u){
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
String url = "jdbc:oracle:thin:@localhost:1521:orcl";
String user = "scott";
String password = "tiger";
Connection conn = null;
String sql = "Insert Into USERINFO values(?,?,?)";
PreparedStatement pst = null;
//判斷登陸名是否已經存在
Statement s = null;
ResultSet rs = null;
String sql_ck = "Select LOGINNAME FROM USERINFO";
try {
conn = DriverManager.getConnection(url, user, password);
pst = conn.prepareStatement(sql);
pst.setString(1, u.getName());
pst.setString(2, u.getLoginname());
pst.setString(3, u.getLoginpsw());
//判斷登陸名是否已經存在
s = conn.createStatement();
rs = s.executeQuery(sql_ck);
while(rs.next()){//為什麼用 rs.getString(2)會提示 無效的索引呢
if( rs.getString("LOGINNAME").equals(u.getLoginname()) ){
System.out.println("登陸名已經存在,注冊失敗");
break;
}else{
pst.executeUpdate();
System.out.println("注冊成功");
break;
}
}
} catch (SQLException e) {
e.printStackTrace();
}finally{
try {
rs.close();
pst.close();
s.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
//main界面//
//資料庫中表的結構式這樣
//name(用戶名,用於顯示),
//loginname(登錄名,即登陸時輸入的ID)
//loginpsw(登陸時輸入的密碼)
package 登陸判斷;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
int chos = 0;
Scanner sc = new Scanner(System.in);
System.out.println("\t\t登陸請按1\t\t注冊請按2");
chos = sc.nextInt();
switch(chos){
case 1: Check.checkUser(In.getUser());break;
case 2: Register.registUser(In.registerUser());break;
default: System.out.println("請輸入正確的選擇");break;
}
}
}
⑷ java編寫登陸注冊頁面(簡單一點的,連接資料庫)
這是我自己做的一個管理系統的登錄界面,代碼雖然有點繁瑣,不過簡單易懂,你根據自己的需要進行修改吧。
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.swing.JDialog;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
/**
*
* @author mzhe
*
*/
class Loginfrm extends JDialog implements ActionListener
{
JLabel l_name,l_pass,l_error;
JTextField t_name;
JButton b_enter,b_cancle,b_clear;
JPanel pan1,pan2,pan3,pan4;
JPasswordField t_pass;
String sname,spass;
int sunit;
NetConn sql;
Statement sqll;
ResultSet rs;
Librarybox lbox;
int until=0;
Loginfrm(JFrame f,String s)
{
//界面布局
super(f,s);
l_name=new JLabel("名字:");
l_pass=new JLabel("密碼:");
l_error=new JLabel("請輸入用戶名和密碼登錄");
t_name=new JTextField("",10);
t_pass=new JPasswordField("",10);
t_pass.setEchoChar('*');
b_enter=new JButton("確定");
b_enter.addActionListener(this);
b_cancle=new JButton("取消");
b_cancle.addActionListener(this);
b_clear=new JButton("清除");
b_clear.addActionListener(this);
pan1=new JPanel();
pan2=new JPanel();
pan3=new JPanel();
pan4=new JPanel();
pan1.add(l_name);pan1.add(t_name);
pan2.add(l_pass);pan2.add(t_pass);
pan3.add(l_error);
pan4.add(b_enter);pan4.add(b_cancle);pan4.add(b_clear);
setLayout(new GridLayout(4,1));
add(pan1);add(pan2);add(pan3);add(pan4);
//建立資料庫連接
sql=new NetConn();
//設置窗口大小
setSize(300,300);
setVisible(false);
//得到屏幕信息以便使框架居中顯示
Dimension screeSize = Toolkit.getDefaultToolkit().getScreenSize();
int screeWidth=screeSize.width;
int screeHeight=screeSize.height;
//得到框架的大小信息
Dimension frameSize=this.getSize();
int x=(screeWidth-frameSize.width)/2;
int y=(screeHeight-frameSize.height)/2;
this.setLocation(x, y);
}
public void actionPerformed(ActionEvent e)
{
//單擊確定按鈕的事件處理程序
if(e.getSource()==b_enter)
{
//如果連續登錄次數小於4
if(until<=4)
{
//如果用戶名或者密碼為空,將顯示提示信息
if(t_name.getText().equals("")||t_pass.getText().equals(""))
{
l_error.setText("用戶名和密碼不能為空");
}
else
{
try
{
sqll=sql.connect();
//根據用戶名查詢
rs=sqll.executeQuery("SELECT * FROM users where username="+"'"+t_name.getText()+"'");
//遍歷查詢得到的結果集
while(rs.next())
{
sname=rs.getString(2);
spass=rs.getString(3);
//得到登錄用戶的級別
sunit=Integer.parseInt(rs.getString(4));
//如果密碼正確
if(t_pass.getText().equals(spass))
{
//判斷用戶的級別,根據不同的級別,顯示不同的菜單
switch(sunit)
{
case 1:
{
l_error.setText("登錄成功");
t_name.setText("");
t_pass.setText("");
lbox=new Librarybox();
lbox.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
lbox.setResizable(false);
lbox.bookfi.setEnabled(true);
lbox.bookse.setEnabled(true);
lbox.bookth.setEnabled(true);
lbox.bookfo.setEnabled(true);
lbox.mi_system_manger.setEnabled(true);
lbox.mi_system_login.setEnabled(false);
lbox.setVisible(true);
this.dispose();
break;
}
case 2:
{
l_error.setText("登錄成功");
t_name.setText("");
t_pass.setText("");
lbox=new Librarybox();
lbox.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
lbox.setResizable(false);
lbox.bookfi.setEnabled(false);
lbox.bookse.setEnabled(false);
lbox.bookth.setEnabled(true);
lbox.bookfo.setEnabled(false);
lbox.mi_system_manger.setEnabled(false);
lbox.mi_system_login.setEnabled(false);
lbox.setVisible(true);
this.dispose();
break;
}
case 3:
{
l_error.setText("登錄成功");
t_name.setText("");
t_pass.setText("");
lbox=new Librarybox();
lbox.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
lbox.setResizable(false);
lbox.bookfi.setEnabled(true);
lbox.bookse.setEnabled(false);
lbox.bookth.setEnabled(false);
lbox.bookfo.setEnabled(true);
lbox.mi_system_manger.setEnabled(false);
lbox.mi_system_login.setEnabled(false);
lbox.fi_msglabel_user.setEnabled(false);
lbox.setVisible(true);
this.dispose();
break;
}
}
}
else
{
l_error.setText("用戶名或密碼錯誤!");
until++;
}
}
}
catch(SQLException e2)
{
e2.printStackTrace();
}
}
}
//超出登錄次數
else
{
l_error.setText("你已經超出登錄次數");
t_name.setEnabled(false);
t_pass.setEnabled(false);
b_enter.setEnabled(false);
b_clear.setEnabled(false);
}
}
//單擊清除按鈕的事件處理程序
else if(e.getSource()==b_clear)
{
t_name.setText("");
t_pass.setText("");
l_error.setText("請輸入用戶名和密碼登錄");
}
//單擊取消按鈕的事件處理程序
else if(e.getSource()==b_cancle)
{
dispose();
}
}
}
如果你比較認可的話,請採納吧,不給分也沒關系。只希望對你有用。
⑸ 用java寫一個手機商城注冊界面代碼
這篇文章主要介紹了java通過JFrame做一個登錄系統的界面完整代碼示例,具有一定借鑒價值,需要的朋友可以參考下。
在java的JFrame內通過創建匿名對象的方式做登錄界面
package com.sxt;
import java.awt.Container;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
public class LoginFrame extends JFrame{
JTextField txtname=new JTextField();
JPasswordField txtpass=new JPasswordField();
JButton bl=new JButton("登錄");
JButton bg=new JButton("關閉");
//構造無參構造器把主要的方法放在構造器里,然後在main方法裡面調
public LoginFrame(){
setBounds(25,25,250,250);
Container c = getContentPane();
c.setLayout(new GridLayout(4,2,10,10));
c.add(new JLabel("用戶名"));
c.add(txtname);
c.add(new JLabel("密碼"));
c.add(txtpass);
c.add(bl);
c.add(bg);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
//注意:此處是匿名內部類
bg.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
System.exit(0);
}
}
);
//注意:此處是匿名內部類
bl.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
⑹ 登陸界面的java代碼怎麼寫
概述
具體框架使用jframe,文本框組件:JTextField;密碼框組件:JPasswordField;標簽組件:JLabel;復選框組件:JCheckBox;單選框組件:JRadioButton;按鈕組件JButton。
登錄界面:
Swing 是一個為Java設計的GUI工具包。
Swing是JAVA基礎類的一部分。
Swing包括了圖形用戶界面(GUI)器件如:文本框,按鈕,分隔窗格和表。
Swing提供許多比AWT更好的屏幕顯示元素。它們用純Java寫成,所以同Java本身一樣可以跨平台運行,這一點不像AWT。它們是JFC的一部分。它們支持可更換的面板和主題(各種操作系統默認的特有主題),然而不是真的使用原生平台提供的設備,而是僅僅在表面上模仿它們。這意味著你可以在任意平台上使用JAVA支持的任意麵板。輕量級組件的缺點則是執行速度較慢,優點就是可以在所有平台上採用統一的行為。
概念解析:
JFrame– java的GUI程序的基本思路是以JFrame為基礎,它是屏幕上window的對象,能夠最大化、最小化、關閉。
JPanel– Java圖形用戶界面(GUI)工具包swing中的面板容器類,包含在javax.swing 包中,可以進行嵌套,功能是對窗體中具有相同邏輯功能的組件進行組合,是一種輕量級容器,可以加入到JFrame窗體中。。
JLabel– JLabel 對象可以顯示文本、圖像或同時顯示二者。可以通過設置垂直和水平對齊方式,指定標簽顯示區中標簽內容在何處對齊。默認情況下,標簽在其顯示區內垂直居中對齊。默認情況下,只顯示文本的標簽是開始邊對齊;而只顯示圖像的標簽則水平居中對齊。
JTextField–一個輕量級組件,它允許編輯單行文本。
JPasswordField– 允許我們輸入了一行字像輸入框,但隱藏星號(*) 或點創建密碼(密碼)
JButton– JButton 類的實例。用於創建按鈕類似實例中的 "Login"。