본관은 선산(善山). 자는 장경(長卿). 호는 삼매당(三梅堂). 아버지는 부호군(副護軍) 김활(金活), 어머니는 안강노씨(安康盧氏)로 노경륜(盧景倫)의 딸이다. 종숙 김양(金瀁)에게 입양되고 장현광(張顯光)·허목(許穆)에게 수학하였다.
1635년(인조 13) 생원시에 합격하였고, 1660년(현종 1) 문과증광시에 병과로 급제하여, 성균관전적(成均館典籍)·무장현감(茂長縣監)·춘추관편수관(春秋館編修官)·예조정랑·영해부사(寧海府使) 등을 거쳤다.
이 가운데 특히 1671년 영해부사로 있을 때 계속 흉년이 들어 영해 일대의 피해가 심하자, 그는 진휼청(賑恤廳)을 열고 사재를 털어 부내 기민은 물론, 인근 고을의 백성까지 구휼해 주어 후에 숙마(熟馬) 1필을 하사받았다.
예학에 밝아 제현들의 상례와 제례에 관한 논설을 가려 뽑아 『제례질의(諸禮質疑)』를 편찬하였고, 1675년(숙종 1) 대왕대비 복제를 논할 때 허목과 함께 계초(啓草)를 작성하여 올렸다. 저서로는 『선집록(先執錄)』·『제례질의(諸禮質疑)』·『삼매당문집(三梅堂文集)』 등이 있다.