紫庄镇隶属于徐州市贾汪区,位于江苏省徐州市贾汪区东南部,镇政府驻地紫庄村,距徐州市区35公里。东邻塔山镇,南与铜山县大许乡、徐庄乡隔京杭大运河相望,西与大吴镇相邻,北以不牢河为界,与贾汪镇为邻。总面积66.68平方千米(2017年),其中耕地5.44万亩;人口6.17万人(2017年)。紫庄镇辖17个村委会、1个居委会,65个自然村、196个村民小组。