近期在用mina获取server的数据,但没有和spring进行集成,就利用ApplicationListener实现了自启动
package com.gamesvr.minaenpo; import javax.annotation.Resource; import org.springframework.context.ApplicationListener; import org.springframework.context.event.ContextRefreshedEvent; import com.gamesvr.minaclient.GameClientHandler; /** * * Copyright 2015年7月27日 * created by txxs * all right reserved */ public class ConnectHost implements ApplicationListener<ContextRefreshedEvent>{ @Resource(name="gameClientHandler") private GameClientHandler gameClientHandler; private static final String SERVERIP = ""; private static final int SERVERPORT = 1111; public GameClientHandler getGameClientHandler() { return gameClientHandler; } public void setGameClientHandler(GameClientHandler gameClientHandler) { this.gameClientHandler = gameClientHandler; } @Override public void onApplicationEvent(ContextRefreshedEvent arg0) { gameClientHandler.connectHost(gameClientHandler, SERVERIP, SERVERPORT); } }
同一时候能够再spring—bean.xml文件增加对此bean的管理
<bean id="connectHost" class="com.gamesvr.minaenpo.ConnectHost"> </bean>
利用此机制我们能够对一些数据进行启动时缓存,通过对service启动时的载入实现,并须要缓存的service实现ApplicationListener接口。