• JDBC 笔记3 通过PreparedStatement 对数据库进行增删改查


    下面程序沿用上面的封装。


    1 插入数据

    public boolean ChaRu3(User user){
    boolean flag=true;
    Connection conn=null;
    PreparedStatement ps=null; //创建PreparedStatement 对象
    String sql= "insert into user (name,pwd) values(?,?)"; //sql语句不再采用拼接方式,应用占位符问号的方式写sql语句。
    conn=DBConnUtil.getConn();
    try {
    ps=conn.prepareStatement(sql);
    ps.setString(1, user.getName()); //对占位符设置值,占位符顺序从1开始,第一个参数是占位符的位置,第二个参数是占位符的值。
    ps.setString(2, user.getPwd());
    int i=ps.executeUpdate();
    if(i==0){
    flag=false;
    }
    } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }finally{
    DBConnUtil.closeAll(null, ps, conn);
    }
    return flag;

    }

    2 修改数据

    public boolean XiuGai3(User user){
    boolean flag=true;
    Connection conn=null;
    PreparedStatement ps=null;
    String sql="update user set pwd=? where name=?";
    conn=DBConnUtil.getConn();
    try {
    ps=conn.prepareStatement(sql);
    ps.setString(1, user.getPwd());
    ps.setString(2, user.getName());
    int i= ps.executeUpdate();
    if(i==0){
    flag=false;
    }

    } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }finally{
    DBConnUtil.closeAll(null, ps, conn);
    }
    return flag;
    }

    3 删除数据

    public boolean ShanChu3(int id){
    boolean flag=true;
    Connection conn=null;
    PreparedStatement ps=null;
    String sql="delete from user where id=?";
    conn=DBConnUtil.getConn();
    try {
    ps=conn.prepareStatement(sql);
    ps.setInt(1, id);
    int i=ps.executeUpdate();
    if(i==0){
    flag=false;
    }
    } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }finally{
    DBConnUtil.closeAll(null, ps, conn);
    }

    return flag;
    }

    4 查看数据

    public List<User> ChaKan3(){
    List<User> list= new ArrayList<User>();
    Connection conn=null;
    PreparedStatement ps=null;
    ResultSet rs=null;
    String sql="select * from user";
    conn=DBConnUtil.getConn();
    try {
    ps=conn.prepareStatement(sql);
    rs=ps.executeQuery();
    while(rs.next()){
    User user= new User();
    user.setName(rs.getString("name"));
    list.add(user);
    }
    } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }finally{
    DBConnUtil.closeAll(rs, ps, conn);
    }

    return list;
    }
  • 相关阅读:
    cannot implicitly convert type 'bool?' to 'bool'. An explicit conversion exists (are you missing a cast?)
    “校长风暴”来袭,《诺亚幻想》不删档数据惊艳
    地形植被编辑器
    游戏记录
    2016乐高迷们不能错过的十大乐高模型
    UI相关教程:HUD、UMG和Widget
    [UE4]C++中SpawnActor用法(动态创建Actor)
    [UE4][Canvas]用C++代码绘制血条(HealthBar)
    [UE4]C++代码实现播放粒子特效
    [UE4]C++实现动态加载的问题:LoadClass<T>()和LoadObject<T>() 及 静态加载问题:ConstructorHelpers::FClassFinder()和FObjectFinder()
  • 原文地址:https://www.cnblogs.com/zilong882008/p/2247065.html
Copyright © 2020-2023  润新知