怎么实现java和数据库的链接_JAVA简单链接Oracle数据库,实现注册和登陆的功能
//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和数据库的链接_JAVA简单链接Oracle数据库,实现注册和登陆的功能相关推荐
- 如何将excel表导入oracle数据库,如何将EXCEL表导入ORACLE数据库中?【转】
来源:https://zhidao.baidu.com/question/383828330.html?qbl=relate_question_2&word=excel%20%B1%ED%CA ...
- oracle数据库索引介绍,SQL Server和Oracle数据库索引介绍
SQL Server和Oracle数据库索引介绍 SQL Server 和 Oracle 数据库索引介绍1 SQL Server 中的索引 索引是与表或视图关联的磁盘上结构,可以加快从表或视图中检索行 ...
- oracle如何导入excel数据库文件,如何将excel导入oracle数据库的教程
在Excel中录入好数据以后就需要导入到oracle数据库,或许有些朋友不知道该如何做.下面是学习啦小编带来的关于如何将excel导入oracle数据库的教程,欢迎阅读! 如何将excel导入orac ...
- java oracle数据备份_Java备份还原Oracle数据库
Java备份还原Oracle数据库,不知道还有没好点的方法 希望有的也能提供下方法或者代码. Java备份还原Oracle数据库,,不知道还有没好点的方法 希望有的也能提供下方法或者代码. packa ...
- java操作oracle数据_Java jdbc操作oracle数据库的两种方式
本文由广州疯狂软件java培训分享: 第一种应该是比较古老的方法了. Windows下采用JDBC-ODBC Bridge连接oracle数据库 1. 安装oracle客户端程序,在tnsnames. ...
- java和连接数据库的驱动_java中连接各数据库的驱动类和连接方式
1.JAVA连接ACCESS数据库 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); String url="jdbc:odb ...
- java通讯社备份_Java备份还原Oracle数据库
Java备份还原Oracle数据库,不知道还有没好点的方法 希望有的也能提供下方法或者代码. package com.servlet.util; import java.io.File; import ...
- java汽车4S店管理系统myeclipse定制开发oracle数据库网页模式java编程jdbc
一.源码特点 java汽车4S店管理系统 是一套完善的web设计系统,对理解JSP java编程开发语言有帮助 oracle数据库,系统具有完整的源代码和数据库,系统主要采用B/S模式开发. jav ...
- java监控表变化_关于实时监控oracle数据库表数据变化的设计与实现
近期接受项目需求,需要实时处理oracle数据库中表的数据变化,首先想到的是在程序中创建定时器,轮询表.鉴于程序冗余考虑,百度知:oracle数据库java存储过程.Oracle数据库有执行简单jav ...
最新文章
- Requirejs加载超时问题的一个解决方法:设置waitSeconds=0
- “三农”谋定金融 中国农民丰收节交易会金融服务研讨会
- linux 中断奶乱码,科学断奶经历:早中晚三次母乳,一个月内循序渐进自然断奶...
- function函数嵌套 matlab_matlab – 当没有使用“end”时,一个.m文件中的多个函数是嵌套的还是本地的...
- 出现类似于 ”IDD_DLG_WAIT 未声明的标识符“ 这样的错误怎么办
- 746.使用最小花费爬楼梯
- html中引入另一个html
- 计算机网络工具软件包括,计算机网络常用工具软件
- Java+MySQL+swing学生管理系统
- Excel学习笔记:P18-COUNTIFS函数与SUMIFS函数
- python 降序排列
- 当我们谈论Virtual DOM时,我们在说什么——etch源码解读
- Zabbix - 微信报警
- 中兴笔试题目总结(四)软件工程部分
- SQL Server 数据库中数据库表导出为Excel表格
- 8家公司笔面试经历-百度-联发科-瑞晟
- Walle多渠道打包
- 计算机书在书架A上的英语,书架用英语怎么说
- 笼统的前端:知识图谱、各分支领域技术要点和推荐工具
- 学术造假导致导师自杀,后将这段学术丑闻经历出书贩卖,一年收入上百万......
热门文章
- Android官方开发文档Training系列课程中文版:创建自定义View之View的交互
- SSM:Cause: java.sql.SQLSyntaxErrorException: ORA-00933: SQL 命令未正确结束的解决
- Linux下的Tomcat服务器修改server.xml中的8080端口号后出现不能访问首页
- 知识图谱最新权威综述论文解读:知识图谱补全部分
- Vue项目开发1-项目的创建
- Docker日志收集最佳实践
- Linq的优点以及注意事项
- 分享三个非常适合新手的网站
- Fibonacci(求前四位数)
- 《深入浅出WPF》学习笔记之深入浅出话属性