对ORACLE数据库进行操作

<strong><span style="font-size:24px;">//接口类</span></strong>
<span style="font-size:14px;">package com.lrk.login.jdbcdao;

import java.util.ArrayList;

import com.lrk.login.person.Person;

/**
 * 作用:此接口用于统一操作数据库的规范
 *      操作数据库中的数据
 * 
 * @author kevin
 *
 */
public interface UsertableDao {
	
	//查询单条数据记录
	public boolean queryAData(String name, String password);
	//插入一条数据记录
	public int regist(Person persion);
	//查询所有数据记录
	public ArrayList<Person> queryAllData();
	
}
</span>


//接口实现类

package com.lrk.login.jdbcdao.impl;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;

import com.lrk.login.jdbcdao.Jdbcdao;
import com.lrk.login.jdbcdao.UsertableDao;
import com.lrk.login.person.Person;
import com.sun.org.apache.commons.collections.CursorableLinkedList.Cursor;
/**
 * 作用:UsertableDao接口的实例
 * 		实现接口中定义的方法
 * @author kevin
 *
 */
public class UsertableImp implements UsertableDao {
	private PreparedStatement pre;//创建PreparedStatement对象
	private ArrayList<Person> mListPerson = new ArrayList<Person>();

	//查询所有数据记录
	public ArrayList<Person> queryAllData() {
		//获得数据库的连接对象
		Jdbcdao dao = Jdbcdao.getInstace();
		//获得一个连接
		Connection con = dao.con;
		System.out.println("UsertableImp:连接数据库成功");
		try {
			//通过prepareStatement声明一条Sql语句,待执行的语句
			pre = con.prepareStatement("select *from usertable");

			//执行sql语句进行查询,返回一个结果集
			ResultSet res = pre.executeQuery();
			//遍历所有数据并存储在mListPerson对象数组中(非链式线性列表)
			while(res.next()){
				Person person = new Person();
				person.setId(res.getInt(1));
				person.setName(res.getString(2));
				person.setPassword(res.getString(3));
				mListPerson.add(person);
			}

		} catch (SQLException e) {
			System.out.println("UsertableImp—queryAllData:查询数据失败");
			e.printStackTrace();
		}
		System.out.println("UsertableImp-queryAllData查询结果:"+mListPerson.toString());
		return mListPerson;
	}

	//查询单条数据记录
	public boolean queryAData(String name, String password) {
		if(name == null || password == null){
			//获得数据库的连接
			Jdbcdao dao = Jdbcdao.getInstace();
			Connection con = dao.con;
			try {
				//创建PreparedStatement对象,sql语句不再采用拼接方式,应用占位符问号的方式写sql语句。
				pre = con.prepareStatement("select *from usertable where name=? and password=?");
				//对占位符设置值,占位符顺序从1开始,第一个参数是占位符的位置,第二个参数是占位符的值
				pre.setString(1, name);
				pre.setString(2, password);
				//执行sql语句进行查询
				ResultSet res = pre.executeQuery();
				return res.next();
			} catch (SQLException e) {
				System.out.println("UsertableImp—login:查询数据失败");
				e.printStackTrace();
			}
		}else{
			System.out.println("UsertableImp-queryAData:name 或 password为null");
		}
		return false;
	}



	//向数据库中添加一条数据
	public int regist(Person person) {
		if(person == null){
		//获得数据库连接
		Jdbcdao dao = Jdbcdao.getInstace();
		Connection con = dao.con;
		try {
			//创建PreparedStatement对象,sql语句不再采用拼接方式,应用占位符问号的方式写sql语句。
			pre = con.prepareStatement("insert into usertable values(seq_usertable.nextval,?,?)");
			//对占位符设置值,占位符顺序从1开始,第一个参数是占位符的位置,第二个参数是占位符的值
			pre.setString(1, person.getName());
			pre.setString(2, person.getPassword());
			int i = pre.executeUpdate();
			if(i == 0){
				System.out.println("UsertableImp—regist:用户注册失败");
			}
			return i;
		} catch (SQLException e) {
			System.out.println("UsertableImp—regist:用户注册失败");
			e.printStackTrace();
		}
		}else{
			System.out.println("UsertableImp-regist:person为null");
		}

		return 0;

	}

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

编程秀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值