Commit e32c2517 authored by terrymanu's avatar terrymanu
Browse files

refactor repository module

parent 0de5d66e
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -88,11 +88,11 @@ public final class RawOrderItemRepository implements OrderItemRepository {
    }
    
    @Override
    public void delete(final Long id) {
    public void delete(final Long orderItemId) {
        String sql = "DELETE FROM t_order_item WHERE order_item_id=?";
        try (Connection connection = dataSource.getConnection();
             PreparedStatement preparedStatement = connection.prepareStatement(sql)) {
            preparedStatement.setLong(1, id);
            preparedStatement.setLong(1, orderItemId);
            preparedStatement.executeUpdate(sql);
        } catch (final SQLException ignored) {
        }
+2 −2
Original line number Diff line number Diff line
@@ -86,11 +86,11 @@ public final class RawOrderRepository implements OrderRepository {
    }
    
    @Override
    public void delete(final Long id) {
    public void delete(final Long orderId) {
        String sql = "DELETE FROM t_order WHERE order_id=?";
        try (Connection connection = dataSource.getConnection();
             PreparedStatement preparedStatement = connection.prepareStatement(sql)) {
            preparedStatement.setLong(1, id);
            preparedStatement.setLong(1, orderId);
            preparedStatement.executeUpdate();
        } catch (final SQLException ignored) {
        }
+5 −5
Original line number Diff line number Diff line
@@ -52,14 +52,14 @@ public final class XaOrderItemRepository implements OrderItemRepository {
    }
    
    @Override
    public Long insert(final OrderItem entity) {
        insertFailure(entity);
        return insertSuccess(entity);
    public Long insert(final OrderItem orderItem) {
        insertFailure(orderItem);
        return insertSuccess(orderItem);
    }
    
    @Override
    public void delete(final Long id) {
        execute(String.format("DELETE FROM t_order_item WHERE order_item_id = %d", id));
    public void delete(final Long orderItemId) {
        execute(String.format("DELETE FROM t_order_item WHERE order_item_id = %d", orderItemId));
    }
    
    @Override
+5 −5
Original line number Diff line number Diff line
@@ -52,14 +52,14 @@ public final class XaOrderRepository implements OrderRepository {
    }
    
    @Override
    public Long insert(final Order entity) {
        insertFailure(entity);
        return insertSuccess(entity);
    public Long insert(final Order order) {
        insertFailure(order);
        return insertSuccess(order);
    }
    
    @Override
    public void delete(final Long id) {
        execute(String.format("DELETE FROM t_order WHERE order_id = %d", id));
    public void delete(final Long orderId) {
        execute(String.format("DELETE FROM t_order WHERE order_id = %d", orderId));
    }
    
    @Override
+42 −26
Original line number Diff line number Diff line
@@ -27,50 +27,66 @@ import java.util.List;

public class RawDemoService {
    
    private final RawOrderRepository rawOrderRepository;
    private final RawOrderRepository orderRepository;
    
    private final RawOrderItemRepository rawOrderItemRepository;
    private final RawOrderItemRepository orderItemRepository;
    
    public RawDemoService(final RawOrderRepository rawOrderRepository, final RawOrderItemRepository rawOrderItemRepository) {
        this.rawOrderRepository = rawOrderRepository;
        this.rawOrderItemRepository = rawOrderItemRepository;
    public RawDemoService(final RawOrderRepository orderRepository, final RawOrderItemRepository orderItemRepository) {
        this.orderRepository = orderRepository;
        this.orderItemRepository = orderItemRepository;
    }
    
    public void demo() {
        rawOrderRepository.createTableIfNotExists();
        rawOrderItemRepository.createTableIfNotExists();
        rawOrderRepository.truncateTable();
        rawOrderItemRepository.truncateTable();
        List<Long> orderIds = new ArrayList<>(10);
        initTables();
        List<Long> orderIds = insertData();
        printData();
        deleteData(orderIds);
        printData();
        cleanTables();
    }
    
    private void initTables() {
        orderRepository.createTableIfNotExists();
        orderItemRepository.createTableIfNotExists();
        orderRepository.truncateTable();
        orderItemRepository.truncateTable();
    }
    
    private List<Long> insertData() {
        System.out.println("1.Insert--------------");
        List<Long> result = new ArrayList<>(10);
        for (int i = 0; i < 10; i++) {
            Order order = new Order();
            order.setUserId(51);
            order.setStatus("INSERT_TEST");
            rawOrderRepository.insert(order);
            long orderId = order.getOrderId();
            orderIds.add(orderId);
            
            orderRepository.insert(order);
            OrderItem item = new OrderItem();
            item.setOrderId(orderId);
            item.setOrderId(order.getOrderId());
            item.setUserId(51);
            item.setStatus("INSERT_TEST");
            rawOrderItemRepository.insert(item);
            orderItemRepository.insert(item);
            result.add(order.getOrderId());
        }
        System.out.println("Order Data--------------");
        System.out.println(rawOrderRepository.selectAll());
        System.out.println("OrderItem Data--------------");
        System.out.println(rawOrderItemRepository.selectAll());
        return result;
    }
    
    private void deleteData(final List<Long> orderIds) {
        System.out.println("2.Delete--------------");
        for (Long each : orderIds) {
            rawOrderRepository.delete(each);
            rawOrderItemRepository.delete(each);
            orderRepository.delete(each);
            orderItemRepository.delete(each);
        }
    }
    
    private void printData() {
        System.out.println("Order Data--------------");
        System.out.println(rawOrderRepository.selectAll());
        System.out.println(orderRepository.selectAll());
        System.out.println("OrderItem Data--------------");
        System.out.println(rawOrderItemRepository.selectAll());
        rawOrderItemRepository.dropTable();
        rawOrderRepository.dropTable();
        System.out.println(orderItemRepository.selectAll());
    }
    
    private void cleanTables() {
        orderItemRepository.dropTable();
        orderRepository.dropTable();
    }
}
Loading