Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Dane wiosenne jpa findByDate zawsze zwraca pustą listę

Czy wygenerowałeś swój schemat bazy danych? Czy próbowałeś go wygenerować?

Jeśli możliwe jest generowanie (z upuszczaniem), ustaw następującą właściwość w aplikacji.properties.

spring.jpa.hibernate.ddl-auto=create-drop

Potencjalnie masz w bazie danych różne typy danych (np. data vs. data i godzina) i są one używane przez dane wiosenne. Odtworzyłem Twój projekt i wszystko działało dobrze z H2 i MySQL.

EDYCJA:

Spróbuj zaktualizować opis kolumny w następujący sposób:

@Column(name = "creation", columnDefinition="TIMESTAMP(6)")
@Temporal(TemporalType.TIMESTAMP)
private Date creation;

Mogą istnieć różne precyzje. Zobacz mój kod:

Zamówienie klasy.

@Entity
@Table(name = "Ordr")
public class Order implements Serializable {

    private static final long serialVersionUID = 1L;

    @Id
    @GeneratedValue(strategy=GenerationType.AUTO)
    private Long id;

    @Column(name = "creation", columnDefinition="TIMESTAMP(6)")
    @Temporal(TemporalType.TIMESTAMP)
    private Date creation;

    // getters and setters
}

Przetestuj klasę fasoli.

@Component
public class SomeBean {

    @Autowired
    private OrderRepository orderRepository;

    @PostConstruct
    public void init() {

        Date date = new Date();

        Order order = new Order();
        order.setId(1L);
        order.setCreation(date);

        orderRepository.save(order);

        Date creationFromDB = orderRepository.findOne(1L).getCreation();

        System.out.println("eq? : "+ new Date(creationFromDB.getTime()).equals(order.getCreation()));
        List<Order> ods = orderRepository.findByCreation(creationFromDB);
        List<Order> ods2 = orderRepository.findByCreation2(creationFromDB);
        System.out.println("\n ods.size: " + ods.size() +", ods2.size: "+ods2.size());

    }
}

Wynik:równ? :trueods.size:1, ods2.size:1

Zapytanie bazy danych:

mysql> select * from ordr;
+----+----------------------------+
| id | creation                   |
+----+----------------------------+
|  1 | 2016-08-03 15:15:12.386000 |
+----+----------------------------+
1 row in set (0,00 sec)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dane hierarchiczne — zagnieżdżony model zestawu:MySql

  2. Konwersja z mysql do mysqli (mysql_fetch_array)

  3. Jaki jest najlepszy sposób przechowywania obrazów użytkowników przy użyciu PHP i MySQL?

  4. Policz wystąpienia DISTINCT wartości

  5. MySQL - zapytanie UPDATE za pomocą instrukcji SET zależnej od wyniku poprzedniej instrukcji SET