jtable student control – jsc

Propaganda
JTABLE STUDENT CONTROL – JSC
Gil Eduardo de Andrade / Emílio Rudolfo Fey Neto
INTRODUÇÃO / DESCRIÇÃO
O sistema JTable Student Control - JSC disponibiliza uma interface gráfica em
Java que possibilita ao Instituto Federal do Paraná, IFPR – Paranaguá armazenar e
gerenciar digitalmente todas as informações dos seus alunos através da conexão e
interação com o Sistema Gerenciador de Banco Dados MySQL, sendo possível, ainda,
gerenciar posteriormente todas as informações armazenadas, alterando-as quando
preciso e removendo-as se necessário.
O JSC permite que as informações manipuladas sejam armazenadas de forma
consistente, ou seja, ele controla os dados de entrada através da utilização de
componentes gráficos adequados, escolhidos de acordo com os tipos de entrada
dados, ou seja, os campos são formatados para garantir que as informações
especificadas pelo usuário possam ser limitadas e filtradas, não produzindo
armazenamentos incorretos ou duplicados.
Motivação
Atualmente, o armazenamento e a manipulação das informações acadêmicas,
relativas aos alunos inscritos nos diversos cursos oferecidos pelo IFPR – Paranaguá é
feito através da utilização de planilhas eletrônicas. Tal fato dificulta o
gerenciamento e a logística dos profissionais técnicos administrativos que
trabalham na secretaria, bem como dos coordenadores e gestores disciplinares.
Portanto a utilização de um sistema, desenvolvido com intuito de dar suporte a
manipulação dessas informações, permite que as buscas dos alunos sejam feitas,
por cursos, nomes ou disciplinas de forma mais rápida e precisa, além de permitir
que relatórios sejam gerados através de filtros especificados pelos usuários do
sistema.
Desafios
A principal dificuldade no desenvolvimento do JSC está na identificação precisa
de todas as funcionalidades a serem desenvolvidas, visto que a organização atual da
secretaria acadêmica é pouco prática, e os profissionais que ali trabalham possuem
dificuldade em definir os mais elementares requisitos do aplicativo, além de
estarem ainda muito ligados a manipulação e metodologia das planilhas eletrônicas.
Objetivos
O sistema proposto tem como objetivo geral aperfeiçoar o processo de
armazenamento e gerenciamento das informações acadêmicas do IFPR –
Paranaguá. Tendo ainda como objetivos específicos:
Salvar, alterar, remover e disponibilizar todas as informações dos alunos;
Gerar relatório dos alunos: por curso, disciplina e turma;
Gerar gráficos estatísticos com gráficos 2D e 3D;
LISTA DE ABREVIATURAS
jcb
jlb
jta
jlt
jsp
ii
jtf
jftf
jb
jp
mf
dlm
dtm
jmb
jm
jmi
jck
jrb
bg
obj
– JComboBox
– JLabel
– JTextArea
– JLits
– JScrollPane
– ImageIcon
– JtextField
– JFormattedTextField
– JButton
– JPanel
– MaskFormatter
– DefaultListModel
– DefaultTableModel
– JMenuBar
– JMenu
– JMenuItem
– JCheckBox
– JRadioButton
– ButtonGroup
– Objeto/Instância de uma Classe
PROTÓTIPO: TELAS DO SISTEMA
CADASTRO DE ALUNOS
Descrição / Funcionalidades
A janela de cadastro de alunos é utilizada para efetuar a adição, atualização,
remoção e visualização de todos os alunos armazenados no banco de dados do
sistema. Um aluno deve possui as seguintes informações: matricula, nome, curso,
turma (ano), data de nascimento e foto.
Layout
Classes Relacionadas




Visualização:
Controle:
Modelo:
Utilidade:
VCadastroAluno.java
CCadastroAluno.java
MAlunosDAO.java, MAlunos.java, MCursosDAO.java, MCursos.java
Conexão.java
Tabelas Relacionadas
 tb_alunos
 tb_cursos
CLASSES: ESTRUTURA E DESCRIÇÃO
mvc.java: Main
Estrutura
Descrição
Trata-se da classe principal do projeto, possui o método estático void main() da
aplicação, dentro dele é instanciado um objeto da classe VCadastroAluno.java que irá
apresentar a janela inicial do aplicativo.
VCadastroAluno.java: Visualização
Estrutura
Descrição
Trata-se de uma classe de visualização, possui uma relação de herança com a
classe JFrame, sendo a primeira janela a ser invocada pelo aplicativo, para tal seu
construtor instancia e configura todos os componentes gráficos necessários para que
seja possível ao usuário manipular e gerenciar as informações dos alunos cadastrados
no sistema. Todos os eventos desta classe são controlados pela classe
CCadastroAluno.java, por isso uma referência sua é recebida pelo construtor da
CCadastroAluno.java.
CCadastroAluno.java: Controle
Estrutura
Descrição
Trata-se de uma classe de controle, sendo assim implementa os métodos
abstratos das interfaces ActionListener e MouseListener controlando os eventos
gerados pela classe de visualização VCadastroAlunos.java. Possui objetos das classes:
MAlunosDAO.java e MCursosDAO.java que a permitem ter acesso aos dados
armazenados nas tabelas tb_alunos e tb_cursos do banco de dados.
MAlunosDAO.java: Modelo
Estrutura
Descrição
Trata-se de uma classe modelo que tem por objetivo manipular as informações
armazenadas no banco de dados, possui uma relação de herança com a classe
Conexao.java que se encarrega de efetuar e abstrair toda parte de conexão e
transação com o banco. Possui uma lista de objetos da classe MAlunos.java que é
carregada durante a leitura da tabela tb_alunos do banco de dados.
MAlunos.java: Modelo
Estrutura
Descrição
Trata-se de uma classe modelo que tem por objetivo armazenar as informações
carregadas do banco de dados e representar, em tempo de execução, a entidade
aluno. Cada objeto dessa classe tem por objetivo representar uma linha da tabela
tb_alunos.
MCursosDAO.java: Modelo
Estrutura
Descrição
Trata-se de uma classe modelo que tem por objetivo manipular as informações
armazenadas no banco de dados, possui uma relação de herança com a classe
Conexao.java que se encarrega de efetuar e abstrair toda parte de conexão e
transação com o banco. Possui uma lista de objetos da classe MCursos.java que é
carregada durante a leitura da tabela tb_cursos do banco de dados.
Conexão.java: Utilidade
Estrutura
Descrição
Trata-se de uma classe de utilidade, servindo como superclasse para subclasses
que precisam conectar e efetuar transações com o banco de dados. Depende do
pacote mysql-connector.jar, que precisa ser adicionado ao projeto, já que contém o
driver necessário para que comunicação em a aplicação e banco de dados ocorra
corretamente.
Download