实训第二天(学生信息管理系统)

实训第二天(学生信息管理系统)
1.创建一个测试类TestStatusDaoImpl
在这里插入图片描述
2.代码如下
package net.zxk.student.test;
import net.zxk.student.bean.Status;
import net.zxk.student.dao.StatusDao;
import net.zxk.student.dao.impl.StatusDaoImpl;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;

public class TestStatusDaoImpl {
@Before
public void beforeTest(){
System.out.println(“单元测试开始了”);
}
@Test
public void testFindByID(){
StatusDao dao=new StatusDaoImpl();
Status status=dao.findById(1);
System.out.println(status );

}
@Test
public void testUpdate(){
    StatusDao dao =new StatusDaoImpl();
    Status status =dao.findById(1);
    status .setAuthor("小芳") ;
    dao.update(status);
    status =dao.findById(1);
    System.out.println(status);
}
@After
public void afterTest(){

    System.out.println("单元测试结束了");
}

}

测试结果如下
在这里插入图片描述
3.创建一个StudentDaoImpl(可以插入学生记录,利用insert into 语句。同样也可以删除记录)
package net.zxk.student.dao.impl;

import net.zxk.student.bean.Student;
import net.zxk.student.dao.StudentDao;
import net.zxk.student.dbutil.ConnectionManager;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.List;
import java.util.Vector;

/**

  • 功能:学生数据访问接口实现类

  • 作者:

  • 日期:2019年6月18日
    /
    public class StudentDaoImpl implements StudentDao {
    /
    *

    • 插入学生记录

    • @param student

    • @return
      */
      @Override
      public int insert(Student student) {
      // 定义插入记录数
      int count = 0;

      // 1. 获得数据库连接
      Connection conn = ConnectionManager.getConnection();
      // 2. 定义SQL字符串
      String strSQL = “insert into t_student (id ,name, sex, age, department, class, telephone)”
      + " values (?,?, ?, ?, ?, ?, ?)";
      try {
      // 3. 创建预备语句对象
      PreparedStatement pstmt = conn.prepareStatement(strSQL);
      // 4. 设置占位符的值
      pstmt.setString(1,student.getId());
      pstmt.setString(2, student.getName());
      pstmt.setString(3, student.getSex());
      pstmt.setInt(4, student.getAge());
      pstmt.setString(5, student.getDepartment());
      pstmt.setString(6, student.getClazz());
      pstmt.setString(7, student.getTelephone());
      // 5. 执行SQL,返回插入记录数
      count = pstmt.executeUpdate();
      // 6. 关闭预备语句对象
      pstmt.close();
      } catch (SQLException e) {
      e.printStackTrace();
      } finally {
      // 关闭数据库连接
      ConnectionManager.closeConnection(conn);
      }

      // 返回插入记录数
      return count;
      }

    @Override
    public int deleteById(String id) {
    // 定义删除记录数
    int count = 0;
    // 1. 获得数据库连接
    Connection conn = ConnectionManager.getConnection();
    // 2. 定义SQL字符串
    String strSQL = "delete from t_student where id=? ";
    try {
    // 3. 创建预备语句对象
    PreparedStatement pstmt = conn.prepareStatement(strSQL);
    // 4. 设置占位符的值
    pstmt.setString(1,id);

             // 5. 执行SQL,返回删除记录数
             count = pstmt.executeUpdate();
             // 6. 关闭预备语句对象
             pstmt.close();
         } catch (SQLException e) {
             e.printStackTrace();
         } finally {
             // 关闭数据库连接
             ConnectionManager.closeConnection(conn);
         }
    
         // 返回删除记录数
         return count;
     }
    

    @Override
    public int deleteByClass(String clazz) {
    return 0;
    }

    @Override
    public int deleteByDepartment(String department) {
    return 0;
    }

    @Override
    public int update(Student student) {
    return 0;
    }

    @Override
    public Student findById(String id) {
    return null;
    }

    @Override
    public List findByName(String name) {
    return null;
    }

    @Override
    public List findByClass(String clazz) {
    return null;
    }

    @Override
    public List findByDepartment(String department) {
    return null;
    }

    @Override
    public List findAll() {
    return null;
    }

    @Override
    public Vector findRowsBySex() {
    return null;
    }

    @Override
    public Vector findRowsByClass() {
    return null;
    }

    @Override
    public Vector findRowsByDepartment() {
    return null;
    }
    }

4.创建一个测试类来测试TestStudentDaoImpl
package net.zxk.student.test;

import net.zxk.student.bean.Student;
import net.zxk.student.dao.StudentDao;
import net.zxk.student.dao.impl.StudentDaoImpl;
import org.junit.Test;

/**

  • 功能:测试学生数据访问接口实现类

  • 作者:周许苛

  • 日期:2019年6月18日
    */
    public class TestStudentDaoImpl {
    @Test
    public void testInsert(){
    Student student=new Student();
    student.setId(“18101009”);
    student.setName(“小黑”);
    student.setSex(“男”);
    student.setAge(20);
    student.setDepartment(“信息工程系”);
    student.setClazz(“18大数据班”);
    student.setTelephone(“16786662556”);

     StudentDao dao=new StudentDaoImpl();
     int count=dao.insert(student);
     if(count>0){
         System.out.println("恭喜,学生记录添加成功!");
     }else{
         System.out.println("遗憾,学生记录添加失败!");
     }
    

    }
    @Test
    public void testDeleteById(){
    StudentDao dao=new StudentDaoImpl();
    String id=“18101005”;
    int count =dao.deleteById(id);
    if(count>0){
    System.out.println(“恭喜,学生记录删除成功!”);
    }else{
    System.out.println(“遗憾,学生记录删除失败!”);
    }
    }
    }

运行一下看结果
在这里插入图片描述
5.这里报错的原因是因为之前添加过该记录,不能重复添加
在这里插入图片描述
6.这是表中的数据,表示添加成功
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值