Java 如何从类型为map的数据库中检索值
有一个从数据库填充的映射:Java 如何从类型为map的数据库中检索值,java,mysql,enums,Java,Mysql,Enums,有一个从数据库填充的映射: 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,
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);
到
更好的是
if(srs.getString("CheeseType").equals("Mozzarella"))
cheese.setCheeseType(CheeseType.Mozzarella);
else if(srs.getString("CheeseType").equals("Easy_Spread"))
cheese.setCheeseType(CheeseType.Easy_Spread);
else if(srs.getString("CheeseType").equals("Cottage"))
cheese.setCheeseType(CheeseType.Cottage);
else if(srs.getString("CheeseType").equals("Cheddar"))
cheese.setCheeseType(CheeseType.Cheddar);
有一个从数据库填充的地图:
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);
到
更好的是
if(srs.getString("CheeseType").equals("Mozzarella"))
cheese.setCheeseType(CheeseType.Mozzarella);
else if(srs.getString("CheeseType").equals("Easy_Spread"))
cheese.setCheeseType(CheeseType.Easy_Spread);
else if(srs.getString("CheeseType").equals("Cottage"))
cheese.setCheeseType(CheeseType.Cottage);
else if(srs.getString("CheeseType").equals("Cheddar"))
cheese.setCheeseType(CheeseType.Cheddar);
Map<Ingred,Float> map = cheese.getCalorieTable();
map.put(Ingred.protein,srs.getFloat("protein"));
map.put(Ingred.vitamin,srs.getFloat("vitaminB1"));
map.put(Ingred.fat,srs.getFloat("fat"));
Map<Ingred,Float> map = new HashMap<Ingred,Float>();
map.put(Ingred.protein,srs.getFloat("protein"));
map.put(Ingred.vitamin,srs.getFloat("vitaminB1"));
map.put(Ingred.fat,srs.getFloat("fat"));
cheese.setCalorieTable(map);
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);
if(srs.getString("CheeseType").equals("Mozzarella"))
cheese.setCheeseType(CheeseType.Mozzarella);
else if(srs.getString("CheeseType").equals("Easy_Spread"))
cheese.setCheeseType(CheeseType.Easy_Spread);
else if(srs.getString("CheeseType").equals("Cottage"))
cheese.setCheeseType(CheeseType.Cottage);
else if(srs.getString("CheeseType").equals("Cheddar"))
cheese.setCheeseType(CheeseType.Cheddar);
cheese.setCheeseType(CheeseType.valueOf(srs.getString("CheeseType")));