Welcome to the Java Programming Forums


The professional, friendly Java community. 21,500 members and growing!


The Java Programming Forums are a community of Java programmers from all around the World. Our members have a wide range of skills and they all have one thing in common: A passion to learn and code Java. We invite beginner Java programmers right through to Java professionals to post here and share your knowledge. Become a part of the community, help others, expand your knowledge of Java and enjoy talking with like minded people. Registration is quick and best of all free. We look forward to meeting you.


>> REGISTER NOW TO START POSTING


Members have full access to the forums. Advertisements are removed for registered users.

Results 1 to 2 of 2

Thread: CRUD problem

  1. #1
    Junior Member
    Join Date
    Feb 2014
    Posts
    4
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Default CRUD problem

    I can "Create, Read and Delete but not update. Is there anyone who knows how to make update in my CRUD program ? or where I can read more about CRUD ..

    package medlemmar;
     
     
    public class Medlem
    {
     
        private int medlemsNummer;
        private String forNamn;
        private String efterNamn;
        private String epostAdress;
     
        public int getMedlemsNummer()
        {
            return medlemsNummer;
        }
     
        public void setMedlemsNummer(int medlemsNummer)
        {
            this.medlemsNummer = medlemsNummer;
        }
     
        public String getForNamn()
        {
            return forNamn;
        }
     
        public void setForNamn(String forNamn)
        {
            this.forNamn = forNamn;
        }
     
        public String getEfterNamn()
        {
            return efterNamn;
        }
     
        public void setEfterNamn(String efterNamn)
        {
            this.efterNamn = efterNamn;
        }
     
        public String getEpostAdress()
        {
            return epostAdress;
        }
     
        public void setEpostAdress(String epostAdress)
        {
            this.epostAdress = epostAdress;
        }
    }


    package medlemmar;
     
    import java.io.*;
    import java.util.ArrayList;
     
    public class Medlemmar {
     
        private ArrayList<Medlem> medlemmar;
     
        public Medlemmar() {
            medlemmar = new ArrayList<>();
        }
     
        public void addMedlem(Medlem medlem) {
            medlemmar.add(medlem);
        }
     
        public void removeMedlem(int index) {
            medlemmar.remove(index);
     
        }
     
        public Medlem getMedlem(int index) {
            return medlemmar.get(index);
        }
     
        public ArrayList<Medlem> getArrayList() {
            return medlemmar;
        }
     
        public void readFromFile(String fileName) throws IOException {
            try (BufferedReader in = new BufferedReader(new FileReader(fileName))) {
                String filRad;
                while ((filRad = in.readLine()) != null) {
     
                    String[] post = filRad.split(",");
     
                    Medlem m = new Medlem();
                    m.setMedlemsNummer(Integer.parseInt(post[0]));
                    m.setForNamn(post[1]);
                    m.setEfterNamn(post[2]);
                    m.setEpostAdress(post[3]);
                    this.addMedlem(m);
                }
            }
     
     
        }
     
        public void writeToFile() throws IOException {
            FileWriter fw = new FileWriter("medlemmar.csv");
            try (BufferedWriter bw = new BufferedWriter(fw)) {
                for (int i = 0; i < medlemmar.size(); i++) {
     
                    Medlem m = medlemmar.get(i);
                    String rad = m.getMedlemsNummer() + "," + m.getForNamn() + "," + m.getEfterNamn() + ","
                            + m.getEpostAdress();
                    bw.write(rad);
                    bw.newLine();
                }
            }
     
        }
     
        public void skrivUtInfo() {
            for (int i = 0; i < medlemmar.size(); i++) {
     
                Medlem m = medlemmar.get(i);
                String info = i + ": " + m.getForNamn() + " " + m.getEfterNamn() + ", "
                        + m.getEpostAdress();
                System.out.println(info);
            }
        }
     
        public int hittaMedlemsNummer() {
            int storstaTalet = -1;
     
            for (Medlem m : medlemmar) {
                if (m.getMedlemsNummer() > storstaTalet) {
                    storstaTalet = m.getMedlemsNummer();
                }
            }
     
            return storstaTalet + 1;
     
        }
    }

    Main
    package medlemmar;
     
    import java.io.IOException;
     
    public class MedlemsApp {
     
        public static void main(String[] args) {
     
            Medlemmar medlemsRegister = new Medlemmar();
     
            MedlemsMeny meny = new MedlemsMeny();
            meny.setMedlemsRegister(medlemsRegister);
     
     
            try {
                medlemsRegister.readFromFile("medlemmar.csv");
            } catch (IOException ex) {
                System.out.println("Det uppstod problem vid läsning av filen.");
            }
     
     
            int menyVal = 0;
            while (menyVal != 4) {
                menyVal = meny.visaMeny();
                switch (menyVal) {
                    case 1:
                        meny.visaMedlemmar();
                        break;
     
                    case 2:
                        meny.laggTillMedlem();
                        break;
     
                    case 3:
                        meny.taBortMedlem();
                        break;
     
                    case 4:
                        meny.avsluta();
                        break;
                    default:
                        System.out.println("Ogiltigt val. Försök igen.");
     
                }
     
            }
     
        }
    }

    Menu
    package medlemmar;
     
    import java.io.IOException;
    import java.util.Scanner;
     
     
    public class MedlemsMeny {
     
        private Medlemmar medlemsRegister;
        private Scanner inMatning;
     
        public MedlemsMeny()
        {
            inMatning = new Scanner ( System.in );
        }
     
        public int visaMeny() {
     
            System.out.println("------ Meny ------\n");
            System.out.println("1. Visa medlemmar");
            System.out.println("2. Lägg till medlem");
            System.out.println("3. Ta bort medlem\n");
            System.out.println("5. Avsluta\n\n");
            System.out.print("Menyval: ");
     
            int valStr = inMatning.nextInt();
     
     
     
            return valStr;
        }
     
     
        public Medlemmar getMedlemsRegister() {
            return medlemsRegister;
        }
     
     
        public void setMedlemsRegister(Medlemmar medlemsRegister) {
            this.medlemsRegister = medlemsRegister;
        }
     
        public void visaMedlemmar() {
            System.out.println("--- Visa medlemmar ---");
            System.out.println("----------------------");
     
            medlemsRegister.skrivUtInfo();
     
        }
     
        public void laggTillMedlem() {
            System.out.println("--- Lägg till medlem ---");
            System.out.println("------------------------");
            Medlem nyMedlem = new Medlem();
            System.out.print("Förnamn: ");
            String forNamn = inMatning.next();
            nyMedlem.setForNamn(forNamn);
            System.out.print("Efternamn: ");
            String efterNamn = inMatning.next();
            nyMedlem.setEfterNamn(efterNamn);
            System.out.print("E-postadress: ");
            String ePost = inMatning.next();
            nyMedlem.setEpostAdress(ePost);
     
     
     
            int medlemsNummer = medlemsRegister.hittaMedlemsNummer();
            nyMedlem.setMedlemsNummer(medlemsNummer);
     
            medlemsRegister.addMedlem(nyMedlem);
     
        }
     
        public void taBortMedlem() {
            System.out.println("--- Ta bort medlem ---");
            System.out.println("----------------------");
     
            System.out.print("Ange nummer för den medlem du vill ta bort: ");
            int medlemsIndex = inMatning.nextInt();
            medlemsRegister.removeMedlem(medlemsIndex);
        }
     
        public void avsluta() {
            System.out.println("Programmet avslutas!");
            try {
                medlemsRegister.writeToFile();
            } catch (IOException ex) {
                System.out.println("Problem uppstod vid skrivning till fil.");
            }
        }
     
     
        }


    Result
    Det uppstod problem vid läsning av filen.
    ------ Meny ------

    1. Visa medlemmar
    2. Lägg till medlem
    3. Ta bort medlem
    4. Update <------ need to solve this
    5. Avsluta


    Menyval:


  2. #2
    Member
    Join Date
    Oct 2013
    Location
    Manila, Philippines
    Posts
    284
    My Mood
    Amused
    Thanks
    6
    Thanked 63 Times in 61 Posts

    Default Re: CRUD problem

    did you mean you cannot write on file?

    i think you forgot to flush and close the object after writing in Medlemmar class (writetoFile method)
    you must close it after writing.

    you must flush and close it to successfully write on a file.

Similar Threads

  1. Catch block problem. Please fix my problem.
    By damnitsme in forum What's Wrong With My Code?
    Replies: 3
    Last Post: February 3rd, 2014, 12:49 AM
  2. In need of simple JSF crud application example
    By atullo in forum Web Frameworks
    Replies: 1
    Last Post: June 20th, 2013, 08:49 AM
  3. NEED simple example JPA CRUD
    By addrian in forum JDBC & Databases
    Replies: 0
    Last Post: April 23rd, 2012, 11:44 PM
  4. Replies: 3
    Last Post: January 5th, 2012, 12:44 AM
  5. [SOLVED] [Problem] imports javax.swing problem
    By Brollie in forum AWT / Java Swing
    Replies: 8
    Last Post: July 5th, 2009, 07:59 AM