我在数据库中有颜色的VARCHAR。格式为rrr,ggg,bbb
(示例225,225,0)。
如何将该String转换为java.awt.Color
并在JSF页面中将其可视化?
答案 0 :(得分:2)
这样做:
1.读取颜色列值
2.使用,
或您使用过的任何其他分隔符拆分字符串值
3.将每个值解析为Integer值
4.将此值传递给java.awt.color构造函数。
示例示例:
int red,green,blue;
String colorStr = "225,225,0"; //Value from DB
String[] ar_color = colorStr.split(",");
red = Integer.parseInt(ar_color[0]);
green = Integer.parseInt(ar_color[1]);
blue = Integer.parseInt(ar_color[2]);
Color myColor = new Color(red, green, blue);
答案 1 :(得分:1)
我将解析数据库条目并将值转换为整数,然后您可以使用其中一个 java.awt.color 的构造函数。
但是我不确定这是你想要的。您希望在其中一个JSF页面中使用此颜色值。
您可能正在为此组件设置颜色:
this.myComponent.setStyle("color:'225,225,0'");
所以你可以动态地从DB中改变这样的颜色:
this.myComponent.setStyle("color:" + myColorStringFromDB);
无需转换为java颜色。
答案 2 :(得分:0)
使用您拥有的值
创建一个Color
对象
Color color = new Color(int rrr, int ggg, int bbb)
实施例
Color color = new Color(255, 255, 0)