commit 22155f70234e975fa9f039ca5a55d038c620e107 Author: ifembanefo Date: Tue Apr 4 10:45:20 2023 +0200 hello diff --git a/2Semester/.classpath b/2Semester/.classpath new file mode 100644 index 0000000..ac9ce57 --- /dev/null +++ b/2Semester/.classpath @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/2Semester/.gitignore b/2Semester/.gitignore new file mode 100644 index 0000000..ae3c172 --- /dev/null +++ b/2Semester/.gitignore @@ -0,0 +1 @@ +/bin/ diff --git a/2Semester/.project b/2Semester/.project new file mode 100644 index 0000000..68ddbf5 --- /dev/null +++ b/2Semester/.project @@ -0,0 +1,17 @@ + + + 2Semester + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/2Semester/.settings/org.eclipse.core.resources.prefs b/2Semester/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..4824b80 --- /dev/null +++ b/2Semester/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git a/2Semester/.settings/org.eclipse.jdt.core.prefs b/2Semester/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..dbc27c5 --- /dev/null +++ b/2Semester/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,14 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=17 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=17 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning +org.eclipse.jdt.core.compiler.release=enabled +org.eclipse.jdt.core.compiler.source=17 diff --git a/2Semester/datei.txt b/2Semester/datei.txt new file mode 100644 index 0000000..7c00e5a --- /dev/null +++ b/2Semester/datei.txt @@ -0,0 +1 @@ +Erste Zeichenkette diff --git a/2Semester/myconf.cfg b/2Semester/myconf.cfg new file mode 100644 index 0000000..a89a386 --- /dev/null +++ b/2Semester/myconf.cfg @@ -0,0 +1 @@ +Firmenname "Apple"Firmenadresse "US"Bankverbindung "DE12345" \ No newline at end of file diff --git a/2Semester/myconf.txt b/2Semester/myconf.txt new file mode 100644 index 0000000..e0a266c --- /dev/null +++ b/2Semester/myconf.txt @@ -0,0 +1 @@ +Firmenname "Google"Firmenadresse "US"Bankverbindung "US12456" \ No newline at end of file diff --git a/2Semester/myconf2.cfg b/2Semester/myconf2.cfg new file mode 100644 index 0000000..d9e5b7b --- /dev/null +++ b/2Semester/myconf2.cfg @@ -0,0 +1 @@ +Firmenname "Google"Firmenadresse "US"Bankverbindung "US12345" \ No newline at end of file diff --git a/2Semester/myconf2.txt b/2Semester/myconf2.txt new file mode 100644 index 0000000..e69de29 diff --git a/2Semester/myconf3.txt b/2Semester/myconf3.txt new file mode 100644 index 0000000..e69de29 diff --git a/2Semester/myconf4.txt b/2Semester/myconf4.txt new file mode 100644 index 0000000..55355b0 --- /dev/null +++ b/2Semester/myconf4.txt @@ -0,0 +1 @@ +Firmenname = "HelloFresh"Firmenadresse = "Mannheim"Bankverbindung ="DE567788" \ No newline at end of file diff --git a/2Semester/myconf5.txt b/2Semester/myconf5.txt new file mode 100644 index 0000000..0f3d05b --- /dev/null +++ b/2Semester/myconf5.txt @@ -0,0 +1 @@ +Firmenname = "dgfgfeg"Firmenadresse = "sfsfw"Bankverbindung ="eafedfw" \ No newline at end of file diff --git a/2Semester/myconf6.txt b/2Semester/myconf6.txt new file mode 100644 index 0000000..52f584b --- /dev/null +++ b/2Semester/myconf6.txt @@ -0,0 +1,3 @@ +Firmenname = "fhhfd" +Firmenadresse = "r4ffed" +Bankverbindung ="4rfe224" diff --git a/2Semester/src/fakturierungssystem/Datenmodell.java b/2Semester/src/fakturierungssystem/Datenmodell.java new file mode 100644 index 0000000..bf580fa --- /dev/null +++ b/2Semester/src/fakturierungssystem/Datenmodell.java @@ -0,0 +1,27 @@ +package fakturierungssystem; + +public class Datenmodell { + private String firmenname; + private String firmenadresse; + private String bankverbindung; + + public String getFirmenname() { + return firmenname; + } + public void setFirmenname(String firmenname) { + this.firmenname = firmenname; + } + public String getFirmenadresse() { + return firmenadresse; + } + public void setFirmenadresse(String firmenadresse) { + this.firmenadresse = firmenadresse; + } + public String getBankverbindung() { + return bankverbindung; + } + public void setBankverbindung(String bankverbindung) { + this.bankverbindung = bankverbindung; + } + +} diff --git a/2Semester/src/fakturierungssystem/Konfigurationsdatei.txt b/2Semester/src/fakturierungssystem/Konfigurationsdatei.txt new file mode 100644 index 0000000..f587468 --- /dev/null +++ b/2Semester/src/fakturierungssystem/Konfigurationsdatei.txt @@ -0,0 +1,3 @@ +Apple +US +DE1234 \ No newline at end of file diff --git a/2Semester/src/fakturierungssystem/MyFaktura.java b/2Semester/src/fakturierungssystem/MyFaktura.java new file mode 100644 index 0000000..1136504 --- /dev/null +++ b/2Semester/src/fakturierungssystem/MyFaktura.java @@ -0,0 +1,66 @@ +package fakturierungssystem; + +import java.io.*; +import java.nio.file.Files; +import java.util.*; + +public class MyFaktura { + + private String firmenname; + private String firmenadresse; + private String bankverbindung; + private static String cfgFile = "myconf6.txt"; + + public static void main(String[] args) { + Scanner sc = new Scanner(System.in); + File tempFile = new File(cfgFile); + boolean exists = tempFile.exists(); + // falls Datei nicht vorhanden, anlegen + if (exists == false) { + try (BufferedWriter file = new BufferedWriter( new FileWriter(cfgFile))) { + System.out.println("Firmenname:"); + String firma = sc.nextLine(); + char quote = '"'; + file.write("Firmenname = " + quote + firma + quote+"\n"); + System.out.println("Firmenadresse: "); + String adresse = sc.nextLine(); + file.write("Firmenadresse = " + quote + adresse + quote+"\n"); + System.out.println("Bankverbindung: " ); + String bank = sc.nextLine(); + file.write("Bankverbindung =" + quote + bank + quote +"\n"); + file.close(); + System.out.println(); + } catch (IOException e) { + + } + } // falls Datei existiert + else { + try (BufferedReader file = new BufferedReader(new FileReader(cfgFile))) { + System.out.println("Datei: "); + String line; + while((line=file.readLine())!= null) { + System.out.println(line); + } + int c; + String keyword=""; + String content =""; + + /*while((c=file.read())!='=') { + keyword+=(char)c; + } + while ((c =file.read())=='"') { + content+=(char)c; + } + while ((c=file.read())!='"') { + content+=(char)c; + } + System.out.println(keyword + "=" + content); + */ file.close(); + } catch (IOException e) { + + } + } + + } + +} diff --git a/2Semester/src/fakturierungssystem/Persistierung.java b/2Semester/src/fakturierungssystem/Persistierung.java new file mode 100644 index 0000000..0562e30 --- /dev/null +++ b/2Semester/src/fakturierungssystem/Persistierung.java @@ -0,0 +1,39 @@ +package fakturierungssystem; + +import java.io.BufferedWriter; +import java.io.File; +import java.io.FileWriter; +import java.io.IOException; + +public class Persistierung { + private static String cfgFile; + File tempFile = new File(cfgFile); + boolean exists = tempFile.exists(); + BufferedWriter file; + + { + if (exists == false) { + try (BufferedWriter file = new BufferedWriter(new FileWriter(cfgFile))) { + } catch (IOException e) { + e.printStackTrace(); + } + } + + } + + public void write(String satz) { + try { + file.write(satz); + } catch (IOException e) { + e.printStackTrace(); + } + } + public void close() { + try { + file.close(); + } catch (IOException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } +} \ No newline at end of file diff --git a/2Semester/src/fakturierungssystem/UI.java b/2Semester/src/fakturierungssystem/UI.java new file mode 100644 index 0000000..6523f52 --- /dev/null +++ b/2Semester/src/fakturierungssystem/UI.java @@ -0,0 +1,25 @@ +package fakturierungssystem; + +import java.util.*; + +public class UI { + public static void main(String[] args) { + + Scanner sc = new Scanner(System.in); + Persistierung ps = new Persistierung(); + System.out.println("Firmenname:"); + String firma = sc.nextLine(); + char quote = '"'; + ps.write("Firmenname = " + quote + firma + quote + "\n"); + System.out.println("Firmenadresse: "); + String adresse = sc.nextLine(); + ps.write("Firmenadresse = " + quote + adresse + quote + "\n"); + System.out.println("Bankverbindung: "); + String bank = sc.nextLine(); + ps.write("Bankverbindung =" + quote + bank + quote + "\n"); + ps.close(); + System.out.println("Datei erfolgreich gespeichert"); + + } + +} diff --git a/2Semester/src/indexverwaltung/Datei.java b/2Semester/src/indexverwaltung/Datei.java new file mode 100644 index 0000000..efdc5f7 --- /dev/null +++ b/2Semester/src/indexverwaltung/Datei.java @@ -0,0 +1,43 @@ +package indexverwaltung; + +import java.io.*; + +public class Datei { +private int aktuell; +private String dateiname; +private int SATZLAENGE; +private RandomAccessFile eineStammdatei; + + +public void speichereSatz(String satz, int index) { + +} + +public String leseSatz(int index) { + return null; +} + +public void öffneDatei(String name) { + + +} + +public void schliesseDatei() { + +} +public int gibAnzahlDatensätze() { + return 0; +} + +private void positioniereAufSatz(int index) { + +} + +private String readFixedString (int länge) { + return null; +} + +private void writeFixedString (String einDatensatz, int länge) { + +} +} diff --git a/2Semester/src/indexverwaltung/Index.java b/2Semester/src/indexverwaltung/Index.java new file mode 100644 index 0000000..e04f075 --- /dev/null +++ b/2Semester/src/indexverwaltung/Index.java @@ -0,0 +1,96 @@ +package indexverwaltung; + +import java.util.*; +import java.io.*; + +public class Index { + // Attribute + private final int MAX = 10; + private String dateiname = "Indexdatei.txt"; + private int indextabelle[]; // 0 .. MAX-1 + private RandomAccessFile eineIndexDatei; + + // Konstruktor + public Index() + { + indextabelle = new int[MAX]; + // Initialisierung der indextabelle + for(int i = 0; i < MAX; i++) indextabelle[i] = -1; + // Kein Datensatz zu Schluessel vorhanden + } + + // Methoden + public void erzeugeEintrag(int schluessel, int index) throws IOException + { + /** Speichert zu einen Schluessel den zugehoerigen + * Datensatz-Index in der indextabelle + */ + if(schluessel < MAX) + indextabelle[schluessel] = index; + // Aktualisieren der Indexdatei, + // d. h. Abspeichern der Datei + aktualisiereIndexDatei(schluessel); + } + + public int gibIndexZuSchluessel(int schluessel) + { + // Gibt zu dem Schluessel den gefundenen + // Datensatz-Index zurueck + if(schluessel < MAX) + return indextabelle[schluessel]; + // oder -1, wenn Schluessel zu gross ist + else + return -1; + } + + public void ladeIndexDatei() throws IOException + { + /** Liest die Indextabelle vollstaendig aus einer Datei + * Dies geschieht nur beim Start des Programms + */ + eineIndexDatei = new RandomAccessFile(dateiname, "r"); + int index; + for(int schluessel = 0; schluessel < MAX; schluessel++) + { + index = eineIndexDatei.readInt(); + indextabelle[schluessel] = index; + } + eineIndexDatei.close(); + } + + public void speichereIndexDatei() throws IOException + { + /** Speichert die Indextabelle vollstaendig in einer Datei + * Dies geschlieht beim beenden des Programs + */ + eineIndexDatei = new RandomAccessFile(dateiname, "rw"); + for(int schluessel = 0; schluessel < MAX; schluessel++) + eineIndexDatei.writeInt(indextabelle[schluessel]); + eineIndexDatei.close(); + } + + private void aktualisiereIndexDatei(int schluessel) throws IOException + { + /** Aktualisiert die indextabelle in der Indexdatei + * Dies geschliet beim Hinzufuegen eines neuen + * Indexes oder Aendern eines alten Indexes + */ + eineIndexDatei = new RandomAccessFile(dateiname, "rw"); + // eine int-Zahl belegt 4 Bytes + eineIndexDatei.seek((long)(schluessel * 4)); + eineIndexDatei.writeInt(indextabelle[schluessel]); + eineIndexDatei.close(); + } + + // Zum Testen + public void gibIndextabelleAus() + { + int schluessel = 0; + for(int element : indextabelle) + { + System.out.println(schluessel + " " + element); + schluessel++; + } + } +} + diff --git a/2Semester/src/indexverwaltung/IndexUI.java b/2Semester/src/indexverwaltung/IndexUI.java new file mode 100644 index 0000000..5fd70c2 --- /dev/null +++ b/2Semester/src/indexverwaltung/IndexUI.java @@ -0,0 +1,26 @@ +package indexverwaltung; + +import java.io.*; +import java.util.*; + +public class IndexUI { + Scanner sc = new Scanner(System.in); + static File tempFile = new File("Datei.txt"); + static boolean exists = tempFile.exists(); + + public static void main(String[] args) { + System.out.println("Willkommen! "); +//wenn keine Datei existiert + + if (exists == false) { + try (BufferedWriter file = new BufferedWriter(new FileWriter("Datei.txt"))) { + + } catch (Exception e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + + } + + } +} \ No newline at end of file diff --git a/2Semester/src/verwaltung/kunden/Adresse.java b/2Semester/src/verwaltung/kunden/Adresse.java new file mode 100644 index 0000000..2c3bb9d --- /dev/null +++ b/2Semester/src/verwaltung/kunden/Adresse.java @@ -0,0 +1,17 @@ +package verwaltung.kunden; + +public class Adresse { + + String Strasse; + int hausnummer; + int postleitzahl; + String ort; + + public Adresse(String str, int h, int p,String o) { + this.Strasse=str; + this.hausnummer=h; + this.postleitzahl=p; + this.ort=o; + + } +} diff --git a/2Semester/src/verwaltung/kunden/Auftrag.java b/2Semester/src/verwaltung/kunden/Auftrag.java new file mode 100644 index 0000000..3a4b206 --- /dev/null +++ b/2Semester/src/verwaltung/kunden/Auftrag.java @@ -0,0 +1,9 @@ +package verwaltung.kunden; + +public class Auftrag { + int auftragsnummer = 0; + + public Auftrag() { + auftragsnummer++; + } +} diff --git a/2Semester/src/verwaltung/kunden/Geschäftsauftrag.java b/2Semester/src/verwaltung/kunden/Geschäftsauftrag.java new file mode 100644 index 0000000..6d18171 --- /dev/null +++ b/2Semester/src/verwaltung/kunden/Geschäftsauftrag.java @@ -0,0 +1,11 @@ +package verwaltung.kunden; + +public class Geschäftsauftrag extends Auftrag { +private int gaauftragsnummer=0; +private String produkt; + +public Geschäftsauftrag(String p) { + gaauftragsnummer++; + this.produkt=p; +} +} diff --git a/2Semester/src/verwaltung/kunden/Geschäftskunde.java b/2Semester/src/verwaltung/kunden/Geschäftskunde.java new file mode 100644 index 0000000..8581005 --- /dev/null +++ b/2Semester/src/verwaltung/kunden/Geschäftskunde.java @@ -0,0 +1,19 @@ +package verwaltung.kunden; + +import java.util.ArrayList; + +public class Geschäftskunde extends Kunde { +String firmenname; +ArrayList auftragsListe; + + public Geschäftskunde(int kundennummer2,String firmenname, int iBAN2, ArrayList adresse, ArrayList aListe) { + super(kundennummer2, iBAN2, adresse); + this.firmenname=firmenname; + // TODO Auto-generated constructor stub + } + + public void neuerAuftrag(String p) { + Geschäftsauftrag auftrag = new Geschäftsauftrag(p); + auftragsListe.add(auftrag); + } +} diff --git a/2Semester/src/verwaltung/kunden/Kunde.java b/2Semester/src/verwaltung/kunden/Kunde.java new file mode 100644 index 0000000..5857961 --- /dev/null +++ b/2Semester/src/verwaltung/kunden/Kunde.java @@ -0,0 +1,65 @@ +package verwaltung.kunden; + +import java.util.ArrayList; + +public class Kunde { + private int kundennummer;// unerlaubten Zugriff vermeiden + private int IBAN;// unerlaubten Zugriff vermeiden + protected ArrayList adressListe; + + public Kunde(int kundennummer2, int iBAN2, ArrayList adresse) { + this.setKundennummer(kundennummer); + this.setIBAN(IBAN); + this.adressListe = adresse; + // TODO Auto-generated constructor stub + } + + public boolean neuerAdresse(Adresse eineAdresse) { + return adressListe.add(eineAdresse); + + } + + /** + * @Override clone(); + */ + public Kunde clone() { + return this; + } + + /** + * + * public Kunde copy() { + * + * + * return this; } + */ + + public int getKundennummer() {// jeder soll auf die Kundennummer zugreifen können, nicht verändern + return kundennummer; + } + + public void setKundennummer(int kundennummer) {// soll möglichst unveränderbar sein + this.kundennummer = kundennummer; + } + + /** Multiplizitäten 1:n */ + + public int getIBAN() { + return IBAN; + } + + public void setIBAN(int iBAN) { + IBAN = iBAN; + } + + public static void main(String args[]) { + Adresse adresse1 = new Adresse("Mainauer", 3, 76523, "Mannheim"); + ArrayList Mannheim = new ArrayList(); + Kunde kunde1 = new Kunde(12345, 785578, Mannheim); + Kunde kunde2 = null; + kunde2 = kunde1.clone(); + // kunde2=kunde1.copy(); + System.out.println(kunde1); + System.out.println(kunde2); + } +} diff --git a/2Semester/src/verwaltung/kunden/Privatauftrag.java b/2Semester/src/verwaltung/kunden/Privatauftrag.java new file mode 100644 index 0000000..cfbecaf --- /dev/null +++ b/2Semester/src/verwaltung/kunden/Privatauftrag.java @@ -0,0 +1,11 @@ +package verwaltung.kunden; + +public class Privatauftrag extends Auftrag{ + private int paauftragsnummer=0; + private String produkt; + + public Privatauftrag(String p) { + paauftragsnummer++; + this.produkt=p; + } +} diff --git a/2Semester/src/verwaltung/kunden/Privatkunde.java b/2Semester/src/verwaltung/kunden/Privatkunde.java new file mode 100644 index 0000000..6d52531 --- /dev/null +++ b/2Semester/src/verwaltung/kunden/Privatkunde.java @@ -0,0 +1,24 @@ +package verwaltung.kunden; + +import java.util.ArrayList; + +public class Privatkunde extends Kunde{ +private String name; +ArrayList auftragsListe; + + public Privatkunde(int kundennummer, int IBAN,String name,ArrayList adresse, ArrayList aListe) {//beim Erstellen des Objektes soll immer zugreifbar sein + super(kundennummer, IBAN, adresse); + this.setName(name); + } + public String getName() { + return name; + } + private void setName(String name) {//soll möglichst unveränderbar sein + this.name = name; + } + + public void neuerAuftrag(String p) { + Privatauftrag auftrag = new Privatauftrag(p); + auftragsListe.add(auftrag); + } +}