Category Archives: Source

source, example, sample
로직이 포함된 내용을 소스기반으로 설명합니다.

[Source | Nodejs] 방화벽 확인

다수의 서버에 포트 오픈여부를 확인하기 위한 코드를 정리합니다.


작성일 : 2022-01-26
nodeJs Ver : v16.13.1


1> 코드작성 (checkPort.js)

// For Execute Shell
//   node checkPort.js > checkPortResult.log
const net = require("net");
const target = require("./target");

const checkport = (host, port) => {
    return new Promise((resolve, reject) => {
        const socket = new net.Socket();
        socket.on("connect", () => {
            socket.destroy();
            resolve({host, port, isAlive: true});
        });
        socket.on("timeout", () => {
            socket.destroy();
            resolve({host, port, isAlive: false});
        });
        socket.on("error", (exception) => {
            //console.error(exception);
            socket.destroy();
            resolve({host, port, isAlive: null});
        });
        socket.setTimeout(target.checkTimeout);
        socket.connect(port, host);
    });
};

const checkNext = () => {    
    const targetInfo = target.serverList.shift().split(":");
    const name = targetInfo.pop().trim();
    const port = targetInfo.pop().trim();
    const host = targetInfo.pop().trim();
    checkport(host, port).then(result => {
        console.log(`${result.isAlive ? "O" : "X"}\t${name}\t${result.host}:${result.port}`);
        if(target.serverList.length <= 0) {
            return;
        } else {
            checkNext();
        }
    });
};

checkNext();

2> 체크 타임아웃과 대상서버 목록 (target.js)

exports.checkTimeout = 3000;
exports.serverList = [
    // IP : PORT : NAME
    "223.130.200.104 : 80 : NAVER",
    "223.130.200.105 : 8080 : NAVER-ERROR",
];

3> 다음 명령으로 실행하면 결과가 파일(checkPortResult.log)에 작성된다.

node checkPort.js > checkPortResult.log

[Source | Java] Timestamp to Date & Date to String

Java에서 Timestamp를 String으로 변환하는 코드를 정리한다.


작성일 : 2021-06-18


// Define
long timestamp = 1623972777000L;
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");

1> Timestamp to Date

Date date = new Date(timestamp);
System.out.println(date);

2> Date to String

String dateStr = dateFormat.format(date);
System.out.println(dateStr);

3> String to Timestamp

[Link – String to Date & Date to Timestamp]

[Source | Java] String to Date & Date to Timestamp

Java에서 String을 Timestamp로 변환하는 코드를 정리한다.


작성일 : 2021-06-18


// Define
String dateStr = "2021-06-18 08:32:57";
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");

1> String to Date

Date date = dateFormat.parse(dateStr);
System.out.println(date);
System.out.println(dateFormat.format(date));

2> Date to Timestamp

Long timestamp = date.getTime();
System.out.println(timestamp);

3> Timestamp to String

[Link – Timestamp to Date & Date to String]