随服务器启动加载数据

    在web应用下:

    可以通过servlet来实现。

    新建一个类继承javax.servlet.http.HttpServlet,然后将加载数据的代码放到init方法就可以了。具体代码如下:

public class StaticClass extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet
{
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private static String title =" StaticClass ";
	
	public void init(ServletConfig config) 
	{ 
		System.out.println("public void init(ServletConfig config) ###############################");
		setdata();
	} 
     
	
	/* (non-Java-doc)
	 * @see javax.servlet.http.HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException 
	{
	}  	
	
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException 
	{
	}
	
    public void setdata()
    {
    	try
		{
			Properties props = new Properties();
			props.setProperty("java.naming.factory.initial",
					"org.jnp.interfaces.NamingContextFactory");
			props.setProperty("java.naming.provider.url", "192.168.1.17:1099");
			props.setProperty("java.naming.factory.url.pkgs",
					"org.jboss.naming:org.jnp.interfaces");			
			InitialContext remotectx = new InitialContext(props);
			
			DeptTempMgr deptTempMgr = (DeptTempMgr)remotectx.lookup("Business/DeptTempMgrBean/remote");
			InetAddress inetAddress= deptTempMgr.getLocalIp();
		    String ipName = inetAddress.getHostAddress();
		    String homeName = inetAddress.getHostName();
		   // System.out.println("远程调用的主机内网ip是:"+ipName);
		    System.out.println("远程调用的主机名是:"+homeName);
		}
		catch (Exception e)
		{
			System.out.println(e);
		}
		
    }
    
}

 

   然后在web.xml配置一下:

 

	<servlet>
		<servlet-name>staticclass</servlet-name>
		<servlet-class>
			action.util.StaticClass
		</servlet-class>
		<load-on-startup>1</load-on-startup>   
	</servlet>
	
	<servlet-mapping>
		<servlet-name>staticclass</servlet-name>
		<url-pattern>/servlet/staticclass.jsp</url-pattern>
	</servlet-mapping>

 

  其中load-on-startup的含义是:容器启动时加载这个servlet的顺序,正常的取值范围是:负数,0-5,如果是负数或者没有这个标签,则容器在启动时不自动加载 这个servlet,如果是0-5,则按照顺序加载这个servlet,执行初始化方法init()。数字是0-5,加载顺序也是0-5。

  部署到服务器,启动服务器即可。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值