专栏首页FREE SOLOJDBC增删改查

JDBC增删改查

/**

  • 对开发需求的直观映射是SQL语句.
  • 开发步骤:
  • 业务需求分析
  • 数据库设计
  • sql语句设计
  • 数据库操作功能类实现
  • 业务逻辑代码实现
  • 联合测试
  • 上线测试
  • 维护
  • 对于增加删除和修改除了Sql语句的声明不一致以外,其他声明基本一致.
  • 封装的思想:
  • 相同的保留,不同的传参.
  • 使用Statement对象完成增加删除修改
  • @author MyPC **/ import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.ArrayList; import com.bjsxt.pojo.Student; public class StudentDaoImpl2 {

//增加

	public int insStu(String sname,int sage,double money) throws ClassNotFoundException, SQLException{
		//加载驱动
		Class.forName("oracle.jdbc.driver.OracleDriver");
		//创建连接对象
		Connection conn=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl", "scott", "oracle");
		//创建sql命令对象
		Statement stmt=conn.createStatement();
		//创建sql命令
		String sql="insert into student values(stu_seq.nextval,'"+sname+"','"+sage+"','"+money+"')";
		//执行sql命令
		int i=stmt.executeUpdate(sql);
		//关闭资源
		stmt.close();
		conn.close();
		return i;
	}

//删除

	public int delStu(int snum) throws ClassNotFoundException, SQLException{
		//加载驱动
		Class.forName("oracle.jdbc.driver.OracleDriver");
		//获取连接对象
		Connection conn=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl", "scott", "oracle");
		//获取sql命令对象
		Statement stmt=conn.createStatement();
		//创建sql命令
		String sql="delete from student where snum="+snum;
		//执行sql命令
		int i=stmt.executeUpdate(sql);
		//关闭资源
		stmt.close();
		conn.close();
		return i;
	}

//修改

	public int upStu(int snum,String newName) throws ClassNotFoundException, SQLException{
		//加载驱动
		Class.forName("oracle.jdbc.driver.OracleDriver");
		//获取连接对象
		Connection conn=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl", "scott", "oracle");
		//获取sql命令对象
		Statement stmt=conn.createStatement();
		//创建sql命令
		String sql="update student set sname='"+newName+"' where snum="+snum;
		//执行sql命令
		int i=stmt.executeUpdate(sql);
		//关闭资源
		stmt.close();
		conn.close();
		return i;	
	}

//查询

	public ArrayList<Student> getStudentInfo() throws ClassNotFoundException, SQLException{
		//声明集合对象
		ArrayList<Student> ls=new ArrayList<>();
		//加载驱动
		Class.forName("oracle.jdbc.driver.OracleDriver");
		//获取连接对象
		Connection conn=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl", "scott", "oracle");
		//获取sql命令对象
		Statement stmt=conn.createStatement();
		//创建sql命令
		String sql="select * from student";
		//执行sql命令
		ResultSet rs=stmt.executeQuery(sql);
		//遍历结果
		while(rs.next()){
			Student s=new Student();
			s.setSnum(rs.getInt("snum"));
			s.setSname(rs.getString("sname"));
			s.setSage(rs.getInt("sage"));
			s.setMoney(rs.getDouble("money"));
			ls.add(s);
		}
		//关闭资源
		rs.close();
		stmt.close();
		conn.close();
		return ls;
	}

}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • JDBC的基本使用流程

    JDBC的基本使用流程: 1 导入jar包: 导入ojdbc6.jar,在项目上右键 builder path–>add to builder path. ...

    葆宁
  • JDBC完成修改

    使用流程不变: 导入jar包 加载驱动 创建连接对象 创建sql命名对象 创建sql命令 执行sql命令 关闭资源

    葆宁
  • 说说JDBC中PreparedStatement相比Statement的好处

    葆宁
  • JDK1.9-JDBC

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明...

    cwl_java
  • mybatis统计每条SQL的执行时间

    最近被问到mybatis统计每条SQL的执行时间,然而虽然我第一时间想到可以通过切面编程来实现,但是平时还真是没有留意这个问题,所以就查阅了一下资料,总结一下,...

    用户3467126
  • dba麻烦终结者之路

    或许你厌倦了朝五晚六的开发工作,开始考ocp;或许你刚走出象牙塔,立志在数据库管理方面大干一场?经过一翻努力,终于有了份dba的工作,忐忑不安地坐在电脑旁,激动...

    Tony老师
  • 运营商应对OpenStack的四大策略

    开源为云计算提供了 另一种选择 开源软件(OSS )即开放源代码软件,通常使用许可证方式对其开源属性进行标识和保证,不同许可证的具体授权条款不同,典型的如GPL...

    静一
  • Spark源码系列(九)Spark SQL初体验之解析过程详解

    好久没更新博客了,之前学了一些R语言和机器学习的内容,做了一些笔记,之后也会放到博客上面来给大家共享。一个月前就打算更新Spark Sql的内容了,因为一些别的...

    岑玉海
  • 数据分析 常见技巧和经验总结

    Pandas中有很多数据类型,其中有一种是datetime,即日期时间,如Timestamp(‘2020-09-22 20:43:00’),表示其是一个时间戳类...

    cutercorley
  • java链接数据库简单教程(JDBC)

    Java基础 | 数据库 | Android | 学习视频 | 学习资料下载 ★回复【数据库工具】获取数据库安装包以及安装视频教程链接 注:(本文以连接orac...

    Java学习

扫码关注云+社区

领取腾讯云代金券