<TABLE> <S> <C>
<PAGE>
<ARTICLE> 5
<S> <C>
<PERIOD-TYPE> 6-MOS
<FISCAL-YEAR-END> JAN-31-2001
<PERIOD-START> FEB-01-2000
<PERIOD-END> JUL-31-2000
<CASH> 659,300
<SECURITIES> 0
<RECEIVABLES> 897,918
<ALLOWANCES> 16,969
<INVENTORY> 2,163,716
<CURRENT-ASSETS> 3,750,712
<PP&E> 10,170,981
<DEPRECIATION> 4,987,938
<TOTAL-ASSETS> 11,234,669
<CURRENT-LIABILITIES> 2,161,590
<BONDS> 1,001,175
0
15,010
<COMMON> 50,350
<OTHER-SE> 23,151,085
<TOTAL-LIABILITY-AND-EQUITY> 11,234,669
<SALES> 6,498,727
<TOTAL-REVENUES> 6,498,727
<CGS> 4,718,640
<TOTAL-COSTS> 4,718,640
<OTHER-EXPENSES> 1,557,497
<LOSS-PROVISION> 0
<INTEREST-EXPENSE> 150,788
<INCOME-PRETAX> 92,332
<INCOME-TAX> 167,012
<INCOME-CONTINUING> (74,680)
<DISCONTINUED> 0
<EXTRAORDINARY> 0
<CHANGES> 0
<NET-INCOME> (74,680)
<EPS-BASIC> (0.02)
<EPS-DILUTED> (0.02)
</TABLE>