pagina anterior

Criando uma classe em grails

 

class Professor extends Pessoa{
    String nome
    Date nascimento
    String CPF
 
}
 

Na classe em grails, não é necessário criar um id, pois o framework cria automáticamente para nós.

 
 

Criando relacionamentos

*entenda melhor sobre relacionamentos, acessando o artigo G_Info

No exemplo a seguir vamos criar uma relacionamento entre a tabela Professor e a tabela Departamento, pois cada professor, pertence a um departamento, ou seja, vamos criar uma relação um para muitos.

 

Para criar relacionamentos entre as tabelas podemos usar uma ferrameta no workbench, basta clicar no botão  e clicar nas tabelas que deseja relacionar, deixando-as da seguite forma:

Em código SQL ficará da seguinte forma:

 

CREATE  TABLE IF NOT EXISTS `ginfo`.`Professor` (
  `idProfessor` INT(11) NOT NULL ,
  `nome` VARCHAR(45) NULL DEFAULT NULL ,
  `CFP` VARCHAR(45) NULL DEFAULT NULL ,
  `nascimento` DATE NULL DEFAULT NULL ,
  `departameto_iddepartameto` INT(11) NOT NULL ,  // cria-se a coluna que guardará a chave primária da tabela departamento.
  PRIMARY KEY (`idProfessor`) ,
 
  CONSTRAINT `fk_Professor_departameto`  
    FOREIGN KEY (`departameto_iddepartameto` ) // dizemos que a coluna que criamos é uma chave estrangeira.
    REFERENCES `ginfo`.`departameto` (`iddepartameto` ) // dizemos que essa chave estrangeira faz referência a a tabela departamento
   );

 

Criamos a tabela departamento

 
CREATE  TABLE IF NOT EXISTS `ginfo`.`departameto` (
  `iddepartameto` INT(11) NOT NULL ,
  `nome` VARCHAR(45) NULL DEFAULT NULL ,
  PRIMARY KEY (`iddepartameto`) )
 
 

Criando relacionamentos no grails

 

 

class Professor extends Pessoa{
 
        String matricula
        Departamento departamento
        Date dataDeIngresso
        float totalDePontos
}
 

Veja que existe uma variável do tipo Departamento o que define que cada professor pertencerá à um departamento.

 
página anterior                                                                                     próxima página