Cresciuto nel settore giovanile del Lecce, nelle cui file ha vinto con la Primavera allenata da Roberto Rizzo due titoli nazionali nel 2002-2003 e nel 2003-2004, ha debuttato in Serie A nel campionato 2003-2004 in Lecce-Lazio (0-1) del 25 gennaio 2004, quando, non ancora diciottenne, è stato mandato in campo da Delio Rossi. Nella stagione successiva ha collezionato un'altra presenza in campionato, mentre nel 2005-2006 ha ottenuto due presenze in massima serie. Nella seconda parte dell'annata 2005-2006, con l'arrivo in prima squadra dell'allenatore Roberto Rizzo, che aveva già guidato Esposito nella formazione primavera, il giocatore è stato convocato più spesso per le partite della prima squadra.
Dopo una stagione in prestito alla Sambenedettese, ha fatto ritorno in giallorosso nell'estate del 2007 e ha partecipato al campionato di Serie B conclusosi con la promozione dei salentini in massima divisione. Il 27 ottobre 2007 ha segnato il suo primo gol con la maglia giallorossa in Rimini-Lecce (2-3). Il 9 novembre 2008 ha realizzato la prima rete in Serie A, nella partita Lecce-Milan, conclusasi 1-1.
Il 28 luglio 2009 è stato ceduto in comproprietà al Genoa,[6] dove ha trovato però poco spazio in squadra. Il 19 gennaio 2010 è stato ceduto in prestito al Livorno.[7]
Il 25 giugno 2010 Lecce e Genoa hanno rinnovato la comproprietà; il giocatore, tornato a disposizione della squadra ligure, è stato ceduto in prestito al Bologna il successivo 15 luglio[8]. Con la maglia rossoblù ha raccolto 11 presenze nel campionato.
Il 24 giugno 2011 il Lecce ha comunicato di aver rinnovato la compartecipazione del difensore con il Genoa[9]; Esposito si è dunque trasferito nuovamente al Lecce, a titolo temporaneo.
Il 22 giugno 2012 il Lecce ha annunciato di aver riscattato l'intera proprietà del difensore dal Genoa.[10]
Il 23 luglio 2013 è passato al Latina firmando un contratto di due anni.[11][12]
Il 31 agosto 2016 si è trasferito a titolo definitivo al L.R. Vicenza nell'ambito di uno scambio che ha condotto Marco Pinato al Latina.
Il 20 luglio 2017 è stato ceduto a titolo definitivo al Cesena, con cui ha firmato un contratto biennale con opzione per la terza stagione.
Il 19 agosto 2018 è passato a titolo definitivo al Catania, sottoscrivendo un contratto biennale.[13]
Il 23 settembre 2020 è tornato al Latina, maglia che riveste fino al termine della stagione 2022-2023 quando si ritira dal calcio giocato.
Ritiratosi dal calcio giocato, rimane nel Latina come allenatore in seconda di Daniele Di Donato. Il 14 gennaio 2024, con l'esonero di Di Donato, assume ad interim la guida della prima squadra.[16]