周定王九年(公元前598年)春,楚庄王率军攻郑,到达郑国的栎(今河南禹县)邑。郑国子良建议郑由服晋改为从楚,他说:“晋、楚不致力于德行而用武力争夺,我们靠拢打来者就行。晋、楚都没有信用,我们哪能有信用?”于是郑国转而跟从楚国。此年夏,楚庄王召集郑襄公、陈成公会盟于辰陵(今河南淮阳县西),郑、陈表示依附于楚国。后来,郑又与晋结盟。
周定王十年(公元前597年)春,楚庄王以郑有二心为由,率军攻郑。楚军包围郑都,历时三月之久,终于破城。楚军从都城的皇门进入,到达大路上。只见郑襄公袒衣露体,牵着羊迎接楚庄王。郑襄公说:“我不能奉承天意,不能事奉君王,使您带着怒气来到敝邑,这是我的罪过,岂敢不唯命是听?要把我俘虏到江南,放在海边,悉听吩咐;要灭亡郑国,分割郑地以赐诸侯,让郑国人为臣妾,也悉听吩咐。如果您顾念旧好而不灭敝邑,使敝邑等同于楚国诸县,这是您的恩惠,也是我的愿望。请君主考虑。”楚庄王左右随从主张拒绝其请求。楚庄王认为,郑君能自下于人,必然能取信和使用百姓,因此郑国还有希望。于是,楚庄王命令楚军后撤30里,允许郑国媾和。楚国潘虺进入郑国结盟,郑国子良到楚国为人质。
