Galera
Estou aprendendo a usar esse duas e maravilhosas ferramentas para a criação de sistemas servidores mais acho que muita coisa para aprender por si só
criei um sisteminha pequeno e eu gostaria que alguem que trabalhe no ramo pude-se avaliar ele , bom la vai ele
Este sistema é dividido em 5 classes; 2 main (o main do server e o outro do client) , 2 threads (um e para os tratamentos de aplicação dos clients e o outro e para cria o thread de tratamento) e o ultimo e um gestor de sockets - ele não eh um extends socket , ele so tem o atributo que e um vetor de sockets estáticos)
os códigos fontes :
import java.io.;
import java.net.;
public class SocketController {
public static Socket[] socket = new Socket[6];
public static ServerSocket serverSocket;
public SocketController() {
}
}
import java.io.;
import java.net.;
public class Process extends Thread {
public Socket socket;
public int numProcess;
public Process(Socket socket,int numProcess) {
this.socket = socket;
this.numProcess = numProcess;
}
public void run () {
try {
DataInputStream in = new DataInputStream (socket.getInputStream());
String clientMsg = in.readUTF();
System.out.println("O Client '" + numProcess + "' Escreveu '" + clientMsg +"';");
}
catch (Exception e) {
}
}
}
import java.io.;
import java.net.;
public class BuildProcess extends Thread {
public Socket socket;
public Process process;
public int userNum;
public BuildProcess(Process process,Socket socket,int userNum) {
this.process = process;
this.socket = socket;
this.userNum = userNum;
}
public void run () {
try {
if (socket.isConnected()) {
System.out.println(userNum + " Conexões Obtidas");
System.out.println("Criando o Thread " + userNum);
process = new Process(socket,userNum);
process.start();
//Thread.sleep(5000);*/ <- isso eu usei para simular um
//tratamento de conexão congestionado
}
else {
System.out.println("A Tentativa de Conexão nº" + userNum + " Falhou");
}
}
catch (NullPointerException e) {
System.out.println(e.getMessage());
}
}
}
import java.io.;
import java.net.;
public class Main {
public static Process process[] = new Process[6];
public static SocketController socketController = new SocketController();
public Main() {
}
public static void main (String args[]) {
try {
socketController.serverSocket = new ServerSocket(999,5);
}
catch (Exception e) {
}
int userNum = 0;
while (userNum < 5) {
userNum++;
try {
socketController.socket[userNum] = socketController.serverSocket.accept();
new BuildProcess (process[userNum],socketController.socket[userNum],userNum).start();
}
catch (Exception e) {
System.out.println(e.getMessage());
}
}
}
}
import java.io.;
import java.net.;
public class Client {
public Client() {
}
public static void main (String args[]) {
try {
Socket socket = new Socket("localhost",999);
System.out.println(socket.getLocalPort());
Thread.sleep(5000);
if (socket.isConnected()) {
DataOutputStream out = new DataOutputStream(socket.getOutputStream());
out.writeUTF("Essa Mensagem Veio do Client");
}
else {
System.out.println("A conexão não foi realizada");
}
}
catch (Exception e) {
System.out.println(e.getMessage());
}
}
}
Bom esse foi o sistema que eu elaborei , agora eu pesso a opinião de vocês tanto pra ajudar,criticar,elogiar na verdade venho a procura de um caminho , se eu já estou no caminho certo e continue ou se preciso ainda aprender algo e se isso , onde encontrar esses enssinamentos , em fim quero converça sobre esse assunto.
qulaquer coisa - [email removido] -
=b