PreparedStatement语句插入数据

标签: jdbcselect对象数据
2016-10-13 22:22 3864人阅读 评论(0) 收藏 举报
分类:
JDBC 学习笔记(8)

版权声明:本文为博主原创文章,未经博主允许不得转载。

代码:

 1.直接调用插入:

DButil.java

[java] view plaincopy
  1. import java.sql.DriverManager;
  2. import java.sql.SQLException;
  3. import java.util.Properties;
  4. import com.mysql.jdbc.Connection;
  5. public class DButil {
  6. /*
  7. * 打开数据库
  8. */
  9. private static String driver;//连接数据库的驱动
  10. private static String url;
  11. private static String username;
  12. private static String password;
  13. static {
  14. driver="com.mysql.jdbc.Driver";//需要的数据库驱动
  15. url="jdbc:mysql://localhost:3306/test";//数据库名路径
  16. username="root";
  17. password="root";
  18. }
  19. public static Connection open()
  20. {
  21. try {
  22. Class.forName(driver);
  23. return (Connection) DriverManager.getConnection(url,username, password);
  24. } catch (Exception e) {
  25. System.out.println("数据库连接失败!");
  26. // TODO Auto-generated catch block
  27. e.printStackTrace();
  28. }//加载驱动
  29. return null;
  30. }
  31. /*
  32. * 关闭数据库
  33. */
  34. public static void close(Connection conn)
  35. {
  36. if(conn!=null)
  37. {
  38. try {
  39. conn.close();
  40. } catch (SQLException e) {
  41. // TODO Auto-generated catch block
  42. e.printStackTrace();
  43. }
  44. }
  45. }
  46. }

jdbcconnection.java

[java] view plaincopy
  1. import java.sql.SQLException;
  2. import com.mysql.jdbc.Connection;
  3. import com.mysql.jdbc.PreparedStatement;
  4. public class jdbcconnection {
  5. public static void main(String[] args) {
  6. // TODO Auto-generated method stub
  7. insert("yangxu","yangxu@qq.com");
  8. }
  9. static void insert(String name,String email)
  10. {
  11. String sql="insert into Haige(name,email) value(?,?)";
  12. Connection conn=DButil.open();
  13. try {
  14. PreparedStatement pstmt=(PreparedStatement) conn.prepareStatement(sql);
  15. pstmt.setString(1,name);
  16. pstmt.setString(2,email);
  17. pstmt.executeUpdate();
  18. } catch (SQLException e) {
  19. // TODO Auto-generated catch block
  20. e.printStackTrace();
  21. }
  22. finally {
  23. DButil.close(conn);
  24. }
  25. }
  26. }

2.面向对象的方式

Customer.java

[java] view plaincopy
  1. public class Customer {
  2. int id;
  3. String name;
  4. String email;
  5. public int getId() {
  6. return id;
  7. }
  8. public void setId(int id) {
  9. this.id = id;
  10. }
  11. public String getName() {
  12. return name;
  13. }
  14. public void setName(String name) {
  15. this.name = name;
  16. }
  17. public String getEmail() {
  18. return email;
  19. }
  20. public void setEmail(String email) {
  21. this.email = email;
  22. }
  23. }

jdbcconnection.java(插入数据)

[java] view plaincopy
  1. import java.sql.SQLException;
  2. import com.mysql.jdbc.Connection;
  3. import com.mysql.jdbc.PreparedStatement;
  4. public class jdbcconnection {
  5. public static void main(String[] args) {
  6. // TODO Auto-generated method stub
  7. //insert("yangxu","yangxu@qq.com");
  8. Customer c=new Customer();
  9. c.setName("zhangbing");
  10. c.setEmail("zhangbing@qq.com");
  11. insert(c);
  12. }
  13. static void insert(Customer c)
  14. {
  15. String sql="insert into Haige(name,email) value(?,?)";
  16. Connection conn=DButil.open();
  17. try {
  18. PreparedStatement pstmt=(PreparedStatement) conn.prepareStatement(sql);
  19. pstmt.setString(1,c.getName());
  20. pstmt.setString(2,c.getEmail());
  21. pstmt.executeUpdate();
  22. } catch (SQLException e) {
  23. // TODO Auto-generated catch block
  24. e.printStackTrace();
  25. }
  26. finally {
  27. DButil.close(conn);
  28. }
  29. }
  30. }

jdbcconnection.java(修改数据)

[java] view plaincopy
  1. import java.sql.SQLException;
  2. import com.mysql.jdbc.Connection;
  3. import com.mysql.jdbc.PreparedStatement;
  4. public class jdbcconnection {
  5. public static void main(String[] args) {
  6. // TODO Auto-generated method stub
  7. //insert("yangxu","yangxu@qq.com");
  8. Customer c=new Customer();
  9. //      c.setName("zhangbing");
  10. //      c.setEmail("zhangbing@qq.com");
  11. //insert(c);
  12. c.setId(1001);
  13. c.setName("kaixin");
  14. Update(c);
  15. }
  16. static void Update(Customer c)
  17. {
  18. String sql="update haige set name=? where id=?";
  19. Connection conn=DButil.open();
  20. try {
  21. PreparedStatement pstmt=(PreparedStatement) conn.prepareStatement(sql);
  22. pstmt.setString(1,c.getName());
  23. pstmt.setInt(2,c.getId());;
  24. pstmt.executeUpdate();
  25. } catch (SQLException e) {
  26. // TODO Auto-generated catch block
  27. e.printStackTrace();
  28. }
  29. finally {
  30. DButil.close(conn);
  31. }
  32. }
  33. }

jdbcconnection.java(删除数据)

[java] view plaincopy
  1. import java.sql.SQLException;
  2. import com.mysql.jdbc.Connection;
  3. import com.mysql.jdbc.PreparedStatement;
  4. public class jdbcconnection {
  5. public static void main(String[] args) {
  6. // TODO Auto-generated method stub
  7. //insert("yangxu","yangxu@qq.com");
  8. //      Customer c=new Customer();
  9. c.setName("zhangbing");
  10. c.setEmail("zhangbing@qq.com");
  11. //      //insert(c);
  12. //      c.setId(1001);
  13. //      c.setName("kaixin");
  14. //      Update(c);
  15. delete(1006);
  16. }
  17. static void delete(int id)
  18. {
  19. String sql="delete from haige where id=?";
  20. Connection conn=DButil.open();
  21. try {
  22. PreparedStatement pstmt=(PreparedStatement) conn.prepareStatement(sql);
  23. pstmt.setInt(1,id);;
  24. pstmt.executeUpdate();
  25. } catch (SQLException e) {
  26. // TODO Auto-generated catch block
  27. e.printStackTrace();
  28. }
  29. finally {
  30. DButil.close(conn);
  31. }
  32. }
  33. }

jdbcconnection.java(查询数据)

[java] view plaincopy
  1. import java.sql.ResultSet;
  2. import java.sql.SQLException;
  3. import com.mysql.jdbc.Connection;
  4. import com.mysql.jdbc.PreparedStatement;
  5. public class jdbcconnection {
  6. public static void main(String[] args) {
  7. // TODO Auto-generated method stub
  8. //insert("yangxu","yangxu@qq.com");
  9. //      Customer c=new Customer();
  10. c.setName("zhangbing");
  11. c.setEmail("zhangbing@qq.com");
  12. //      //insert(c);
  13. //      c.setId(1001);
  14. //      c.setName("kaixin");
  15. //      Update(c);
  16. //delete(1006);
  17. Customer c=query(1005);
  18. System.out.println(c.getId()+","+c.getName()+","+c.getEmail());
  19. }
  20. static Customer query(int id)
  21. {
  22. String sql="select * from haige where id=?";
  23. Connection conn=DButil.open();
  24. try {
  25. PreparedStatement pstmt=(PreparedStatement) conn.prepareStatement(sql);
  26. pstmt.setInt(1,id);
  27. ResultSet rs=pstmt.executeQuery();
  28. if(rs.next())
  29. {
  30. String name=rs.getString(2);
  31. String email=rs.getString(3);
  32. Customer c=new Customer();
  33. c.setId(id);
  34. c.setName(name);
  35. c.setEmail(email);
  36. return c;
  37. }
  38. } catch (SQLException e) {
  39. // TODO Auto-generated catch block
  40. e.printStackTrace();
  41. }
  42. finally {
  43. DButil.close(conn);
  44. }
  45. return null;
  46. }
  47. }

java 向DB2插入数据相关推荐

  1. java向mysql插入数据乱码问题解决

    java向mysql插入数据乱码问题解决 参考文章: (1)java向mysql插入数据乱码问题解决 (2)https://www.cnblogs.com/jack204/archive/2012/0 ...

  2. java向数据库插入数据时的错误: Duplicate entry ‘‘ for key ‘PRIMARY‘ 问题解决

    java向数据库插入数据时的错误: Duplicate entry '' for key 'PRIMARY' 问题解决 参考文章: (1)java向数据库插入数据时的错误: Duplicate ent ...

  3. Java JDBC批处理插入数据操作

    在此笔记里,我们将看到我们如何可以使用像Statement和PreparedStatement JDBC API来批量在任何数据库中插入数据.此外,我们将努力探索一些场景,如在内存不足时正常运行,以及 ...

  4. Db2插入数据溢出报错测试

    本文是测试Db2数据库插入数据报错.具体来讲,是通过命令行.JDBC.Mybatis等各种方式,尝试把一个长度为11的字符串插入到 VARCHAR(8) 的字段,查看报错信息,方便以后遇到类似的错误时 ...

  5. java处理word插入数据转PDF及下载PDF

    欢迎使用Markdown编辑器 提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.引入jar包 二.使用步骤 1.前端上传电子签名图片 2.java下载电子签名图片 ...

  6. java实现批量插入数据

    //业务背景:在实现一次性插入上万条数据会报错误,所有要批量插入数据 public void addCouponCode(List<CouponCodeEntity> lists){if ...

  7. 解决Java向mysql插入数据时的乱码和时区问题

    解决乱码和时区问题需要在jdbc的链接url上添加参数 jdbc:mysql://mysql-server:3306/dbname?useSSL=false&useUnicode=true&a ...

  8. java mongodb 插入数据_mongoDB 插入数据 用java实现

    import java.net.UnknownHostException; import com.mongodb.BasicDBObject; import com.mongodb.DB; impor ...

  9. java mongodb 模糊查询_Java操作MongoDB插入数据进行模糊查询与in查询功能的方法

    Java操作MongoDB插入数据进行模糊查询与in查询功能 由于需要用MongoDB缓存数据,所以自己写了一套公共的存放和读取方法 具体如下: 存放mongodb: /** * 公共方法:设置Obj ...

  10. java mysql 插入 乱码_java向mysql插入数据乱码问题的解决方法

    遇到java向mysql插入数据乱码问题,如何解决? MySQL默认编码是latin1 mysql> show variables like 'character%'; +----------- ...

最新文章

  1. linux c 多态原理,看了所谓的面向对象中靠继承多态实现的所谓重用 哥笑了
  2. Windows下安装MySQL(解压版本)
  3. EasyUI中分页的简单使用
  4. java名片_javaweb名片管理系统
  5. php mysql sqlite缓存_使用sqlite作为数据缓存
  6. redis+mysql几种用法
  7. Python 数据分析实战,揭秘国内顶尖医院分布现状!
  8. 基于人机环境系统工程的智慧企业建设思考
  9. 二叉树非递归遍历思路总结
  10. 【黑马程序员】-c函数
  11. 用PYTHON优化投资组合的配置
  12. 高通WLAN框架学习(27)-- Types of regulatory 和WCNSS_qcom_cfg.ini配置参数
  13. JS数组的创建及正则表达式的对象
  14. 过压保护芯片,高输入电压(OVP)
  15. c盘增加一些html文件,教你三招,让C盘瞬间多出10个G
  16. AVI音视频封装格式学习(五)——h265与PCM合成AVI文件
  17. hihocoder 1054
  18. 广州Uber优步司机奖励政策(2月1日~2月7日)
  19. Linux内核模块it87出错
  20. 惊涛怪浪(double dam-break) -- position based fluids

热门文章

  1. windows下的vimrc
  2. [what is machine learning?]
  3. 题目1026:又一版 A+B
  4. basis问题专区(文档)
  5. 使用C# WinForm实现打印小票的功能
  6. Visual Studio附加调试进程时找不到
  7. Python socket.send()与socket.sendall()的区别
  8. python爬虫之BeautifulSoup4基础教程
  9. 05. Know what functions C++ silently writes and calls
  10. maven全局配置文件settings.xml详解