E aí, pessoal... essa é a primeira vez que apareço com um tópico do tipo, espero que possam me ajudar... já estou há um tempão quebrando a cabeça e nada, tive que recorrer hehe.
O programa está compilando, não acusa erro nenhum, roda normalmente... mas então faço uma consulta no BD e vejo que o mesmo está em branco.
O programa é tosco, não riam hehe estou engatinhando.
A classe abaixo é de um programa original que não utilizava BD, como podem ver... o que interessa, por enquanto, é só a inserção de "aluno" no BD. Ignorem os trechos comentados da classe DB.
P.s.: não me perguntem o pq do modo texto, professor quis assim =|
import java.util.*;
import java.io.BufferedReader; //http://www.guj.com.br/java/74068-classe-vector
import java.io.IOException;
import java.io.InputStreamReader;
public class Entrada{
public static void main(String[] args){
try{
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String linha = "";
DB.conecta();
List<Aluno> alunos = new ArrayList<Aluno>();
List<Professor> professores = new ArrayList<Professor>();
List<Aula> aulas = new ArrayList<Aula>();
List<Disciplina> disciplinas = new ArrayList<Disciplina>();
List<Turma> turmas = new ArrayList<Turma>();
List<Conceito> conceitos = new ArrayList<Conceito>();
while(!linha.equals("FIM")){
System.out.println("\n(1) - Pesquisar as Disciplinas que um Aluno está matriculado");
System.out.println("(2) - Pesquisar os conceitos de um Aluno em uma Disciplina");
System.out.println("(3) - Digitar os conceitos de um Aluno em uma Disciplina");
System.out.println("(4) - Pesquisar todos os conceitos dos Alunos de uma Disciplina");
System.out.println("(5) - Atribuir faltas a um Aluno em uma Aula de uma Disciplina");
System.out.println("(6) - Pesquisar as faltas de um Aluno em uma Disciplina");
System.out.println("\nDigite o numero correspondente a operacao desejada apos a insercao dos dados... \n");
linha = reader.readLine();
if(linha.equals("Aluno")){
Aluno aluno = new Aluno();
linha = reader.readLine();
aluno.setNome(linha);
linha = reader.readLine();
aluno.setMatricula(linha);
DB.inserirAluno(aluno);
}else if(linha.equals("Professor")){
Professor professor = new Professor();
linha = reader.readLine();
professor.setNome(linha);
linha = reader.readLine();
professor.setMatricula(Integer.parseInt(linha));
linha = reader.readLine();
professor.setTitulacao(linha);
professores.add(professor);
}else if(linha.equals("Aula")){
Aula aula = new Aula();
linha = reader.readLine();
aula.setData(linha);
linha = reader.readLine();
aula.setConteudo(linha);
aulas.add(aula);
}else if(linha.equals("Disciplina")){
Disciplina disciplina = new Disciplina();
linha = reader.readLine();
disciplina.setNome(linha);
linha = reader.readLine();
disciplina.setCreditos(Integer.parseInt(linha));
linha = reader.readLine();
disciplina.setSemestre(Integer.parseInt(linha));
disciplinas.add(disciplina);
}else if(linha.equals("Turma")){
Turma turma = new Turma();
linha = reader.readLine();
// ao incluir professor para TURMA, utilizar MATRICULA !!!
for(int i = 0; i < professores.size(); i++){
if(Integer.parseInt(linha) == professores.get(i).getMatricula()){
turma.setProfessor(professores.get(i));
}
}
if(turma.getProfessor() == null){
System.out.println("Professor nao cadastrado, cadastro de TURMA cancelado");
continue;
}
linha = reader.readLine();
for(int i = 0; i < disciplinas.size(); i++){
if(linha.equals(disciplinas.get(i).getNome())){
turma.setDisciplina(disciplinas.get(i));
}
}
if(turma.getDisciplina() == null){
System.out.println("Disciplina nao cadastrada, cadastro de TURMA cancelado");
continue;
}
linha = reader.readLine();
turma.setDiaDaSemana(linha);
turmas.add(turma);
}else if(linha.equals("1")){
}else if(linha.equals("2")){
}else if(linha.equals("3")){
}else if(linha.equals("4")){
}else if(linha.equals("5")){
}else if(linha.equals("6")){
}
}DB.desconecta();
}
catch (IOException e){
System.out.println("Erro: "+ e);
}
}
}
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
public class DB{
private static String driver = "org.postgresql.Driver";
private static String inicializacao = "jdbc:postgresql://localhost/diarioDeClasse";
private static String usuario = "postgres";
private static String senha = "12345";
private static Connection con = null;
private static PreparedStatement query;
private static ResultSet r;
public static void die(Exception e){
e.printStackTrace(System.err);
System.exit(1);
}
public static void conecta(){
try{
// Carregar drivers
Class.forName(driver);
}catch(Exception e){
die(e);
}
// Conectar banco de Dados
try{
con = DriverManager.getConnection(inicializacao, usuario, senha);
}catch (SQLException e){
die(e);
}
// Criar Statement SQL
Statement st = null;
try{
st = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
}catch(SQLException e){
die(e);
}
try{
st = con.createStatement();
st.executeUpdate("DROP TABLE alunos");
st.executeUpdate("CREATE TABLE alunos (matricula VARCHAR(5) PRIMARY KEY, nome VARCHAR(30))");
st.close();
}catch(SQLException e){
System.err.println("Erro na criacao do banco de dados.");
System.err.println(e.getMessage());
}
}
public static void desconecta(){
try{
con.close();
}catch (SQLException e){
e.printStackTrace();
}
}
public static void inserirAluno(Aluno aluno){
try{
query = con.prepareStatement("insert into alunos(matricula, nome) values (?,?)");
query.setString(1, aluno.getMatricula());
query.setString(2, aluno.getNome());
query.close();
}catch (SQLException e) {
e.printStackTrace();
}
}
/*
public ArrayList<Cliente> ListaCliente(){
ArrayList<Cliente> lista = new ArrayList<Cliente>();
try{
con = DriverManager.getConnection("jdbc:mysql://localhost/mercado",
"root",
"root");
query = con.prepareStatement("select * from cliente");
r = query.executeQuery();
while(r.next()){
Cliente c = new Cliente();
c.setCodigo(r.getInt("codigo"));
c.setNome(r.getString("nome"));
c.setEndereco(r.getString("endereco"));
c.setBairro(r.getString("bairro"));
c.setCidade(r.getString("cidade"));
c.setEstado(r.getString("estado"));
lista.add(c);
}
r.close();
query.close();
con.close();
}catch(SQLException sql){
sql.printStackTrace();
}
return lista;
}
public Cliente RetornaCliente(String codigo) throws SQLException{
Cliente cliente = new Cliente();
con = DriverManager.getConnection("jdbc:mysql://localhost/mercado",
"root",
"root");
query = con.prepareStatement("select * from cliente where codigo=?");
query.setInt(1,Integer.parseInt(codigo));
r = query.executeQuery();
r.next();
cliente.setCodigo(r.getInt("codigo"));
cliente.setNome(r.getString("nome"));
cliente.setEndereco(r.getString("endereco"));
cliente.setBairro(r.getString("bairro"));
cliente.setCidade(r.getString("cidade"));
cliente.setEstado(r.getString("estado"));
r.close();
query.close();
con.close();
return cliente;
}
public boolean AtualizaCliente(Cliente cliente){
try{
con = DriverManager.getConnection("jdbc:mysql://localhost/mercado",
"root",
"root");
query = con.prepareStatement("update cliente set " +
"nome=?," +
"endereco=?," +
"bairro=?," +
"cidade=?," +
"estado=? where codigo=?");
query.setString(1, cliente.getNome());
query.setString(2, cliente.getEndereco());
query.setString(3, cliente.getBairro());
query.setString(4, cliente.getCidade());
query.setString(5, cliente.getEstado());
query.setInt(6,cliente.getCodigo());
if(query.executeUpdate()>0){
v = true;
}else{
v = false;
}
query.close();
con.close();
}catch (SQLException e) {
e.printStackTrace();
}
return v;
}
*/
}
