public List<AlumnoTresSemestresDTO> getActivosTresSemestres() {
		List<AlumnoTresSemestresDTO> alumnostressemestres = new ArrayList<AlumnoTresSemestresDTO>();
		
		Connection con = null;
		PreparedStatement pst = null;
		ResultSet rs = null;
		String sql = null;
		
		try {
			con = EscolarConnectionFactory.getInstance().getConnection();
			
			sql = "select matricula, apellidos, nombres from alumnos where id_situacion=1 order by matricula, apellidos, nombres";
			
			pst = con.prepareStatement(sql);
			rs = pst.executeQuery();
			
			while(rs.next()){
				AlumnoTresSemestresDTO dto = new AlumnoTresSemestresDTO();
				
				String matricula = rs.getString("matricula");
				String apellidos = rs.getString("apellidos");
				String nombres = rs.getString("nombres");
				
				dto.setMatricula(matricula);
				dto.setApellidos(apellidos);
				dto.setNombres(nombres);
				
				if (isInscrito(matricula, semestre_antepenultimo)){
					dto.setInscritoantepenultimo(true);
					dto.setPorcentajeantepenultimo(getPorcentajeAprovechamiento(matricula, semestre_antepenultimo));
				}else{
					dto.setInscritoantepenultimo(false);
					dto.setPorcentajeantepenultimo(-1);
				}
				
				if (isInscrito(matricula, semestre_penultimo)){
					dto.setInscritopenultimo(true);
					dto.setPorcentajepenultimo(getPorcentajeAprovechamiento(matricula, semestre_penultimo));
				}else{
					dto.setInscritopenultimo(false);
					dto.setPorcentajepenultimo(-1);
				}
				
				if (isInscrito(matricula, semestre_ultimo)){
					dto.setInscritoultimo(true);
					dto.setPorcentajeultimo(getPorcentajeAprovechamiento(matricula, semestre_ultimo));
				}else{
					dto.setInscritoultimo(false);
					dto.setPorcentajeultimo(-1);
				}
				
				alumnostressemestres.add(dto);
			}
			
		} catch (SQLException e) {
			
			e.printStackTrace();
		}finally{
			
			try {
				if (con != null){
					con.close();
				}
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
		
		return alumnostressemestres;
	}