开发记录(第十六天)

第十六天:
今天完成了B4表格的数据库设计,并创建了相应的表。
实现了B4表格的DAO类,包括增、删、改、查等基本操作。
编写了初步的单元测试代码,验证了DAO层的正确性。
明天将继续开发B4表格的服务层,并进行更全面的测试。
// B4TableDAO.java
public class B4TableDAO {
private DataSource dataSource;

public B4TableDAO(DataSource dataSource) {
    this.dataSource = dataSource;
}

public void insertRecord(B4TableRecord record) {
    // 使用JDBC或其他持久化框架插入记录
}

public B4TableRecord queryRecordById(Long id) {
    // 使用JDBC或其他持久化框架查询记录
    return new B4TableRecord(); // 示例返回,实际应返回查询结果
}

public void updateRecord(B4TableRecord record) {
    // 使用JDBC或其他持久化框架更新记录
}

public void deleteRecordById(Long id) {
    // 使用JDBC或其他持久化框架删除记录
}

// 其他DAO方法...

}

// B4TableRecord.java
public class B4TableRecord {
private Long id;
private String columnC;
private int columnD;
// 其他字段...

// getters and setters...

}

// B4TableDAOTest.java
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;

public class B4TableDAOTest {
private B4TableDAO b4TableDAO;
private DataSource dataSource;

@BeforeEach
public void setUp() {
    dataSource = getDataSource();
    b4TableDAO = new B4TableDAO(dataSource);
}

@Test
public void testInsertAndQuery() {
    B4TableRecord record = new B4TableRecord();
    record.setColumnC("TestC");
    record.setColumnD(456);
    // 设置其他字段...

    b4TableDAO.insertRecord(record);

    B4TableRecord retrievedRecord = b4TableDAO.queryRecordById(record.getId());
    assertNotNull(retrievedRecord);
    assertEquals("TestC", retrievedRecord.getColumnC());
    assertEquals(456, retrievedRecord.getColumnD());
    // 验证其他字段...
}

@Test
public void testUpdateAndDelete() {
    B4TableRecord record = new B4TableRecord();
    record.setColumnC("OriginalC");
    record.setColumnD(123);
    // 设置其他字段...

    b4TableDAO.insertRecord(record);

    record.setColumnC("UpdatedC");
    record.setColumnD(789);
    // 更新其他字段...

    b4TableDAO.updateRecord(record);

    B4TableRecord updatedRecord = b4TableDAO.queryRecordById(record.getId());
    assertEquals("UpdatedC", updatedRecord.getColumnC());
    assertEquals(789, updatedRecord.getColumnD());
    // 验证其他更新后的字段...

    b4TableDAO.deleteRecordById(record.getId());

    B4TableRecord deletedRecord = b4TableDAO.queryRecordById(record.getId());
    assertNull(deletedRecord);
}

private DataSource getDataSource() {
    // 返回配置好的数据源对象
}

}

posted @ 2025-02-20 17:53  一只虎鲸  阅读(15)  评论(0)    收藏  举报