elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Estamos en la red social de Mastodon


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Ingreso, almacenamiento y visualización de datos por pantalla
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Ingreso, almacenamiento y visualización de datos por pantalla  (Leído 5,384 veces)
BackToTheFuture

Desconectado Desconectado

Mensajes: 9


Ver Perfil
Ingreso, almacenamiento y visualización de datos por pantalla
« en: 14 Abril 2015, 16:29 pm »

Hola, supongamos que tengo los siguientes datos, correspondientes a un profesional de la salud:

Apellido: xxxxxxx
Nombre: xxxxxxx
Especialidad: xxxxxxx
Número de matrícula: xxxxxx

(en las x puede ir un dato cualquiera)

Tengo que hacer un programa en Java que me permita ingresar esos datos por teclado, almacenarlos en alguna estructura de datos y luego mostrarlos por pantalla.

La verdad no sé muy bien por donde empezar y no sé que estructura de datos utilizar, soy novato en esto.

Agradezco enormemente la ayuda que me puedan brindar.

Muchas Gracias.

Saludos!



En línea

Usuario Invitado


Desconectado Desconectado

Mensajes: 625



Ver Perfil
Re: Ingreso, almacenamiento y visualización de datos por pantalla
« Respuesta #1 en: 14 Abril 2015, 17:14 pm »

Hola. Veamos qué escenarios tienes:

1) Tienes una base de datos.
2) No tienes base de datos.
3) Aplicación web.
4) Aplicación desktop.

Opción 1

Debes usar el paquete java.sql para poder interactuar con ella. Si quieres algo más práctico y funcional, puedes usar JPA (con Hibernate o EclipseLink).

Opción 2

Debes usar alguna objeto como NavigableMap/TreeMap o Map/HashMap y declararlo estático, ésto para simular una base de datos.

Opción 3:

Opciones:

  • Simple 1: JSP's y Servlets + JDBC estándar.
  • Simple 2: JSP's y Servlets + JPA y AJAX.
  • Avanzada 1: JSF + JPA (AJAX incluido).
Opción 4:

Opciones:

  • AWT: Obsoleto.
  • Swing: Obsoleto (hablo desde la perspectiva del desarrollo actual).
  • JavaFX: Presente y futuro.


Elige la que más te convenga. Investiga y cuando tengas una duda puntual, la publicas.


En línea

"La vida es muy peligrosa. No por las personas que hacen el mal, si no por las que se sientan a ver lo que pasa." Albert Einstein
BackToTheFuture

Desconectado Desconectado

Mensajes: 9


Ver Perfil
Re: Ingreso, almacenamiento y visualización de datos por pantalla
« Respuesta #2 en: 14 Abril 2015, 17:26 pm »

Hola, esto sería para una aplicación desktop, pero quiero algo más sencillo, con arrays o algo por el estilo. Mientras tanto estuve investigando un poco y hasta ahora hice una clase datosProfesional con los atributos nombre, apellido, especialidad y nroMat y otra clase profesional con un atributo profesional cuyo tipo es un array de datosProfesional.
En línea

Usuario Invitado


Desconectado Desconectado

Mensajes: 625



Ver Perfil
Re: Ingreso, almacenamiento y visualización de datos por pantalla
« Respuesta #3 en: 14 Abril 2015, 18:29 pm »

¿Y qué duda tienes entonces? Veo que ya tienes una idea, entonces, aplícala o inténtalo. Si tienes alguna duda específica, crea un tema para recibir ayuda.


Un saludo.
En línea

"La vida es muy peligrosa. No por las personas que hacen el mal, si no por las que se sientan a ver lo que pasa." Albert Einstein
BackToTheFuture

Desconectado Desconectado

Mensajes: 9


Ver Perfil
Re: Ingreso, almacenamiento y visualización de datos por pantalla
« Respuesta #4 en: 15 Abril 2015, 01:16 am »

Es que mientras esperaba tu respuesta me puse a investigar un poco y hasta ahora hice lo que ya te he dicho. Lo que me faltaría es saber cómo ingresar los datos a esa estructura de datos (sé ingresar por teclado pero en este caso particular no sé como meter los datos en la estructura)
En línea

Usuario Invitado


Desconectado Desconectado

Mensajes: 625



Ver Perfil
Re: Ingreso, almacenamiento y visualización de datos por pantalla
« Respuesta #5 en: 15 Abril 2015, 16:07 pm »

Esa duda, la resuelves simplemente con Google, es muy trivial. Acostúmbrate a investigar.

Código
  1. public class Professional {
  2.    private Integer id;
  3.    private String names;
  4.    private String surnames;
  5.    private String speciality;
  6.    private String licenseNumber;
  7.  
  8.    public Professional() {
  9.  
  10.    }
  11.    public Professional(Integer id, String names, String surnames,
  12.        String speciality, String licenseNumber) {
  13.        this.id = id;
  14.        this.names = names;
  15.        this.surnames = surnames;
  16.        this.speciality = speciality;
  17.        this.licenseNumber = licenseNumber;
  18.    }
  19.    public Integer getId() {
  20.        return id;
  21.    }
  22.    public void setId(Integer id) {
  23.        this.id = id;
  24.    }
  25.    public String getNames() {
  26.        return names;
  27.    }
  28.    public void setNames(String names) {
  29.        this.names = names;
  30.    }
  31.    public String getSurnames() {
  32.        return surnames;
  33.    }
  34.    public void setSurnames(String surnames) {
  35.        this.surnames = surnames;
  36.    }
  37.    public String getSpeciality() {
  38.        return speciality;
  39.    }
  40.    public void setSpeciality(String speciality) {
  41.        this.speciality = speciality;
  42.    }
  43.    public String getLicenseNumber() {
  44.        return licenseNumber;
  45.    }
  46.    public void setlicenseNumber(String licenseNumber) {
  47.        this.licenseNumber = licenseNumber;
  48.    }
  49. }

Código
  1. public class ProfessionalService {
  2.    private static final List<Professional> professionals;
  3.    private static final ProfessionalService THIS = new ProfessionalService();    
  4.  
  5.    private ProfessionalService() {
  6.        professionals = new ArraList<>();
  7.    }
  8.    public static ProfessionalService getService() {
  9.        return THIS;
  10.    }
  11.    public void add(Professional p) {
  12.        professionals.add(p);
  13.    }
  14.    public void remove(Professional p) {
  15.        professionals.remove(p);
  16.    }
  17.    public void update(Professional p) {
  18.        for(Professional current : professionals) {
  19.            if(current.getId() == p.getId()) {
  20.                current = p;
  21.            }
  22.        }
  23.    }
  24. }
  25.  
Código
  1. public class Main {
  2.  
  3.   public static void main(String[] args) {
  4.       // ahora trabaja en ésto  
  5.   }
  6. }
  7.  


Saludos.
En línea

"La vida es muy peligrosa. No por las personas que hacen el mal, si no por las que se sientan a ver lo que pasa." Albert Einstein
BackToTheFuture

Desconectado Desconectado

Mensajes: 9


Ver Perfil
Re: Ingreso, almacenamiento y visualización de datos por pantalla
« Respuesta #6 en: 16 Abril 2015, 17:24 pm »

Hola, te cuento lo que hice hasta ahora: mientras esperaba tu respuesta estuve investigando y luego adapté a mis necesidades el código que publicaste e intenté realizar la clase Main, que cito a continuación:

Código

Citar

public class Principal {
   
    public static void main (String[] args)throws IOException{
       
    System.out.println("Ingrese Apellido");
   
    BufferedReader apellido = new BufferedReader(new InputStreamReader(System.in));
    apellido.readLine();
   
    System.out.println("Ingrese Nombre");
   
    BufferedReader nombre = new BufferedReader(new InputStreamReader(System.in));
    nombre.readLine();
   
    System.out.println("Ingrese Especialidad");
   
    BufferedReader especialidad = new BufferedReader(new InputStreamReader(System.in));
    especialidad.readLine();
   
    System.out.println("Ingrese Número de Matrícula");
   
    BufferedReader nroMat = new BufferedReader(new InputStreamReader(System.in));
    nroMat.readLine();
   
       
    }
}


Tengo dudas de si esto está bien o no, en relación al propósito que quiero lograr. Si no está bien, te agradecería que me orientes sobre cómo hacerlo.

Muchas Gracias por tu ayuda.

Saludos.
En línea

Usuario Invitado


Desconectado Desconectado

Mensajes: 625



Ver Perfil
Re: Ingreso, almacenamiento y visualización de datos por pantalla
« Respuesta #7 en: 16 Abril 2015, 23:47 pm »

Con Scanner te basta. BufferedReader se usa más para lectura de archivos ya que provee una amplia API para ello. No entiendo por qué creas un BufferedReader nuevo para cada lectura. Es ineficiente y completamente innecesario.

Código
  1.   final Scanner READER = new Scanner(System.in);
  2.  
  3.    System.out.println("Ingrese Apellido");
  4.    String apellido = READER.netxLine();
  5.    System.out.println("Ingrese Nombre");
  6.    String nombre = READER.nextLine();
  7.    nombre.readLine();
  8.    System.out.println("Ingrese Especialidad");
  9.    String especialidad = READER.nextLine();
  10.    System.out.println("Ingrese Número de Matrícula");
  11.    String nroMatricula = READER.nextLine();
  12.  
  13.    Professional newProfessional = new Professional(apellido, nombre, especialidad, nroMatricula);
  14.    // agregas el nuevo profesional a la lista


Saludos.
En línea

"La vida es muy peligrosa. No por las personas que hacen el mal, si no por las que se sientan a ver lo que pasa." Albert Einstein
BackToTheFuture

Desconectado Desconectado

Mensajes: 9


Ver Perfil
Re: Ingreso, almacenamiento y visualización de datos por pantalla
« Respuesta #8 en: 18 Abril 2015, 16:41 pm »

Hola, entonces quedaría el programa terminado, con tres clases: main, professionalServices y professional.

El IDE me dice que la variable newProfessional no está utilizada.

¿De esta manera quedan almacenados los profesionales que ingrese?

Saludos.
En línea

Usuario Invitado


Desconectado Desconectado

Mensajes: 625



Ver Perfil
Re: Ingreso, almacenamiento y visualización de datos por pantalla
« Respuesta #9 en: 18 Abril 2015, 22:49 pm »

Citar
El IDE me dice que la variable newProfessional no está utilizada.

¿Agregaste el objeto newProfessional a la lista?

Citar
¿De esta manera quedan almacenados los profesionales que ingrese?

Sí. Si los guardas en la lista, quedarán guardadas mientras el programa esté levantado.


Saludos.
En línea

"La vida es muy peligrosa. No por las personas que hacen el mal, si no por las que se sientan a ver lo que pasa." Albert Einstein
Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda con programa de threads y visualización en pantalla.
Programación C/C++
malospelosmalon 1 2,032 Último mensaje 15 Julio 2011, 16:28 pm
por Khronos14
Validar ingreso de datos en C Sharp
.NET (C#, VB.NET, ASP)
DanielPy 3 3,255 Último mensaje 14 Julio 2013, 04:04 am
por DanielPy
Herramientas que mejoran la visualización de datos: otra forma de sacarle ...
Noticias
wolfbcn 0 1,104 Último mensaje 8 Diciembre 2015, 23:46 pm
por wolfbcn
Acceso y visualizacion de datos mediante PhP
PHP
Locuust 1 1,354 Último mensaje 13 Enero 2016, 02:41 am
por LuffyFF
[Resuelto] Visualización de datos a nivel web
Desarrollo Web
Tyrz 2 2,699 Último mensaje 1 Enero 2017, 16:44 pm
por Tyrz
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines