$解:设等腰三角形的腰长为x\ \mathrm {cm},底边长为y\ \mathrm {cm}.$
$由题意可知,分两种情况: $
$①腰与底的差是3\ \mathrm {cm}时, $
$则\left\{ \begin{array}{l}{2x+y=12} \\ {x-y=3} \end{array} \right. $
$解得\left\{ \begin{array}{l}{x=5.} \\ {y=2.} \end{array} \right. $
$即腰为5\ \mathrm {cm},底为2\ \mathrm {cm}. $
$∵5,5,2能够组成三角形, $
$∴符合题意. $
$②底与腰的差是3\ \mathrm {cm}时, $
$则\left\{ \begin{array}{l}{2x+y=12} \\ {y-x=3} \end{array} \right. $
$解得\left\{ \begin{array}{l}{x=3.} \\ {y=6.} \end{array} \right. $
$即底为6\ \mathrm {cm},腰为3\ \mathrm {cm}. $
$∵3,3,6不能够组成三角形, $
$∴不符合题意. $
$故三边的长为5\ \mathrm {cm},5\ \mathrm {cm},2\ \mathrm {cm}. $