猿问

使用static方法和从Spring IOC 容器里面取出的方法有什么区别?

public interface CachedLoadService {

     Map<String,Object> loadHomeData();


}


public class CachedUtils {

    private static Date lastSearchTime=null;

    private static Map mapMediaList=null;


    static Object  lock = new Object();


    public static Map  getMediaList() {

        synchronized (lock) { 

            CachedLoadService cachedLoadService=(CachedLoadService) SpringContextUtil.getBean("cachedLoadService"); //或者其它业务类

            try {

                if(lastSearchTime==null) {

                    mapMediaList=cachedLoadService.loadHomeData();

                    lastSearchTime=new Date();

                } else {

                    if(mapMediaList==null) {

                        mapMediaList=cachedLoadService.loadHomeData();

                        lastSearchTime=new Date();

                    } else {

                        mapMediaList=cachedLoadService.loadHomeData();

                        lastSearchTime=new Date();

                    }

                }

                return mapMediaList;

            } catch (Exception e) {

                return mapMediaList;

            }

        }

    }

}


cachedLoadService.loadHomeData() 就是一个 final static Map<String,Object> ,还有必要去特意弄一个接口吗?这种做法的作用是什么?


Cats萌萌
浏览 678回答 3
3回答

烙印99

其实我也觉得没必要在每个 service 都写接口,除非那种复杂的业务,每个业务方法都接个接口烦都烦死了。

温温酱

你没有解决依赖问题,只是简单的解决对象创建问题,依赖才是最复杂的,
随时随地看视频慕课网APP

相关分类

Java
我要回答