contextfactory.java

来自「音乐网站涉及到很多数据库查询」· Java 代码 · 共 82 行

JAVA
82
字号
package publicBag;
import java.util.Properties;
import javax.ejb.*;
import javax.naming.*;
import javax.xml.parsers.*;
import org.w3c.dom.*;
import org.xml.sax.SAXException;
import java.io.*;

public class ContextFactory {
	public static Context getContext()
	{
		Context c = null;
		String ip = getIP();
		String port = getPort();
		Properties ps = new Properties();
		ps.setProperty(Context.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextFactory");
		ps.setProperty(Context.PROVIDER_URL,"t3://" + ip + ":" + port);
		try
		{
			c = new InitialContext(ps);				
		}
		catch(Exception e)
		{
			System.out.println("初始化Context失败!" + e);			
		}
		return c;
	}
	public static String getIP()
	{
		String ip = "";
		try
		{
			Document doc = getDocument();			
			Node ipNode = doc.getElementsByTagName("IP").item(0);			
			ip = ipNode.getFirstChild().getNodeValue();
		}
		catch(Exception e)
		{
			System.out.println("获取IP失败!" + e);
		}	
		return ip;
	}
	public static String getPort()
	{
		String port = "";
		try
		{
			
			Document doc = getDocument();
			Node portNode = doc.getElementsByTagName("port").item(0);
			port = portNode.getFirstChild().getNodeValue();
		}
		catch(Exception e)
		{
			System.out.println("获取port失败!" + e);
		}	
		return port;
	}
	public static Document getDocument()
	{
		Document doc = null;
		try
		{
			DocumentBuilderFactory dFactory=DocumentBuilderFactory.newInstance();
			DocumentBuilder builder=dFactory.newDocumentBuilder();
			doc = builder.parse(new File("ServerInfo.xml"));			
			
		}
		catch(Exception e)
		{
			System.out.println("解析ServerInfo.xml失败!" + e);
		}	
		return doc;
	}
	public static void main(String[] a)
	{
		System.out.println(getIP());
		System.out.println(getPort());
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?