Nodejs tcp server ve java tcp client haberleşmesi

Arif Ceylan/ Ocak 4, 2014/ nodejs/ 0 comments

Bir projede kullanmak üzere nodejs tcp server ile haberleşen java uygulamasına ihtiyacım oldu.
Nodejs tcp server kodları ve bağlanıp veri gönderen java uygulamasının kodu aşağıda…

Node js için a.js

var javaPort = 8080;
var javaServer = require('net').createServer();
javaServer.on('listening', function () {
console.log('Server dinleniyor: ' + javaPort);
});
javaServer.on('error', function (e) {
console.log('Server hatası: ' + e.code);
});
javaServer.on('close', function () {
console.log('Server kapandı');
});
javaServer.on('connection', function (javaSocket) {
var clientAddress = javaSocket.address().address + ':' + javaSocket.address().port;
console.log('Java ' + clientAddress + ' bağlandı');
javaSocket.on('data',function(data){
var data1=data.toString('utf-8');
console.log(data1); 
});
javaSocket.on('close', function() {
console.log('Java ' + clientAddress + ' çıkış yaptı');
});
});

javaServer.listen(javaPort);

Java Uygulaması.
Client.java

package tcpclient;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.Socket;
public class Client {

public static void main(String[] args) {
// TODO Auto-generated method stub
try {
Socket nodejs = new Socket("sunucu ip numarası", 8080);
sendMessage(nodejs, "Merhaba...");
Thread.sleep(1000);
int x = 0;
while (true)
{
sendMessage(nodejs, x + "gönderildi \n");
x++;
Thread.sleep(1000);
System.out.println(x + " sunucuya gönderildi");

//bilgileri almak:

// System.out.print(readMessage(nodejs));

} 
} catch (Exception e) {
e.printStackTrace();
}
}
public static void sendMessage(Socket s, String message) throws IOException {
s.getOutputStream().write(message.getBytes("UTF-8"));
s.getOutputStream().flush();
}

public static String readMessage(Socket s) throws IOException {
InputStream is = s.getInputStream();
int curr = -1;
ByteArrayOutputStream baos = new ByteArrayOutputStream();
while ((curr = is.read()) != -1) {
if (curr == '\n') {
break;
}
baos.write(curr);
}
return baos.toString("UTF-8");
}


}

Gelen arama terimleri:

  • nodejs server
Share this Post

Leave a Comment

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>
*
*