前言:刚接触Oracle数据库,便有一个需求,编写控制台程序,实现主人登录。数据库为Oracle。下面详细介绍一下MyEclipse 连接Oracle数据库。

 
package DbHelp;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException; import oracle.jdbc.driver.OracleDriver; /**
* 数据库连接帮助类
* @author zql_pc
*
*/
public class DbHelp { /*
* 数据库连接
*/
public static Connection lianjie(){ //数据库配置
String driver = "oracle.jdbc.driver.OracleDriver";//驱动
String url = "jdbc:oracle:thin:@localhost:1521:JBITDB";
String user = "epet";
String pwd = "123456"; try {
//第一步:加载驱动
Class.forName(driver);// -->反射 Connection conn = DriverManager.getConnection(url,user,pwd); return conn; } catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} return null;
}
}
/**
* 宠物实体类
* @author zql_pc
*
*/
public class pet { private int id; private String name;
private int health;
private int love;
private String type;
private String adoptTime; public pet(){ } public pet(int id, String name, int health, int love, String type,
String adoptTime) {
super();
this.id = id;
this.name = name;
this.health = health;
this.love = love;
this.type = type;
this.adoptTime = adoptTime;
} public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getHealth() {
return health;
}
public void setHealth(int health) {
this.health = health;
}
public int getLove() {
return love;
}
public void setLove(int love) {
this.love = love;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public String getAdoptTime() {
return adoptTime;
}
public void setAdoptTime(String adoptTime) {
this.adoptTime = adoptTime;
} @Override
public String toString() {
return "pet [adoptTime=" + adoptTime + ", health=" + health + ", id="
+ id + ", love=" + love + ", name=" + name + ", type=" + type
+ "]";
} }
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Scanner; import org.junit.Test; import DbHelp.DbHelp;
/**
* 登陆
* @author zql_pc
*
*/
public class login { @Test
public void show(){
Scanner input = new Scanner(System.in); //调用DbHelp类的连接数据库方法获取connection对象
Connection conn = DbHelp.lianjie(); System.out.println("----欢迎光临宠物乐园----");
System.out.print("请输入登录名:"); //控制台输入的用户名
String name = input.next(); System.out.print("请输入密码:"); //控制台输入的密码
String pwd = input.next(); //sql
String sql = "select * from master where loginid= ? and password = ?"; PreparedStatement pst = null; ResultSet rs = null; //预编译操作数据库
try {
pst = conn.prepareStatement(sql); pst.setString(1,name);
pst.setString(2, pwd); rs = pst.executeQuery(); if(rs.next()){
System.out.println("登陆成功!");
}else{
System.out.println("登陆失败!");
} } catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} }
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Scanner; import org.junit.Test; import DbHelp.DbHelp; /**
* 领养宠物类
* @author zql_pc
*
*/
public class adoptPet { Scanner input = new Scanner(System.in); public void show() throws SQLException{ System.out.println("----欢迎光临宠物乐园----"); //获取数据库连接
Connection conn = DbHelp.lianjie(); System.out.print("请输入要领养的宠物名字:");
String name = input.next(); System.out.println("请输入领养宠物类型(1、狗狗 2、企鹅):");
int type = input.nextInt(); String sql = "insert into pet values(4,1,?,?,100,100,null,null,null,to_date('2015-1-5','yyyy-mm-dd'),1)"; PreparedStatement pst = conn.prepareStatement(sql); pst.setString(1, name);
pst.setInt(2, type); int num = pst.executeUpdate(); if(num>0){
System.out.println("领养成功!");
}else{
System.out.println("领养失败!!");
} //关闭省
} //打印狗狗信息
@Test
public void show1(){ Connection conn = DbHelp.lianjie();
Statement st =null;
List<pet> list = null;
try {
st = conn.createStatement(); String sql = "select id,name,health,love,decode(type_id,1,'正常',2,'禁用'),to_char(adopt_time,'yyyy-mm-dd') from pet"; ResultSet rs = st.executeQuery(sql); list = new ArrayList<pet>(); while(rs.next()){
pet pet = new pet(rs.getInt(1),rs.getString(2),rs.getInt(3),rs.getInt(4),rs.getString(5),rs.getString(6));
list.add(pet);
} } catch (SQLException e) {
e.printStackTrace();
} System.out.println("----主人领养的所有宠物类型----");
System.out.println("ID\t宠物名\t健康值\t亲密度\t状态\t领养时间");
System.out.println("-----------------------------------------"); Iterator<pet> i = list.iterator(); while(i.hasNext()){ pet pet1 = i.next(); System.out.println(pet1.getId()+"\t"+pet1.getName()+"\t"+pet1.getHealth()+"\t"+pet1.getLove()+"\t"+pet1.getType()+"\t"+pet1.getAdoptTime()); } }
}

 
 
 
 

MyEclipse 连接Oracle数据库(初学者必看)的更多相关文章

  1. 2018.6.9 MyEclipse连接Oracle数据库方法及步骤

    在windows栏找到showXXX 然后选择最后一个others 找到Database 然后选择oracle 接着就是jar包的问题了 这个不同于mysql oracle如果装在了本机上面可以在文件 ...

  2. MyEclipse用Java语言连接Oracle数据库

    在MyEclipse下Java连接Oracle数据库 第一步:新建Java项目. 填写项目名,其它设置默认,点击完成即可. 新建java类,填写包名和类名,勾选public static void m ...

  3. 15个初学者必看的基础SQL查询语句

    本文由码农网 – 小峰原创翻译,转载请看清文末的转载要求,欢迎参与我们的付费投稿计划! 本文将分享15个初学者必看的基础SQL查询语句,都很基础,但是你不一定都会,所以好好看看吧. 1.创建表和数据插 ...

  4. C# 连接 Oracle数据库增删改查,事务

    一. 前情提要 一般.NET环境连接Oracle数据库,是通过 TNS/SQL.NET 配置文件,而 TNS 必须要 Oracle 客户端(如果连接的是服务器的数据库,本地还要装一个 client , ...

  5. java连接Oracle数据库

    Oracle数据库先创建一个表和添加一些数据 1.先在Oracle数据库中创建一个student表: create table student ( id ) not null primary key, ...

  6. 记录排查解决Hubble.Net连接Oracle数据库建立镜像库数据丢失的问题

    起因 前几天在弄Hubble连接Oracle数据库,然后在mongodb中建立一个镜像数据库; 发现一个问题,原本数据是11W,但是镜像库中只有6w多条; 刚开始以为是没运行好,又rebuild了一下 ...

  7. JDBC连接Oracle数据库的问题

    场景:最近做一个java web项目,使用jdbc连接Oracle数据库,遇到了两个问题. 问题1:jdbc连接不上Ubuntu Oracle服务器? 后来发现这个问题的原因是由于连接字符串写错了,修 ...

  8. php连接oracle数据库转载

    php连接oracle数据库及查询数据的方法 投稿:shichen2014 字体:[增加 减小] 类型:转载 时间:2014-12-29 这篇文章主要介绍了php连接oracle数据库及查询数据的方法 ...

  9. 向MyEclipse添加Oracle数据库

    向MyEclipse添加Oracle数据库 1.点击下面圈起来的位置,打开MyEclipse database Explorer视图. 2.在如图空白处右击,选择new进入New Database C ...

随机推荐

  1. python爬虫13 | 秒爬,这多线程爬取速度也太猛了,这次就是要让你的爬虫效率杠杠的

    快 快了 啊 嘿 小老弟 想啥呢 今天这篇爬虫教程的主题就是一个字 快 想要做到秒爬 就需要知道 什么是多进程 什么是多线程 什么是协程(微线程) 你先去沏杯茶 坐下来 小帅b这就好好给你说道说道 关 ...

  2. 数据类型与变量(Python学习笔记01)

    数据类型与变量 Python 中的主要数据类型有 int(整数)/float(浮点数).字符串.布尔值.None.列表.元组.字典.集合等. None 每个语言都有一个专门的词来表示空,例如 Java ...

  3. 编译OpenWrt失败

    /home/fly/work_dir/OpenWrt-SDK/OpenWrt-Test/trunk/scripts/download.pl "/home/fly/work_dir/OpenW ...

  4. nagios新增监控集群、卸载监控集群批量操作

    1.一定要找应用侧确认每台节点上需要监控的进程,不要盲目以为所有hadoop集群的zk.journal啥的都一样,切记! 2.被监控节点只需要安装nagios-plugin和nrpe,依赖需要安装xi ...

  5. sha2 替换sha1 时间表

    由于sha1签名算法进入淘汰阶段,逐渐弃用中,sha1升级为sha2是大势所趋. 微软已经正式发布sha1弃用策略: http://blogs.technet.com/b/pki/archive/20 ...

  6. DOM对象属性(property)与HTML标签特性(attribute)

    HTML中property与attribute是极易混淆的两个概念.大多数时候这两个单词都翻译为"属性",为了区分二者,一般将property翻译为"属性",a ...

  7. [Cogs14] [网络流24题#1] 飞行员分配方案 [网络流,最大流,二分图匹配]

    经典二分图匹配,可以用匈牙利算法,也可以用最大流 代码如下(Dinic): #include <iostream> #include <cstdio> #include < ...

  8. Office 2003的卸载 与 Office 2013 的安装

    一.Office 2003的卸载 软件:卸载Office2003.msi 运行该软件,等待几分钟即可, 二.Office 2013 的安装 1.Office Professional Plus 201 ...

  9. 【ACM】hdu_zs3_1007_Rails_201308100802

    Rails Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 20000/10000K (Java/Other)Total Submissi ...

  10. Java基础之hashCode方法具体解释

    想要明确hashCode的作用,必须要先知道java中的集合.(不明确的请看Java基础之集合框架具体解释(二)List篇和Java基础之集合框架具体解释(三)Set篇) Java中的Collecti ...