LINUX环境TOMCAT应用修改服务器IP
?
public class ChangeIp extends HttpServlet {protected void service(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {Process proc = Runtime.getRuntime().exec("/bin/bash", null, new File("/bin"));PrintWriter out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(proc.getOutputStream())), true);BufferedReader in = new BufferedReader(new InputStreamReader(proc.getInputStream()));out.println("route del default gw 192.168.5.1");out.println("ifconfig wlan0 192.168.5.106 netmask 255.255.255.0");out.println("route add default gw 192.168.5.1 dev wlan0");out.println("/home/sfeer/tomcat/bin/catalina.sh stop");try {Thread.sleep(2000);} catch (InterruptedException e) {e.printStackTrace();}out.println("/home/sfeer/tomcat/bin/catalina.sh start");String line;while ((line = in.readLine()) != null)System.out.println(line);try {proc.waitFor();} catch (InterruptedException e) {e.printStackTrace();}proc.destroy();}}
?
需要注意的几个地方:
wlan0为测试的无线网卡,一般环境为eth0或是eth1有线网卡
修改后建议重启TOMCAT,IP调整后建议执行应用的初始化和销毁程序片
重启TOMCAT可能需要一定时间,调整睡眠时间
?