簡體   English   中英

如何在Java / MySQL中查詢繼承的類類型?

[英]How to I query for the inherited class type in Java/MySQL?

Item是一個抽象類,由Material和Product兩個類實現。

分發實體具有項目類型的屬性“項目”。 如何檢查“項目”是否屬於產品類型? 現在,我正在使用它,但它似乎並不是最佳選擇。

"SELECT d FROM " + Distribution.class.getName() + " d, " + Product.class.getName() + " p WHERE d.item = p"

Product.class.getName()將返回完全限定的類名稱。

但是,如果您有類似以下內容:

Item item1= new Product();          Then 
item1.getClass().getSimpleName(); 

將返回Product作為String類型。

因此,您可以:

if(item1.getClass().getSimpleName().equals("Product")) {
    // Do something like 
    Product product = (Product)item1;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM