如果你的javaweb项目是采用ssm框架或者ssh框架的,想要在tomcat启动时运行main函数方法,其实方法非常的简单,下面就就用一个小例子来让你1分钟内学会如何在tomcat中运行main方法。
步骤一:在你的java web项目中假如有一个main函数的类,如下。
package cn.com.baidu.common; public class TestDemo { public static void main(String[] args) { System.out.println("这是一个main方法!!!"); System.out.println("=============================="); System.out.println("socket启动成功啦!"); } }
步骤二:自定义一个RunMain.java的类,用反射来调用main函数,注意,反射必须写在构造函数中。
package cn.com.baidu.common; import java.lang.reflect.Method; public class RunMain { //构造方法 public RunMain() throws Exception { Class clazz = Class.forName("cn.com.xf.common.TestDemo"); Object obj = clazz.newInstance(); Method mainMethod = clazz.getMethod("main", String[].class); //public static void main(String[] args) mainMethod.invoke(obj, (Object)new String[]{"a", "b", "c"}); //String[]随便赋值的 // Method[] methods = clazz.getMethods(); // for (Method method : methods) { // if (method.getName().equals("main")) { // method.invoke(obj, (Object)new String[]{"aa","bb"}); // } // } } }
步骤三:在spring-context.xml(有些项目叫applicationContext.xml,知道就好)里面添加bean标签,如下。
<bean class="cn.com.baidu.common.RunMain"></bean>
当我们把web项目部署到tomcat并启动时,就会自动启动main函数了,如果你在main函数写的是socket,建议把socket端口和tomcat的端口设置成不同的。
No comments:
Post a Comment
Note: only a member of this blog may post a comment.