JDBC实现数据库的增删查改(一)
摘要:利用JDBC所提供的statement接口进行对数据库的操作。 所实验的对象的成员属性和方法如下:(注:表的所有的类型均为varchar)
package com.hm.model; public class User { private String id; private String name; private String password; public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public User(String id, String name, String password) { this.id = id; this.name = name; this.password = password; } @Override public String toString() { return "User [id=" + id + ", name=" + name + ", password=" + password + "]"; } }
在我目前所接触到的JDBC所操作数据库的方法中,操作数据库的流程可以总结为以下几点:
1.加载数据库的驱动
2.获取到数据库的连接
3.设置sql语句
4.执行sql语句操作
5.释放资源
总结可用五个字进行代替(加连语执释)
connection是用于Java代码和数据库通信的api。
statement用于在Java代码中执行sql语句。
一:增加的操作
import java.sql.Connection; import java.sql.Statement; import com.hm.connect.Demo01; public class demo01 { public static void main(String[] args) throws Exception { Demo01 db = new Demo01();//进行封装后的加载数据库驱动,获取连接和释放资源的包。<代码在上一篇> Connection con = db.getcon();//获取到数据库的连接 String sql2 = "insert into t_user value ('null','ysz','1223')";设置sql语句 Statement stmt = con.createStatement();创建statement对象,用于执行sql语句 int result1 = stmt.executeUpdate(sql2);执行sql语句,并且返回处理的sql语句的数目 System.out.println("操作"+ result1 +"数据"); stmt.close();关闭资源 db.closeCon(con); } }
利用面向对象的方式进行增加操作
import java.sql.Connection; import java.sql.Statement; import com.hm.connect.Demo01; import com.hm.model.User; public class Demo02 { /** * 面向对象的封装思想与执行的sql语句为变量的植入 * @param args */ private static Demo01 db = new Demo01(); private static int adduser(User user) throws Exception { String sql = "insert into t_user value('"+user.getId()+"','"+user.getName()+"','"+user.getPassword()+"')"; Connection con = db.getcon(); Statement stmt = con.createStatement(); int result = stmt.executeUpdate(sql); stmt.close(); db.closeCon(con); return result; } public static void main(String[] args) throws Exception { User user = new User("10", "nihao", "8hduw"); int result = adduser(user); System.out.println(result); } }
利用面向对象的方式进行数据库的更新操作
其实主题内容都差不多,所执行的步骤都是差不多的,但是我觉得最困难的是进行数据库字符的拼接,所以把还是后面的preparestatement接口的学会更简单。
package com.hm.test02; import java.sql.Connection; import java.sql.Statement; import com.hm.connect.Demo01; import com.hm.model.User; /** * 更新数据库操作 * @author admin * */ public class Dem03 { private static Demo01 db = new Demo01(); public int update(User user) throws Exception { String sql = "update t_user set userName = '"+user.getName()+"',password = '"+user.getPassword()+"'where id = '"+user.getId()+"'"; Connection con = db.getcon(); Statement stmt = con.createStatement(); int result = stmt.executeUpdate(sql); stmt.close(); db.closeCon(con); return result; } public static void main(String[] args) throws Exception { Dem03 dem03 = new Dem03(); User user = new User("2","hm1","12345"); int result = dem03.update(user); System.out.println(result); } }
进行删除的操作
注意:这个删除的操作的字符串拼接我是真的没有拼出来,先给自己挖个坑在这里吧,以后懂了在回来填吧,也希望有大神能够指点一下,感谢万分。
package com.hm.test02; import java.sql.Connection; import java.sql.Statement; import com.hm.connect.Demo01; import com.hm.model.User; public class Dem4 { private static void delete(User user ) throws Exception { Demo01 db = new Demo01(); Connection con = db.getcon(); String sql = "delete from where id = '"+user.getId()+"'"; Statement stmt = con.createStatement(); int result = stmt.executeUpdate(sql); System.out.println(result); stmt.close(); db.closeCon(con); } public static void main(String[] args) throws Exception { User user = new User("2", "dhuebu", "beuvfiue"); delete(user); } }

浙公网安备 33010602011771号