数据库增删改查

本文介绍了一个简单的用户管理系统的设计与实现,包括增删改查等基本操作,并提供了具体的Java代码示例。
  1. //在数据库连接的基础上进行操作

    //新建user类

    package cn.edu.hpu.model;

    public class User {

    //定义私有变量


    private int id; private String username;
    private String password;

    //定义变量后Alt+Shift+s显示出方法,选中Generate Getters and Setters直接 出来以下方法

    public int getId() {
      return id;
    }

    public void setId(int id) {
      this.id = id;
    }

    public String getUsername() {
      return username;
    }

    public void setUsername(String username) {
      this.username = username;
    }

    public String getPassword() {
      return password;
    }

    public void setPassword(String password) {
      this.password = password;
    }

    }

  2.  

    //创建接口

    package cn.edu.hpu.service;

    import java.util.List;

    import cn.edu.hpu.model.User;

    public interface Manager {
    // 添加操作
    public boolean addUser(User user);
    // 删除操作
    public boolean delUserById(int id);
    // 修改操作
    public boolean updateUserById(int id,User user);
    // 查询操作
    public List<User> getAllUser();
    }

  3.  

        //接口实现

package cn.edu.hpu.service;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;

import javax.naming.spi.DirStateFactory.Result;

import com.mysql.jdbc.ResultSet;

import cn.edu.hpu.model.User;
import cn.edu.hpu.util.DBOperator;

public class ManagerImpl implements Manager{

 @Override
 //实现添加操作
 public boolean addUser(User user) {
  // TODO Auto-generated method stub
  
  boolean flag=false;
  String sql="insert into user(username,password) value(?,?)";
  Connection conn=DBOperator.getconnection();
  
  try {
   PreparedStatement pst=conn.prepareStatement(sql);
   pst.setString(1, user.getUsername());
   pst.setString(2, user.getPassword());
   pst.executeUpdate();
   flag=true;
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  return flag;
 }
 //实现删除操作
 @Override
 public boolean delUserById(int id) {
  // TODO Auto-generated method stub
  
  boolean flag=false;
  String sql="delete from user where id= "+id;
  Connection conn=DBOperator.getconnection();
  
  try {
   PreparedStatement pst=conn.prepareStatement(sql);
   //数据更新操作
   pst.executeUpdate();
    flag=true;
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  
  return flag;
 }
 //修改操作
 @Override
 public boolean updateUserById(int id, User user) {
  // TODO Auto-generated method stub
  
  boolean flag = true ;
  String sql = "update user set username=? , password=? where id = "+id ;
  Connection conn = DBOperator.getconnection() ;
  try {
   PreparedStatement pst = conn.prepareStatement(sql);
   
   pst.setString(1, user.getUsername());
   pst.setString(2, user.getPassword());
   //数据更新
   pst.executeUpdate() ;
   flag = true ;
   
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  return flag ;
 }
 //查询操作
 @Override
 public List<User> getAllUser() {
  // TODO Auto-generated method stub
  List<User>alluser = new ArrayList<>() ;
  Connection conn = null ;
  Statement st = null ;
  ResultSet rs = null ;
  
  String sql = "select * from user";
  conn = DBOperator.getconnection() ;
  try {
   st = conn.createStatement() ;
   rs = (ResultSet) st.executeQuery(sql);
   
   while(rs.next()){
    User user = new User () ;
    user.setId(rs.getInt("id"));
    user.setUsername(rs.getString("username"));
    user.setPassword(rs.getString("password"));
    
    alluser.add(user);
    
   }
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  
  
  return alluser;
 }

}

 

//对接口实现的测试

//连接测试成功后进行其他连接测试

package cn.edu.hpu.test;

import java.sql.Connection;
import java.util.List;

import cn.edu.hpu.model.User;
import cn.edu.hpu.service.Manager;
import cn.edu.hpu.service.ManagerImpl;
import cn.edu.hpu.util.DBOperator;

 

public class test {

 public static void main(String[] args) {
  // TODO Auto-generated method stub

//连接测试
//  Connection conn=DBOperator.getconnection();


//  if(conn!=null){
//   System.out.println("ok!");
//  }
//  else{
//   System.out.println("error!");
//  }
  //添加测试


//  Manager mng=new ManagerImpl();
//  User user=new User();
//  user.setUsername("whh");
//  user.setPassword("1223");


//  boolean flag=mng.addUser(user);


//  if(flag){
//   System.out.println("ok!");
//  }
//  else{
//   System.out.println("error!");
//  }

//数据添加

//  Manager mng=new ManagerImpl();
//  User user=new User();
//  user.setUsername("whh");
//  user.setPassword("1223");

//添加数据循环的次数,控制添加数据的条数
//  for(int i=1;i<20;i++)
//  mng.addUser(user);


  //删除测试
//  Manager mng=new ManagerImpl();
//  boolean flag=mng.delUserById(1);


//  if(flag){
//   System.out.println("ok");
//  }else{
//   System.out.println("error");
//  }


  //修改测试


//  Manager mng=new ManagerImpl();
//  User user=new User();
//  user.setUsername("wa");
//  user.setPassword("789");


//  boolean flag = mng.updateUserById(2, user);


//  if(flag){
//   System.out.println("ok");
//  }else{
//   System.out.println("error");
//  }


  //查询测试


  Manager mng=new ManagerImpl();
  List<User>alluser=mng.getAllUser();


  for(int i=0;i<alluser.size();i++){
   User user=alluser.get(i);
   System.out.println("id="+user.getId()+"  "+"username="+user.getUsername()+"  "+"password="+user.getPassword());
  }
  
 }

}

 

乐播投屏是一款简单好用、功能强大的专业投屏软件,支持手机投屏电视、手机投电脑、电脑投电视等多种投屏方式。 多端兼容与跨网投屏:支持手机、平板、电脑等多种设备之间的自由组合投屏,且无需连接 WiFi,通过跨屏技术打破网络限制,扫一扫即可投屏。 广泛的应用支持:支持 10000+APP 投屏,包括综合视频、网盘与浏览器、美韩剧、斗鱼、虎牙等直播平台,还能将央视、湖南卫视等各大卫视的直播内容一键投屏。 高清流畅投屏体验:腾讯独家智能音画调校技术,支持 4K 高清画质、240Hz 超高帧率,低延迟不卡顿,能为用户提供更高清、流畅的视觉享受。 会议办公功能强大:拥有全球唯一的 “超级投屏空间”,扫码即投,无需安装。支持多人共享投屏、远程协作批注,PPT、Excel、视频等文件都能流畅展示,还具备企业级安全加密,保障会议资料不泄露。 多人互动功能:支持多人投屏,邀请好友加入投屏互动,远程也可加入。同时具备一屏多显、语音互动功能,支持多人连麦,实时语音交流。 文件支持全面:支持 PPT、PDF、Word、Excel 等办公文件,以及视频、图片等多种类型文件的投屏,还支持网盘直投,无需下载和转格式。 特色功能丰富:投屏时可同步录制投屏画面,部分版本还支持通过触控屏或电视端外接鼠标反控电脑,以及在投屏过程中用画笔实时标注等功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值