Dúva com Json a partir de Critéria

Boa tarde a todos. Alguém sabe se é possível e como extrair um jason conforme abaixo?
Desde já agradeço

Tenho essa tabela

CREATE TABLE Camera (
serial varchar(20) DEFAULT NULL,
IdCamera int(11) NOT NULL AUTO_INCREMENT,
IdPlant int(11) DEFAULT NULL,
IdLocation int(11) DEFAULT NULL,
deletedDate varchar(45) DEFAULT NULL,
mac_address varchar(17) DEFAULT NULL,
descricao varchar(26) DEFAULT NULL,
exitCam varchar(4) DEFAULT NULL,
brandCam varchar(45) DEFAULT NULL,
PRIMARY KEY (IdCamera)
) ENGINE=InnoDB AUTO_INCREMENT=30 DEFAULT CHARSET=utf8;

e esse consulta com criteria

public List getListByParameters(Integer idLocation,Integer idPlant) {

	 Criteria criteria = getSession().createCriteria(Camera.class);
	 
     criteria.add(Restrictions.eq("IdPlant",idPlant));
	 
     criteria.add(Restrictions.eq("IdLocation", idLocation));
	 
	 criteria.setProjection(Projections.projectionList()
			 .add(Projections.property("descricao"))
		     .add(Projections.property("Serial")));			 
     
     System.out.println("CameraDao "+criteria.toString());       
     
     return criteria.list();

}

Como faço para gerar essa saída com json

result: [

{

descricao: 'djakjdhasjk',

serial: '6s84f6sdf54',

mac: '21:21:2s',

idLocation: 11,

idPlant: 22,

idCam: 1,

exitCam: 'on',

brandCam: '1'

},

{

descricao: 'djakjdhasjk',

serial: '6s84f6sdf54',

mac: '21:21:2s',

idLocation: 11,

idPlant: 22,

idCam: 1,

exitCam: 'on',

brandCam: '1'

},

{

descricao: 'djakjdhasjk',

serial: '6s84f6sdf54',

mac: '21:21:2s',

idLocation: 11,

idPlant: 22,

idCam: 1,

exitCam: 'on',

brandCam: '1'

}

]

Grato

Você não tem uma classe que representa esta tabela?
E está usando qual opção para serializar o json? Jackson?