Manual del programador - RPC
Enviado por Aeaman Backyardigans • 13 de Diciembre de 2022 • Apuntes • 1.750 Palabras (7 Páginas) • 55 Visitas
- Presentación:
Este programa permite llamar procedimientos alojados en un servidor para poder usarlo como lo requiera, este ejemplo es sobre una calculadora.
Proceso 1: Calculadora
Subproceso 1: Generar un servidor RPC.
Subproceso 2: Crear procedimientos de suma, resta, multiplicación y división.
Subproceso 3: Crear un Menú.
- Procesos
Proceso N° 1: Abrir el programa Netbeans
[pic 1]
[pic 2]
Proceso N° 2: Creamos nuevo proyecto.
[pic 3]
Proceso N° 3: Creamos un proyecto de tipo java.
[pic 4]
Proceso N° 4: Creamos dos paquetes.
[pic 5]
Proceso N° 5: Creamos las clases.
[pic 6]
Proceso N° 6: Insertar libreía.
[pic 7]
Proceso N° 7: Desarrollamos el código:
Clase: Calculadora
package Servidor;
public class Calculadora {
public String Suma(String a,String b){
return String.valueOf(Integer.parseInt(a)+Integer.parseInt(b));
}
public String Resta(String a,String b){
return String.valueOf(Integer.parseInt(a)-Integer.parseInt(b));
}
public String Multiplicacion(String a,String b){
return String.valueOf(Integer.parseInt(a)*Integer.parseInt(b));
}
public String Division(String a,String b){
return String.valueOf(Double.parseDouble(a)/Double.parseDouble(b));
}
}
En el código anterior primeramente se crean los procedimientos.
Clase: Servidor
package Servidor;
import javax.swing.JOptionPane;
import org.apache.xmlrpc.WebServer;
public class Servidor {
public static void main(String[] args) {
try{
JOptionPane.showMessageDialog(null, "Iniciando el Servidor");
WebServer server=new WebServer(8080);
Calculadora operacion=new Calculadora();
server.addHandler("servidorRPC", operacion);
server.start();
JOptionPane.showMessageDialog(null, "Servidor en Línea");
}catch(Exception e){
JOptionPane.showMessageDialog(null, "Error: "+e.getMessage());
}
}
}
En el código anterior creamos el servidor RPC alojando la clase para poder tener los procedimientos en el servidor.
Clase: Cliente
package Cliente;
import java.util.Vector;
import javax.swing.JOptionPane;
import org.apache.xmlrpc.XmlRpcClient;
public class Cliente {
public static void main(String[] args) {
String a="",b="";
Object resultado;
try{
XmlRpcClient cliente=new XmlRpcClient("http://192.168.1.21:8080");
Vector<String> parametros=new Vector<String>();
JOptionPane.showMessageDialog(null, "El cliente se ha conectado");
while(true){
String menu=JOptionPane.showInputDialog(null, "Calculadora\n"
+"1. Sumar\n"+"2. Restar\n"+"3. Multiplicar\n"+"4. Dividir\n"+"5. Salir\n","Servidor RPC",JOptionPane.DEFAULT_OPTION);
switch(menu){
case "1":
a=JOptionPane.showInputDialog(null, "Primer número", "Suma", JOptionPane.QUESTION_MESSAGE);
b=JOptionPane.showInputDialog(null, "Segundo número", "Suma", JOptionPane.QUESTION_MESSAGE);
...