MedlemsApp
PHP Code:
package databasuppgift;
public class MedlemsApp {
public static void main(String[] args) {
Medlemmar medlemsRegister = new Medlemmar();
MedlemsMeny meny = new MedlemsMeny();
meny.setMedlemsRegister(medlemsRegister);
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.");
}
}
}
}
Member
PHP Code:
package databasuppgift;
public class Medlem
{
private String forNamn;
private String efterNamn;
private int personnr;
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 int getPersonNummer()
{
return personnr;
}
public void setPersonNummer(int personNummer)
{
this.personnr = personNummer;
}
}
Members
PHP Code:
package databasuppgift;
import java.util.ArrayList;
public class Medlemmar {
private ArrayList<Medlem> medlemmar;
public Medlemmar() {
medlemmar = new ArrayList<Medlem>();
}
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;
}
}
Meny
PHP Code:
package databasuppgift;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
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("4. 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 ---");
Connection dbConnection = null;
Statement statement = null;
ResultSet rs = null;
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
} catch (Exception e) {
System.err.println("MYSQL:s JDBC-drivrutiner kunde INTE hittas. ");
}
String url = "jdbc:mysql://atlantis.informatik.umu.se/svph1336_db_vt2014";
String user = "svph1336";
String password = "********";
try {
dbConnection = DriverManager.getConnection(url, user, password);
} catch (SQLException ex) {
System.err.println("Ett fel har uppstått: " +ex.toString());
}
String SQL = "SELECT * FROM Studenter";
try {
statement = dbConnection.createStatement();
rs = statement.executeQuery(SQL);
while (rs.next()){
System.out.println(rs.getString("namn") + ", " + rs.getString("efternamn") + ", " + rs.getString("Personnr"));
}
}
catch (Exception err) {
System.err.println("Ett fel har uppstått: " + err.toString());
}
}
public void laggTillMedlem() {
System.out.println("--- Lägg till medlem ---");
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("Personnummer: ");
int personnummer = inMatning.nextInt();
nyMedlem.setPersonNummer(personnummer);
medlemsRegister.addMedlem(nyMedlem);
Connection dbConnection = null;
Statement statement = null;
ResultSet rs = null;
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
} catch (Exception e) {
System.err.println("MYSQL:s JDBC-drivrutiner kunde INTE hittas. ");
}
String url = "jdbc:mysql://atlantis.informatik.umu.se/svph1336_db_vt2014";
String user = "svph1336";
String password = "*******";
try {
dbConnection = DriverManager.getConnection(url, user, password);
} catch (SQLException ex) {
System.err.println("Ett fel har uppstått: " +ex.toString());
}
String sql = "SELECT * FROM kund WHERE efternamn = '" + efternamn + "'";
String SQL = "INSERT INTO Studenter(namn, efternamn, Personnr) VALUES('"+ forNamn +"', '"+ efterNamn +"', '" + personnummer + "')";
try {
statement = dbConnection.createStatement();
int antal = statement.executeUpdate(SQL);
if (antal >=1) {
System.out.println("Det fungerar!");
}
}
catch (Exception err) {
System.err.println("Ett fel har uppstått: " + err.toString());
}
}
public void taBortMedlem() {
System.out.println("--- Ta bort medlem ---");
System.out.println("----------------------");
System.out.print("Ange personnummer för att ta bort: ");
int medlemsIndex = inMatning.nextInt();
medlemsRegister.removeMedlem(medlemsIndex);
Connection dbConnection = null;
Statement statement = null;
ResultSet rs = null;
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
} catch (Exception e) {
System.err.println("MYSQL:s JDBC-drivrutiner kunde INTE hittas. ");
}
String url = "jdbc:mysql://atlantis.informatik.umu.se/svph1336_db_vt2014";
String user = "svph1336";
String password = "*******";
try {
dbConnection = DriverManager.getConnection(url, user, password);
} catch (SQLException ex) {
System.err.println("Ett fel har uppstått: " +ex.toString());
}
String SQL = "DELETE FROM Studenter WHERE Personnr =" + medlemsIndex + "";
try {
statement = dbConnection.createStatement();
int antal = statement.executeUpdate(SQL);
if (antal >=1) {
System.out.println("Personen har tagits bort!");
}
}
catch (Exception err) {
System.err.println("Ett fel har uppstått: " + err.toString());
}
}
public void avsluta() {
System.out.println("Programmet avslutas!");
}
}
My program should be able to add (Insert) data into the database table
and be able to select (Select) from databse to the object representing the read data.
It also should be able to delete(Delete) individual data items through the program and also Update(but have not started yet to write the code sens I have been stuck with this).
read from databse worked and the others wont work..
I know few this are missing in String SQL ="... but I cannot figure out.
Is there anyone who had the same problem before? please help needed!
SQL codes are in the MedlemsMeny
Thank you!