Java JDBC操作Mysql数据库增删改查,分页查询实例详解(源码)

配置信息

public static final String USER_NAME = "root";
public static final String PWD = "123456789";
public static final String DRIVER = "com.mysql.jdbc.Driver";
public static final String URL = "jdbc:mysql://localhost:3306/web_demon";
/** 分页查询默认每页记录条数 */
public static final int PAGE_SIZE_DEFAULT = 10;

获取数据库连接对象

**
   * 获取数据库连接
   * @return 数据库连接对象
   */
  public Connection getConnection(Connection conn) {
    if(conn == null){
      try {
        Class.forName(Config.DRIVER);
        conn = DriverManager.getConnection(Config.URL, Config.USER_NAME, Config.PWD);
      } catch (Exception e) {
        e.printStackTrace();
      }
    }
    return conn;
  }

封装增删改操作

/**
   * 新增,删除,插入操作
   * @param sql 执行的sql语句
   *      例如:新增语句 "insert into user (name,sex) values (?,?)";
   *       删除语句  "delete from user where id=?";
   *       修改语句  "update user set name=?,sex=? where id=? and sex=?";
   * @param values 对应的参数值
   * @return 影响条数,-1为异常
   */
  private int execute(String sql,Object... values){
    Connection conn = null;
    PreparedStatement pStmt = null;
    try {
      conn = this.getConnection(conn);
      pStmt = conn.prepareStatement(sql);
      //设置参数
      if(pStmt != null && values != null && values.length > 0){
        for (int i = 0; i < values.length; i++) {
          pStmt.setObject(i+1, values[i]);
        }
      }
      int i =pStmt.executeUpdate();
      return i;
    } catch (Exception e) {
      e.printStackTrace();
    } finally {
      if (conn != null) {
        this.closeConnection(conn);
      }
    }
    return -1;
  }

新增,删除,修改方法调用示例

//新增
public static void insert(){
    String sql = "insert into user (name,sex) values (?,?)";
    Object[] values = new Object[]{"李四",0};
    int res = baseImp.execute(sql, values);
    System.out.println("insert res="+res);
  }
//删除
public static void delete(){
    String sql = "delete from user where id=?";
    Object[] values = new Object[]{2};
    int res = baseImp.execute(sql, values);
    System.out.println("delete res="+res);
  }
//更新
public static void update(){
    String sql = "update user set name=?,sex=? where id=? and sex=?";
    Object[] values = new Object[]{"张三",1,1,0};
    int res = baseImp.execute(sql, values);
    System.out.println("update res="+res);
  }

125jz网原创文章。发布者:江山如画,转载请注明出处:http://www.125jz.com/4929.html

(0)
江山如画的头像江山如画管理团队
上一篇 2020年2月19日 下午7:24
下一篇 2020年2月20日 下午5:59

99%的人还看了以下文章

  • jsp日期控件lhgcalendar下载

    资源类别:编程开发软件大小:377KB推荐等级:★★★★★资源语言:简体中文授权方式:免费版软件属性:国产软件应用平台:Win9X,Win2000,WinXP,Win2003,Vista,Unix,Linux lhgcalendar简介 非常好用的JSP日历控件,功能强大。可以实现: 1. 在控件下面或右面弹出日历组件(默认是在下面弹出) 2. 通过按钮或图…

    2019年10月8日
    2.8K0
  • 使用Eclipse和Android Studio进行移动开发有什么不同?

    在Google I/O 2013发布会上谷歌推出了AndroidStudio开发者工具,该工具的开发环境和模式更加的丰富和便捷。 AndroidStudio的正式版发布时间是14年12月,谷歌宣布Android Studio将取代Eclipse,正式成为官方集成开发软件,并中止对后者支持。目前进行移动开发,仍有不少互联网公司是使用eclipse,eclips…

    2018年2月9日
    3.7K0
  • 全!最详细的mysql新手安装教程

    数据库排名:Oracle,mysql和 Microsoft SQL Server 仍占据前三名。 Mysql是什么? mysql是一个关系型数据库软件,由瑞典MySQL AB公司开发,目前属于Oracle公司。 为什么使用mysql? 1)mysql是开源的,所以你不需要支付额外的费用就能使用。 2)mysql支持大型的数据库。可以处理拥有上千万条记录的大型…

    2023年1月28日 编程开发
    2.8K0
  • 推荐!一个通用的javaBean很方便的实现连接数据库、查询、插入、修改功能

    这是一个通用的javaBean,能够很方便的实现连接数据库、查询、插入、修改功能。、 package com.common; import java.sql.*; public class DataBaseConn { public Connection conn = null; public void createConn(){ String DRIVER…

    2020年12月6日
    1.5K0
  • 5分钟快速入门AJAX

    什么是AJAX? 第一步:如何发出一个HTTP请求第二步:处理服务器的响应第三步:一个简单的例子第四步:与XML响应协同工作 什么是AJAX AJAX是一个新的合成术语,隐含了两个已经存在多年的JavaScript特性,但是直到最近,随着一些诸如Gmail、Google Suggest以及Google Maps的轰动,才被许多网络开发者所注意到。 我们所讨论…

    2020年4月4日
    1.9K0
  • 第一课:maven是什么,为什么使用Maven?

    maven是一款服务于java平台的自动化构建工具。

    2023年1月27日
    8940

发表回复

登录后才能评论