package com.abc.dao;

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

import com.abc.entity.Student;
import com.abc.entity.Users;

public class UsersDao extends BaseDao {
 
 public Users findByNumber(int number)
 {
  
  Users users=null;
  Connection conn=null;
  PreparedStatement stat=null;
  ResultSet rs=null;  
  conn=this.getConn();
  String sql="select number,password,name,sex,email,tel,card from user where number=?";
  try {
   stat=conn.prepareStatement(sql);
   stat.setInt(1, number);
   rs=stat.executeQuery();
   while(rs.next())
   {    
    String password=rs.getString(2);
    String name=rs.getString(3);
    String sex=rs.getString(4);
    String email=rs.getString(5);
    String tel=rs.getString(6);
    String card=rs.getString(7);
    users=new Users(number,password,name,sex,email,tel,card);
    
   }
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }finally{
   this.closeAll(rs, stat, conn);
  }
  return users;
 }
 
 
 public int adduser(Users users)
 {
  int i=0;
  Connection conn=null;
  PreparedStatement stat=null;
  conn=this.getConn();
  String sql="insert into user(number,password,name,sex,email,tel,card) values(?,?,?,?,?,?,?)";
  try {
   stat=conn.prepareStatement(sql);
   stat.setInt(1, users.getNumber());
   stat.setString(2,users.getPassword());
   stat.setString(3, users.getName());
   stat.setString(4,users.getSex());
   stat.setString(5, users.getEmail());
   stat.setString(6, users.getTel());
   stat.setString(7, users.getCard());
   i=stat.executeUpdate();
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }finally{
   this.closeAll(null, stat, conn);
  }
  
  return i;
 }

public List<Users> findAll()
 {
  List<Users> list=new ArrayList<Users>();
  Connection conn=null;
  PreparedStatement stat=null;
  ResultSet rs=null;  
  conn=this.getConn();
  String sql="select number,password,name,sex,email,tel,card from user";
  try {
   stat=conn.prepareStatement(sql);
   rs=stat.executeQuery();
   while(rs.next())
   {
    int number=rs.getInt(1);
    String password=rs.getString(2);
    String name=rs.getString(3);
    String sex=rs.getString(4);
    String email=rs.getString(5);
    String tel=rs.getString(6);
    String card=rs.getString(7);
    //String name="zhu";
    Users stu=new Users(number,password,name,sex,email,tel,card);
    list.add(stu);
   }
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }finally{
   this.closeAll(rs, stat, conn);
  }  
  return list;
 }
 
 
 public int updateusers(Users users)
 {
  int i=0;
  Connection conn=null;
  PreparedStatement stat=null;
  conn=this.getConn();
  String sql="update user set password=?,name=?,sex=?,email=?,tel=?,card=? where number=?";
  try {
   stat=conn.prepareStatement(sql);
   stat.setString(1, users.getPassword());
   stat.setString(2, users.getName());
   stat.setString(3, users.getSex());
   stat.setString(4, users.getEmail());
   stat.setString(5, users.getTel());
   stat.setString(6, users.getCard());
   stat.setInt(7, users.getNumber());
   i=stat.executeUpdate();
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }finally{
   this.closeAll(null, stat, conn);
  }
  
  return i;
 }
 
 public int deleteUsersByNumber(int number)
 {
  int i=0;
  Connection conn=null;
  PreparedStatement stat=null;
  conn=this.getConn();
  String sql="delete from user where number=?";
  try {
   stat=conn.prepareStatement(sql);
   stat.setInt(1, number);
   i=stat.executeUpdate();
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }finally{
   this.closeAll(null, stat, conn);
  }
  
  return i;
 }

}

增删改查,连接数据库UsersDao的更多相关文章

  1. Java通过JDBC连接数据库的三种方式!!!并对数据库实现增删改查

    前言 java连接数据库完整流程为: 1,获得驱动(driver),数据库连接(url),用户名(username),密码(password)基本信息的三种方式. 2,通过获得的信息完成JDBC实现连 ...

  2. 用javaweb连接数据库用javabean、severlet实现增删改查

    样 很重要的一点是建立数据库的连接 数据库是一切操作的前提 不管是增加 删除 修改 查询 都需要调用数据库连接程序 再就是java的类的编写  写完类后需要对其进行增删改查方法的 编写 这是dao层的 ...

  3. Java连接数据库,及增删改查

    自定义连接数据库的util类 package com.shuzf.jdbc; import java.sql.Connection; import java.sql.DriverManager; im ...

  4. javaweb连接数据库并完成增删改查

    一.连接数据库 1.mysql数据库的安装和配置 在网上找到了篇关于mysql的安装详细说明,供读者自己学习 https://www.jb51.net/article/23876.htm 2.mysq ...

  5. 纯Java JDBC连接数据库,且用JDBC实现增删改查的功能

    Java JDBC连接数据库 package cn.cqvie.yjq; import java.sql.*; /** * 注册数据库的驱动程序,并得到数据库的连接对象 * @author yu * ...

  6. 基于springmvc、ajax,后台连接数据库的增删改查

    前言 前段时间在博客园上找了一个springmvc的例子,照着学了一下,算是对springmvc有了一个初步的了解,打一个基础,下面是链接.(我只看了博客,视频太耗时间了) 博客链接:http://w ...

  7. java+jsp+sqlserver实现简单的增删改查操作 连接数据库代码

    1,网站系统开发需要掌握的技术 (1)网页设计语言,html语言css语言等 (2)Java语言 (3)数据库 (4)等 2,源程序代码 (1) 连接数据库代码 package com.jaovo.m ...

  8. Django框架之第二篇--app注册、静态文件配置、form表单提交、pycharm连接数据库、django使用mysql数据库、表字段的增删改查、表数据的增删改查

    本节知识点大致为:静态文件配置.form表单提交数据后端如何获取.request方法.pycharm连接数据库,django使用mysql数据库.表字段的增删改查.表数据的增删改查 一.创建app,创 ...

  9. Django 文件配置、pycharm及django连接数据库、表的增删改查 总结

    静态文件配置 1.你在浏览器中输入网址能够有响应的资源返回给你 是因为后端已经提前给你开设该资源的接口,也就意味着你所能 访问到的资源 都是人家事先定义好的 2.django如何给用户开设资源接口呢? ...

  10. Django 之 文件配置、pycharm及django连接数据库、创表及表的增删改查02

    目录 创建项目后的文件夹配置 静态文件配置 接口前缀动态绑定 form表单回顾 根据请求方式的不同,返回前端不同的信息 pycharm 连接MYSQL数据库 Django 连接MYSQL数据库的配置 ...

随机推荐

  1. Python入门--17--pickle

    pickle模块,实际用途也很简单.单一,主要用于保存列表(list),元祖(Tuple),字典(dictionary) 当然,一定是大的列表.字典什么的,成千上万行的字典.列表,才能凸显出它的用武之 ...

  2. 删除指定文件夹下所有的.svn文件夹

      sudo find /目录 -name ".svn" -exec rm -r {} \;

  3. git add 错误修改方法

    git add a.txt 报如下错误: fatal: Unable to create 'E:/git/.git/index.lock': File exists. Another git proc ...

  4. Vue.js实战:初识Vue.js

    一.Vue.js是什么 简单小巧的核心,渐进式技术栈,足以应付任何规模的应用. 简单小巧指的是Vue.js 压缩后大小仅有17KB 所谓渐进式(Progressive)就是你一步一步,有阶段性地来使用 ...

  5. 海量端口扫描工具masscan

    海量端口扫描工具masscan   masscan号称是互联网上最快的端口扫描工具,可以6分钟扫描整个互联网,每秒可以发送一百万个数据包.为了提高处理速度,masscan定制了TCP/IP栈,从而不影 ...

  6. iOS -- SpriteKit框架之SKPhysicsBody的移动和连接

      SKPhysicsBody的受力移动 SKPhysicsBody对象不同于SKSpriteNode对象.SKSpriteNode对象可以通过添加动作来进行移动,SKPhysicsBody对象却没有 ...

  7. Leetcode 232 Implement Queue using Stacks 和 231 Power of Two

    1. 232 Implement Queue using Stacks 1.1 问题描写叙述 使用栈模拟实现队列.模拟实现例如以下操作: push(x). 将元素x放入队尾. pop(). 移除队首元 ...

  8. 【Nginx】事件驱动框架和异步处理

    Nginx对请求的处理是通过事件触发的,模块作为事件消费者,仅仅能被事件收集.分发器调用.这与传统的Webserver是不同的. 传统的Webserver下,一个请求由一个进程消费.请求在建立连接后将 ...

  9. 百科知识 .e,.ec文件如何打开

    1 .e是易语言源文件,你可以从以下网址下载e语言编程环境: http://www.xiazaiba.com/html/409.html   2 安装之后会自动关联.e文件.   3 打开一个e语言文 ...

  10. 实现Activity的滑动返回效果

    介绍 在知乎client上看到了这样的效果.左滑Activity能够返回到上一界面.非常适合单手操作. 找了非常久,最终在github上看到了SwipeBackLayout这个开源项目.地址: htt ...