版本與升級

2018-06-02 09:28 更新

在實現(xiàn)類的聲明注解@Implement中,默認有個version值為1的屬性,在實現(xiàn)相同接口的實現(xiàn)類中,version值越大的,就會覆蓋version值小的。

對上面的接口再寫一個實現(xiàn)類,如下

package demo.dao.impl;

import java.util.List;

import org.myhibernate.mvc.annotation.Implement;

import demo.dao.ProductDao;
import demo.entity.Product;
@Implement(version=2)
public class ProductDaoImpl2 implements ProductDao
{
	public List<Product> findAll() throws Exception {
		System.out.println("ProductDaoImpl2 findAll 222");
		return null;
	}
}

這里指定version為2

再調(diào)用測試

public class Test {
	public static void main(String[] args) throws Exception
	{
		
		ProductDao productDao=(ProductDao)Factorys.getImpl(ProductDao.class);
		System.out.println("productDao="+productDao);
		productDao.findAll();
		
	}
}

控制臺輸出如下

productDao=demo.dao.impl.ProductDaoImpl2@3c954549

ProductDaoImpl2 findAll 222

可以看到獲取的就是version值高的實現(xiàn)類






以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號