Implementei o código como visto no vídeo e deu tudo certo. Mas, se eu tento criar o cliente primeiro, adicioná-lo a conta e persistir a conta, o relacionamento não é refletido no banco.
Já tentei criar o relacionamento OneToOne também na conta informado um MappedBy e mesmo assim não funcionou. Alguma dica?
Não seria interessante que a relação fosse preenchida caso eu inserisse um dos dois objetos, referenciando o outro?
Segue abaixo o código das minhas classes Conta e Cliente:
package br.com.mmorais.financas.modelo;
import java.util.List;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.OneToOne;
@Entity
public class Conta {
    @Id
    @GeneratedValue(strategy=GenerationType.IDENTITY)
    private Integer id;
    @OneToOne(mappedBy="conta")
    private Cliente titular;
    private String numero;
    private String banco;
    private String agencia;
    @OneToMany(mappedBy="conta")
    private List<Movimentacao> movimentacoes;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Cliente getTitular() {
        return titular;
    }
    public void setTitular(Cliente titular) {
        this.titular = titular;
    }
    public String getNumero() {
        return numero;
    }
    public void setNumero(String numero) {
        this.numero = numero;
    }
    public String getBanco() {
        return banco;
    }
    public void setBanco(String banco) {
        this.banco = banco;
    }
    public String getAgencia() {
        return agencia;
    }
    public void setAgencia(String agencia) {
        this.agencia = agencia;
    }    
    public List<Movimentacao> getMovimentacoes() {
        return movimentacoes;
    }
    public void setMovimentacoes(List<Movimentacao> movimentacoes) {
        this.movimentacoes = movimentacoes;
    }
}package br.com.mmorais.financas.modelo;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.OneToOne;
@Entity
public class Cliente {
    @Id
    @GeneratedValue(strategy=GenerationType.IDENTITY)
    private Integer id;
    private String nome;
    private String profissao;
    private String endereco;
    @JoinColumn(unique=true)
    @OneToOne
    private Conta conta;
    public Cliente() {
    }
    public Cliente(String nome, String profissao, String endereco) {
        super();
        this.nome = nome;
        this.profissao = profissao;
        this.endereco = endereco;
    }
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getNome() {
        return nome;
    }
    public void setNome(String nome) {
        this.nome = nome;
    }
    public String getProfissao() {
        return profissao;
    }
    public void setProfissao(String profissao) {
        this.profissao = profissao;
    }
    public String getEndereco() {
        return endereco;
    }
    public void setEndereco(String endereco) {
        this.endereco = endereco;
    }
    public Conta getConta() {
        return conta;
    }
    public void setConta(Conta conta) {
        this.conta = conta;
    }
} 
            