package com.cloud.count.listener;
|
import com.cloud.count.dao.CountDao;
|
import com.cloud.count.model.CountState;
|
import com.cloud.count.model.People;
|
import com.cloud.count.service.CountService;
|
import com.cloud.count.service.serviceImpl.CountServiceImpl;
|
import com.cloud.count.utils.XmlUtil;
|
import org.slf4j.Logger;
|
import org.slf4j.LoggerFactory;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.context.ApplicationListener;
|
import org.springframework.context.event.ContextRefreshedEvent;
|
import org.springframework.stereotype.Service;
|
|
import java.io.*;
|
import java.net.ServerSocket;
|
import java.net.Socket;
|
import java.text.DateFormat;
|
import java.text.SimpleDateFormat;
|
import java.util.Date;
|
/**
|
* 计数监听器
|
*/
|
|
public class CountListener implements ApplicationListener<ContextRefreshedEvent> {
|
static ServerSocket server;
|
static Integer port = 2010;
|
|
@Override
|
public void onApplicationEvent(ContextRefreshedEvent contextRefreshedEvent) {
|
|
if(contextRefreshedEvent.getApplicationContext().getParent() !=null){
|
return;
|
}
|
|
new Thread(new Runnable() {
|
@Override
|
public void run() {
|
try {
|
server = new ServerSocket(port);
|
}
|
catch (IOException e){
|
e.printStackTrace();
|
}
|
|
while (true){
|
Socket client = null;
|
try{
|
client = server.accept();
|
new Thread(new CountThread(client)).start();
|
}catch (IOException ex){
|
|
}
|
}
|
}
|
}).start();
|
}
|
}
|