JDBC在Myeclipse中的实现

首先在创建的项目中导入链接包

让后右键点击这个链接包——>Build Path——>add to Build Path,如下图所示:

操作以后会在Referenced Libraries文件夹下出现一个奶瓶一样的图标,如下图所示:

该方法适用于在项目中应用任何外部架包的方式,即如果要在自己的项目中引用外部编写好的架包,都可以使用这样的方法把架包导入的自己的项目中进行引用。

导入MySQL数据库的连接包之后就是编写具体代码,如下:

//1.建立Java代码与数据库之间的连接
// a.将数据库驱动jar包添加到当前项目中
// b.通过反射机制加载驱动类("com.mysql.jdbc.Driver")
Class.forName("com.mysql.jdbc.Driver");
		
// c. 通过驱动管理器建立连接
//一共有三个参数
//jdbc:mysql://localhost: 3306/ailight:jdbc:mysql://+IP地址+:+端口号+/+数据库名称
//root:数据库的用户名
//admin123:数据库密码
Connection conn =DBManager.getConnection("jdbc:mysql://localhost: 3306/ailight","root","admin123");
		
// 2.准备SQL指令:如果sql语句中需要数据,则用?替代
String sql = "update user set NAME=?,PASSW=?,SEX=?,TEL=?,AGE=? where NUM=?";
		
// 3.加载/预编译SQL指令
PreparedStatement ps=(PreparedStatement) conn.prepareStatement(sql);

// 4.给SQL中的参数(?)赋值
//若准备的sql语句中没有"?"则该步骤可以省略
ps.setString(1, name);
ps.setString(2, password);
ps.setString(3, sex);
ps.setString(4, tel);
ps.setInt(5, age);
ps.setString(6, num);
		
// 5.执行SQL指令	
//a.增删改用ps.executeUpdate();
//b.查询使用ps.executeQuery();
int i=ps.executeUpdate();
flag=i>0?true:false;
ps.close();
conn.close();

以上代码以修改操作为例。其他增删查只是sql语句和第5步有所不同。

注意!第五步骤中增、删、改这些操作对数据库数据进行了修改,所以使用“ps.executeUpdate();”执行。而查询操作没有修改数据库数据,所以使用“ps.executeQuery();”执行语句。这两个执行语句的返回值也有所不同。

当你将增、删、查、改的代码编写完后,会发现有大量重复的代码,而这就不符合代码的规范。

于是可以将重复的代码单独拿出来编写成方法。即将前两个步骤进行分装。以下是实现代码:

//将其放在DBManager中。也可以将其命名为别的名字
public class DBManager {


    //将变量与操作分开,便于以后当变量改变时,便于修改
	private static final String DRIVER ="com.mysql.jdbc.Driver";
	private static final String URL="jdbc:mysql://localhost:3306/ailight";
	private static final String USENAME="root";
	private static final String USERPED="admin123";
    
    //当导入包时,为防止错误。编写出运行有误时抛出错误
	static{
		try {
			Class.forName(DRIVER);	
		} catch (Exception e) {
			e.printStackTrace();
		}
		
	}
    //将连接编写成静态的开放函数,放回类型为Connection
	public static Connection getConn(){
		Connection c = null;
		try {
			c=DriverManager.getConnection(URL,USENAME,USERPED);
		} catch (Exception e) {
			e.printStackTrace();
		}
		return c;
	}

将连接操作分装后,对数据库的操作实现代码如下:(已修改操作为例)

public boolean updateUser(String num,String name,String password,String sex,String tel,int age){
	boolean flag=false;
	try {
		Connection conn= DBManager.getConn();
		String sql = "update user set NAME=?,PASSW=?,SEX=?,TEL=?,AGE=? where NUM=?";
		PreparedStatement ps=(PreparedStatement) conn.prepareStatement(sql);
		ps.setString(1, name);
		ps.setString(2, password);
		ps.setString(3, sex);
		ps.setString(4, tel);
		ps.setInt(5, age);
		ps.setString(6, num);
		int i=ps.executeUpdate();
		flag=i>0?true:false;
		ps.close();
		conn.close();
	} catch (Exception e) {
		e.printStackTrace();
	}
	return flag;
}

上面是修改函数的编写,需要将其放在创建的类中,我这里的类名为“UserDAO”,类放在包里,这里的包名为“dao”。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值