package com.bean;
import java.util.HashMap;
import java.util.Map;
public class Cheese extends Item {
public CheeseType cheeseType ;
public Map<Ingred,Float> calorieTable = new HashMap<Ingred,Float>();
public Cheese() {
}
public CheeseType getCheeseType() {
return cheeseType;
}
public void setCheeseType(CheeseType cheeseType) {
this.cheeseType = cheeseType;
}
public Map<Ingred, Float> getCalorieTable() {
return calorieTable;
}
public void setCalorieTable(Map<Ingred, Float> calorieTable) {
this.calorieTable = calorieTable;
}
}
This is the class which is present in the database. I am not knowing how to take the value of fat, protein, and vitamin which are there in enum of Ingred.
Hierarchy is
Cheese.java
-Cheese
--calorieTable
--cheeseType
--Cheese()
--getCalorieTable():Map<Ingred,Float>
--getCheeseType():CheeseType
--setCalorieTable(Map<Ingred,Float>)
--setCheeseType(CheeseType)
CheeType.java
-CheeseType(Enum)
--Cheddar
-Cottage
--Easy_spread
--Mozzarella
Ingred.java
-Ingred(Enum)
---fat
--protein
--vitamin
-
what I have tried is
public List<Item> readAllItemsFromDb() {
// TODO Auto-generated method stub
con=(Connection)DatabaseConnectionManager.conn;
Statement st = null;
try {
st = con.createStatement();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
ResultSet srs = null;
try {
srs = st.executeQuery("SELECT * FROM cheese_tbl");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
while (srs.next()) {
Cheese cheese = new Cheese();
cheese.setId(srs.getInt("SrNo"));
cheese.setDescription(srs.getString("description"));
cheese.setWeight(srs.getFloat("weight"));
cheese.setPrice(srs.getFloat("price"));
cheese.setManufacturingDate(srs.getDate("mfg_date"));
cheese.setUseBeforeMonths(srs.getInt("UsebeforeInmonths"));
if(srs.getString("CheeseType").equals("Mozzarella"))
cheese.setCheeseType(CheeseType.Mozzarella);
else if(srs.getString("CheeseType").equals("Easy_Spread"))
cheese.setCheeseType(CheeseType.Mozzarella);
else if(srs.getString("CheeseType").equals("Cottage"))
cheese.setCheeseType(CheeseType.Mozzarella);
else if(srs.getString("CheeseType").equals("Cheddar"))
cheese.setCheeseType(CheeseType.Mozzarella);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
But I am not getting how to retrieve values of protein, fat and vitamin.
I am able to retrive other values from database. The database has the following fields
CREATE TABLE `cheese_tbl` (
`id` int(10) DEFAULT NULL,
`description` varchar(100) DEFAULT NULL,
`weight` float DEFAULT NULL,
`price` float DEFAULT NULL,
`mfg_date` date DEFAULT NULL,
`UseBeforeInMonths` int(3) DEFAULT NULL,
`cheeseType` varchar(20) DEFAULT NULL,
`protein` float DEFAULT NULL,
`vitaminB1` float DEFAULT NULL,
`fat` float DEFAULT NULL
)
INSERT INTO `cheese_tbl` VALUES
(1001,'Mozzarella Cheese - Best for Pizza Preparation',200,200,'2014-01-09',12,'Mozzarella',30,0.57,0.33),
(1002,'Goat Cheese Low calories -Easy Spread',300,300,'2014-01-10',3,'Easy_Spread',0.33,33.99,0.57),
(1003,'Cottage Cheese High Protine and Energy',400,400,'2014-05-28',6,'Cottage',0.33,20.2,0.57);