豐玉桂是山東聊城的一位書生,傢裡很貧窮,沒有謀生的職業。明代萬歷年問,有一年發生瞭大災荒,豐玉桂孑然一身到南邊去逃荒。等到回傢的時候,到瞭沂州就病瞭。他極力撐持著有病的身體走瞭幾裡路,來到瞭城南的一片亂葬崗子,越發疲累無力瞭,因此隻好倚著一座墳墓躺下來休息。
忽然,他好像做夢似地來到瞭一個村莊裡。有一位老翁從一傢大門中出來,邀請他進去。這老翁傢隻有兩間簡陋的房屋,屋裡有一位女子,年齡有十六七歲,面貌神態俊秀文雅。老翁叫她煮柏枝湯,用陶器盛瞭招待客人;又詢問起豐生的籍貫、年齡,問完瞭,就說:“我姓李名洪都,祖籍山西平陽,流落居住在這裡已經三十二年瞭。請你記住這裡的門戶,我傢的子孫如來尋訪,就麻煩你指給他們。老夫不敢忘你的恩德。我的幹女兒慰娘,也不算醜,可以許配給你,等我的三兒子到來的時候,就叫他給你們主持婚事。”豐生大喜,拜謝說:“我今年二十二歲瞭,還沒有婚配,承蒙你把女兒許給我為妻,固然很好;但什麼地方能找到您的傢人告訴他們呢?”老翁說:“你隻要到北邊的村子裡去,等一個多月,自然就有人來,隻求你不要怕麻煩啊。”豐生恐怕老翁說話沒有信用,就要求說:“實話告訴您:我本來就窮得傢徒四壁,恐怕日後不能像您所期望的那樣。如果半路把我拋棄瞭,那是人所難以忍受的事。即使您沒有許配婚姻的情義,我也不會不遵守答應您的諾言,您不如直接瞭當地說要我為您辦點事好瞭。”李翁笑著說:“你要叫老夫信誓旦旦地向你發誓嗎?我早就知道你傢貧。這次訂立婚約並非專門為瞭你。慰娘孤獨無靠,依托在我這兒已經很久瞭。我不忍心聽任她流離失所,所以把她許配給你。你何必疑心呢?”於是就拉著他的胳膊把他送出門去,拱瞭拱手關上門回去瞭。
豐玉桂一覺醒來,原來仍在墳墓邊躺著,看看太陽,已經將近正午瞭。他慢慢地站起來,一步一步地走到村中。村裡的人見瞭他都吃瞭一驚,認為他已經死在道旁一天多瞭。於是豐生頓時明白瞭李翁就是墳墓中的人,他把這事隱瞞起來沒說,隻求借間屋子住下。村裡的人恐怕他再死瞭,沒有人敢留下他。這村裡有一位秀才和豐生同姓。聽說瞭這件事,就跑去詢問豐生的傢世,原來豐秀才還是豐生的遠房叔叔。豐秀才高興地把豐生領到自己傢中,給他吃喝治病。過瞭幾天豐生就痊愈瞭。豐生講述瞭夢中所遇見的情景,他叔父也很驚異,於是就讓豐生住下等待著,靜觀事情的發展。住瞭不久,果然有位官人來到村中,訪問他父親墳墓的地點。自稱是山西平陽縣的進士叫李叔向。從前他父親與同鄉某甲一起出外經商,他父親死在沂州,某甲就把他葬在一處亂葬崗中。回到傢鄉後,某甲也死瞭。那時李翁的三個兒子年齡都還小,長子叫伯仁,考中瞭進士,在淮南當縣令,多次派人尋找父親的墳墓,始終沒有知道的人。次子叫仲道,考中瞭舉人。叔向最小,也考中瞭進士,於是就自己出來尋求父親的遺骨,來到沂州,到處尋訪。這天來到瞭這個村子裡,村裡人都不知道,豐生就把他引到墓地,指給他看。李叔向不敢相信,豐生對他具體述說瞭自己所遇到的情景。叔向感到很驚奇,仔細看瞭看,兩座墳墓緊緊靠在一起。有人告訴他說:三年前有一個做官的人,把他的小妾葬在這裡。李叔向恐怕錯挖瞭別人傢的墳墓,豐生就把自己躺過的地方指給他看。李叔向便吩咐抬一口棺材放在墳旁,才開始挖掘。墳墓掘開,見到一具女屍,衣服裝飾都腐朽瞭,而面色像活人一樣。李叔向知道是挖錯瞭,非常駭怕,不知道該怎麼辦。不料棺材中的女子頓時坐瞭起來,向門外看瞭看說:“三哥來瞭嗎?”李叔向吃瞭一驚,走過去問她,原來她就是薛慰娘。李叔向脫下自己的外衣給她蓋好,派人抬著她回到旅店。又急忙命人發掘旁邊的墳墓,希望父親也能復活。挖開以後,屍體皮肉尚存,用手一摸已僵硬幹燥瞭。叔向悲哀不止,把屍體裝殮入棺木中,作瞭七天法事超度亡靈。慰娘也穿一身孝服,像女兒一樣祭奠。
一天,慰娘忽然對叔向說:“從前阿爹有黃金兩錠,曾經分給我一錠作嫁妝。我因為孤弱一人,沒有收藏的地方,便用絲線拴在腰裡,而沒帶來,三哥你得到瞭沒有?”李叔向不知道此事,就叫豐生返回去在墓穴中尋找,果然找到瞭一錠,和慰娘說的一樣。叔向仍把那錠有絲線作為標志的黃金贈給慰娘。閑暇的時候,叔向就詳細詢問瞭她的傢世。原來慰娘的父親薛寅侯沒有兒子,隻有慰娘一個女兒,十分疼愛她。慰娘有一天從金陵舅父傢回來,帶著一個老婆子去雇船,駕船的是南京的一個專門保媒的人。當時有一個做官的人,任期滿瞭要到北京去,托這個保媒的人給找一個美貌的侍妾。媒人跑瞭幾傢,沒有一個中意的。為瞭這事駕著小船到廣陵去物色,忽然遇上瞭薛慰娘,暗中就產生瞭一個害人的詭計,急忙招呼她們搭船過江。薛慰娘帶的老婆子本來就認識他,因此就和慰娘一起上船渡江。中途,這個人把迷藥放到食物中,慰娘和老婆子都中毒昏迷瞭。他就把老婆子推到江中,載著慰娘又返回瞭南京,用重金賣給瞭那個做官的人。慰娘入瞭門,這傢的大老婆才知道,非常憤怒。慰娘又因中毒後頭腦尚不清楚,不知道向她行禮,於是大老婆就鞭打她,並把她囚禁起來。北上三日以後,薛慰娘才完全清醒過來,婢女把事情經過告訴瞭她,慰娘大哭。一天夜晚,在沂州住宿,慰娘就上吊死瞭,他們就把她葬在亂葬崗中。慰娘在墳墓中,被群鬼欺凌,李翁時常保護著她,慰娘便拜李翁為義父。李翁說:“你命不該死,我一定給你挑選一個好女婿。”前些日子,豐生見瞭面後走瞭,李翁回來後對慰娘說道:“這個讀書人品行可以信賴。等你三哥來瞭,替你主婚。”有一天,李翁對她說:“你可以回去等侯著,你三哥快來瞭。”原來這就是李叔向發掘墳墓的那天。慰娘在服喪期間,對叔向追述瞭往事,叔向嘆息瞭很久,就把慰娘當作妹妹,讓她改姓李。略微置辦瞭一些衣服物品,安排慰娘和豐生結瞭婚。叔向說:“我帶的盤費不多,不能給妹妹辦嫁妝,我的意思是帶著你們一起回去,以安慰老母之心,怎麼樣?”慰娘也非常高興。於是夫妻二人隨著叔向,用車載著靈柩一起出發瞭。
到傢以後,李母詢問明白瞭事情的經過,喜愛慰娘勝過瞭自己的親生女兒,安排她們在另一座院中居住。在辦喪事過程中,慰娘時李翁的哀悼之情超過瞭他的兒孫。李母越發喜愛她,不讓他們回聊城瞭,囑咐兒子給他們買一座宅子。正巧有一個姓馮的要賣宅子,要價六百兩銀子。李傢倉促之間未能湊足銀子,暫時先把房契收下,約定日子交兌銀兩。到瞭日期,姓馮的早一步來瞭,正巧慰娘也從別院中來探望母親,突然看到瞭馮某,覺得非常像那個駕船的人。馮某見到慰娘也很吃驚。慰娘急忙越過他走瞭進去。兩位哥哥也因為母親有點小病,都集合在這裡,慰娘問:“廳前度步的那個人是誰?”李仲道說:“幾乎忘瞭這件事,這人一定是前幾天賣房子的人。”就站起來準備出去。慰娘阻止瞭他,把自已的懷疑告訴瞭他,叫他去仔細盤問這姓馮的。仲道答應著出去,馮某已經離開瞭,而巷子南邊教私塾的薛先生卻在那兒。仲道就問:“先生來有什麼事?”薛先生說:“昨天晚上馮某請求我今天早些到府上來,給他寫個文契並作保人。剛才在路上遇見他,說偶然忘記瞭一件事,暫時回去一趟,立刻就回來,叫我來這兒坐著等他。”少停瞭一會兒,李叔向和豐生都來瞭,於是互相攀談起來。慰娘因為馮某的緣故,悄悄地來到屏風後偷看客人。仔細地看瞭看薛先生,原來是她的父親,就突然從屏風後跑出,抱著父親失聲大哭。薛翁驚喜地流著淚說:“我兒從哪裡來?”眾人才知他就是薛寅侯,仲道雖然在路上常常遇見他,當初並不知道他的名字。到瞭這時候大傢都非常高興,對他講述瞭慰娘前前後後的經歷,設下酒席慶賀他父女團圓,因而留下他住瞭兩晚。薛先生談瞭自己的經歷,原來他丟失瞭女兒後,妻子因為悲傷過度死瞭,他光棍一人無依無靠,就遊學到瞭這裡。豐生和他約定,購買瞭宅子後就把他接來同住。薛翁第二天去探看,馮某全傢都逃走瞭,才知道殺害老婆子、賣瞭女兒的,就是這個人。馮某剛到平陽,做買賣發瞭傢,但連年來賭博,日子一天天窮困,所以就賣他的住宅。賣薛慰娘的錢,也快花盡瞭。慰娘得到瞭好的歸宿,也就不十分仇恨馮某瞭,隻是選瞭個好日子遷入新居,也不再追究他逃到哪兒去瞭。李母經常饋贈慰娘財物,一切日用所需都供給他們。豐生於是就在平陽安瞭傢,但需要按期回原籍參加各種考試,十分辛苦,幸而這一科鄉試他考中瞭舉人。慰娘富貴瞭以後,常常想念那老婆子是為瞭自己而死,想報答一下他的兒子。老婆子的丈夫姓殷,有一個兒子叫殷富,喜歡賭博,窮得沒有立錐之地。有一天殷富在賭場上為賭註發生瞭爭執,打死瞭人,就逃
亡到瞭平陽,老遠地來投奔慰娘。豐生把他收留在自己傢中,詢問他殺的那人的姓名,原來就是駕船的馮某。豐生驚駭感嘆瞭好一會兒,就向殷富說明瞭情況,殷富才知馮某就是殺母的仇人,越發高興,就在豐生傢當瞭仆人。薛寅侯就在女婿傢養老,女婿給他買瞭一個妾,生瞭一個兒子,一個女兒。