|
@ -1,7 +1,12 @@
|
1
|
1
|
package com.ai.ipu.service;
|
2
|
2
|
|
|
3
|
import java.util.Map;
|
|
4
|
import java.util.Map.Entry;
|
|
5
|
|
3
|
6
|
import org.springframework.context.support.ClassPathXmlApplicationContext;
|
4
|
7
|
|
|
8
|
import com.alibaba.dubbo.config.ProtocolConfig;
|
|
9
|
|
5
|
10
|
public class DubboServiceStart {
|
6
|
11
|
public final static String MODE = "simple";
|
7
|
12
|
public final static String DUBBO_PROVIDER_CONFIG = "dubbo-provider-" + MODE + ".xml";
|
|
@ -11,7 +16,27 @@ public class DubboServiceStart {
|
11
|
16
|
public static void main(String[] args) throws Exception {
|
12
|
17
|
ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(
|
13
|
18
|
new String[] {DUBBO_PROVIDER_CONFIG});
|
|
19
|
for (String arg:args)
|
|
20
|
{
|
|
21
|
if (arg.contains("-dubbo.protocal.port"))
|
|
22
|
{
|
|
23
|
String partPort = arg.trim().substring(arg.indexOf("-dubbo.protocal.port")+20);
|
|
24
|
int port = Integer.parseInt(partPort.substring(partPort.indexOf("=")+1).trim());
|
|
25
|
context = modifyBubboPort(context, port);
|
|
26
|
}
|
|
27
|
}
|
14
|
28
|
context.start();
|
15
|
29
|
System.in.read(); // press any key to exit
|
16
|
30
|
}
|
|
31
|
|
|
32
|
private static ClassPathXmlApplicationContext modifyBubboPort(ClassPathXmlApplicationContext context, int newPort)
|
|
33
|
{
|
|
34
|
Map<String, ProtocolConfig> beansOfType = context.getBeansOfType(ProtocolConfig.class);
|
|
35
|
for (Entry<String, ProtocolConfig> item : beansOfType.entrySet()) {
|
|
36
|
System.out.println("##################properties file###########################"+item.getValue().getPort());
|
|
37
|
System.out.println("##################use sure###########################"+newPort);
|
|
38
|
item.getValue().setPort(newPort);
|
|
39
|
}
|
|
40
|
return context;
|
|
41
|
}
|
17
|
42
|
}
|