>凡事网 导航

求用java实现简单的登录和注册功能,主要是为了了解怎样对数据库进行增删改查。和各种请求处理, 用java jdbc sqlserver写登录注册,增删改查...

2024-07-01m.fan-pin.com
求用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("登陆请按1注册请按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;
}
}

}

基本的数据库增删改查即可简单实现注册无非就是增加数据限制账号唯一就可以了而登陆可以通过jdbc连接到数据库匹配name和pwd就行了!要是加验证码的话就比较繁琐点!

//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 frame 类编写登陆界面!输入用户名:123密码:123。点击登陆按钮则登...
import java.awt.event.*;import java.io.*;public class Sy_8 extends JFrame { private static final long serialVersionUID = 1L;private JTextField username;private JPasswordField password;private JButton logonButton;private JButton cancelButton;\/\/登陆界面 public Sy_8(){ setTitle("登录....

用java编写一个简单的登录器,大概的流程是怎样的?
确定登陆后,取得输入的用户名和密码,根据用户名去数据库去查,把对应的密码查出来,然后和输入的密码比较(或者可以直接根绝用户名和密码查询,根据返回的结果条数来判断用户名和密码是否正确,不过这种方式可能会有注入漏洞),如果比较结果一样就返回成功,反之返回失败,之后就爱咋咋的。。。

java语言实现用户注册和登录
\/\/这个是我写的,里面有连接数据库的部分。你可以拿去参考一下 import java.awt.*;import javax.swing.*;import java.awt.event.*;import java.sql.*;class LoginFrm extends JFrame implements ActionListener\/\/ throws Exception { JLabel lbl1 = new JLabel("用户名:");JLabel lbl2 = new ...

java问题1,编写一个登录界面,界面包含有户名,密码,登录按钮和退出按钮...
参考代码 import javax.swing.*;import java.awt.*;import java.awt.event.*;\/\/jdk 1.8 进行测试通过public class LoginFrame extends JFrame implements ActionListener{JTextField jtf1;JPasswordField jpf2;public LoginFrame() {\/\/组件部分JPanel jp1,jp2,jp3;JLabel jl1,jl2;JButton jb1,jb...

JAVA中基于C\/S的登录功能怎样实现
1,客户端发送LoginRequestKeyMessage,告诉服务器准备登陆,并期望得到公钥。2,服务器收到LoginRequestKeyMessage后,发送公钥key给客户端。3,客户端保存公钥key后随机生成一个大整数,并将hash后的值clientNonce发给服务端。4,服务端收到clientNonce,并随机生成一个大整数,然后照样将它hash后的值server...

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...

JAVA 中 GUI登录界面设计源代码?
import java.awt.Container;import java.awt.FlowLayout;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JPasswordField;import javax.swing.JTextField;public class Login { private JFrame frame = new JFrame("登录");...

我想要用java实现一个简单的单点登录系统 ,要从何入手呀?
是java的web系统的单点登录吗?如果是建议你看看耶鲁大学的单点登录cas,我们做过的好几个项目都用的这个,简单易用,而且资料也比较多。

用java编写一种登录框:密码正确则显示登陆成功,错误三次显示登陆失败然...
this.setTitle("登录窗体");this.setSize(300, 200);this.setResizable(false);this.add(lbName);lbName.setBounds(50,50,50,20);btnOK.addActionListener(this); \/\/注册监听器 btnCancel.addActionListener(this); \/\/注册监听器 this.add(lbPwd);lbPwd.setBounds(50, 70, 50, 20);thi...

求用JAVA编写的登陆界面!
b1=new JButton("登录");b2=new JButton("重置");p1.setBackground(Color.orange);p2.add(l1);p2.add(f1);p2.setBorder(new MatteBorder(0,0,0,0,Color.BLACK));p2.setBackground(Color.ORANGE);p3.add(l2);p3.add(f2);p3.setBackground(Color.ORANGE);p3.setBorder(new ...

相关链接2

返回顶部
凡事房车自主流
凡事网