Resumindo principalmente o hibernato das seguintes aspectos a seguir, incluindo o método de recuperação de Hibernato, o status do objeto em hibernado, quais são as três estratégias de recuperação do hibernato, que ocasiões são aplicáveis, o problema que o ORM resolve não corresponde ao mapeamento de hibernato. herança herança herança as três maneiras de relacionamentos, o resumo do método de find () de sessão e a diferença entre a interface de consulta etc. O conteúdo específico é o seguinte:
1 Método de pesquisa de hibernato
索 Pesquisa de diagrama de objeto de navegação (de acordo com o objeto carregado, navegação para outros objetos.)
按 OID Pesquisa (recupera o objeto de acordo com o OID do objeto.)
使用 Recuperação de HQL (usando uma linguagem de consulta HQL orientada ao objeto.)
使用 Pesquisa QBC (Usando QBC (QBC (QBC (QBC (QBC (QBC (QBC (QBC (QBC (QBC (QBC (QBC (QBC (QBC (QBC (QBC (QBC (QBC (QBC (Qurey por Critria) API) ) para recuperar objetos.
索 Recuperação local do SQL (instrução SQL Query usando banco de dados local.)
Incluindo o método de recuperação de Hibernato, o estado do objeto em Hibernate, quais são as três estratégias de recuperação do hibernado, que ocasião em que ocasiões são aplicáveis, o problema que o ORM resolve não corresponde, os três métodos do relacionamento com o mapeamento de hibernato, o relacionamento de herança, o relacionamento, o relacionamento de herança de hibernato, o Método encontrado () do método de sessão () de sessão e o resumo das diferenças na diferença entre a interface de consulta
T Transiente: Acabamos de criar com a nova declaração, não foi persistido e não está no cache da sessão. Os objetos Java em um estado temporário são chamados de objetos temporários.
(Persistente: foi persistido e adicionado ao cache da sessão. Os objetos Java em um estado persistente são chamados de objetos persistentes.
E desapegado: foi persistido, mas não está mais no cache da sessão. Os objetos Java em um estado livre são chamados de objetos livres.
3 Quais são as três estratégias de recuperação do hibernado e qual ocasião é aplicável a que ocasiões são aplicáveis
Ø Recuperação imediata
Vantagens: completamente transparentes para o aplicativo.
Desvantagens: as instruções selecionadas são muitas.
Aplicável: nível de classe.
Ø Recuperação atrasada
Vantagens: quais objetos são carregados pelo aplicativo para evitar a execução de exagero declarações seletivas e evitar objetos que não precisam ser carregados, economizando espaço na memória e melhorando a eficiência da recuperação.
Desvantagens: se o aplicativo for acessar a instância do agente do estado definido, deve -se garantir que ele tenha sido inicializado quando for durável.
Aplicação: um -to -multiple ou mais associado. Os aplicativos não precisam estar acessíveis imediatamente ou não acessarem.
接 Pesquisa de conexão esquerda e externa urgente
Vantagens: é completamente transparente para o aplicativo. Com conexões externas, o número de instruções selecionadas é pequeno.
Desvantagens: os objetos que podem não ser acessados podem ser carregados. Tabela de dados de banco de dados complexos Pesquisa de imagem Desempenho.
Aplicação: um -to -one ou mais associado. Os aplicativos precisam ser acessados imediatamente. O sistema de banco de dados tem um bom desempenho de conexão de tabela.
4 ORM resolveu o problema de não acumular (não corresponde entre o modelo de domínio e o modelo de relacionamento)
Model O modelo de domínio é orientado a objetos e o modelo de relacionamento está relacionado.
O modelo de domínio tem relações de herança e o modelo de relacionamento não pode representar diretamente o relacionamento de herança.
Existem muitos relacionamentos no modelo de domínio 多 e, no modelo de relacionamento, a tabela de conexão é usada para representar cada vez mais relacionamentos associados.
Model O modelo de domínio tem um relacionamento de dois caminhos.
Model O modelo de domínio promove o modelo de tamanho de partícula fino e o modelo de relacionamento defende modelos de tamanho grosso.
5 Mapeamento de hibernato de três maneiras de relacionamento de herança
系 Todo o sistema de herança usa uma tabela (Hierarquia de Tableper)
张 Cada subclasse tem uma tabela, armazenou os atributos exclusivos da subclasse (subclasse de tabela)
Class Cada classe específica (Subclasse da União), salva como uma tabela de informações completas (Tabela por concreto)
6 session find () Método e a diferença entre a interface de consulta
O método find () da classe de sessão e a interface de consulta suportam o método de recuperação HQL. A diferença entre os dois é que o primeiro executa apenas alguns métodos convenientes para declarações de consulta HQL simples A interface de consulta é a interface de consulta.
7 Configuração da Associação de Hibernato
Um -o -ne
Ø Ø Ø Ø Ø Ø
Ø Ø Ø Ø Ø Ø
8 Descreva brevemente as características da sessão
, Não threads são seguros; portanto, ao projetar arquiteturas de software, vários threads devem ser evitados para compartilhar a mesma instância de sessão.
实 A instância da sessão é leve. Isso significa que o objeto de sessão pode ser criado ou destruído regularmente no programa, como alocar uma instância de sessão separada para cada cliente ou alocar instâncias de sessão individuais para cada unidade de trabalho.
Na sessão, cada operação do banco de dados é realizada em uma transação, para que você possa separar diferentes operações (mesmo leitura).
9 Hibernate usa o arquivo XML para configurar o objeto-as vantagens do mapeamento de relacionamento
Hibernar não penetra no modelo de domínio superior nem penetra no modelo de dados inferior. Os desenvolvedores de software podem projetar modelos de domínio independentemente sem força para obedecer a quaisquer especificações. Os designers de banco de dados podem projetar modelos de dados independentemente sem força para atender a quaisquer especificações. O Mapeamento de Relacionamento de Objetos não depende de nenhum código do programa. manutenção mais conveniente.
10 A função do cache da sessão
库 Reduza a frequência de acesso ao banco de dados. A velocidade do aplicativo da memória da memória é obviamente mais rápida que a velocidade de consultar os dados no banco de dados, para que o cache da sessão possa melhorar o desempenho do acesso a dados.
对 Garanta que o objeto no cache seja sincronizado com os registros relevantes no banco de dados. Quando o estado do objeto persistente no cache muda, a sessão não executa imediatamente a instrução SQL relevante, que permite que a sessão combine várias instruções SQL relacionadas em uma instrução SQL para reduzir o número de bancos de dados de acesso e aumentar o programa de aplicação desempenho.
11 O problema de mais do que o tempo de execução de mais assuntos
新 O primeiro tipo de atualização de perda
Leitura suja
Ø Ø Ø Ø Ø/leitura fantasma
Ø Não leia repetidamente
新 O segundo tipo de atualização de perda
12 A diferença entre limpeza e vazio da sessão
清 Cache de limpeza de sessão significa atualizar o banco de dados de maneira síncrona de acordo com as alterações no estado do cache;
S claro é a sessão para limpar a parte ou todos os objetos ou sessão;
13 Princípio de trabalho de Hibernate e por quê
Primário
1. Leia e analise o arquivo de configuração
2. Leia e analise as informações de mapeamento, crie sessionfactory
3. Sessão aberta
4. Crie transmissão de transação
5. Operação persistente
6. Envie uma transação
7. Fechar sessão
8. Fechar sesstionFactory
Ø Por que você usa
1. Empacou o código do acesso do JDBC ao banco de dados, que simplifica bastante o código repetitivo tedioso da camada de acesso a dados.
2. O hibernato é uma estrutura de persistência e base baseada no JDBC, e é uma excelente implementação do ORM. Ele simplifica amplamente o trabalho de codificação da camada dao
3. O hibernato usa o mecanismo de reflexão Java em vez do programa aprimorado de bytecode para obter transparência.
4. O desempenho do Hibernate é muito bom porque é uma estrutura leve. A flexibilidade do mapeamento é excelente. Ele suporta vários bancos de dados de relacionamento, de um a um a relacionamentos mais complexos.
14 Hibernate Atraso Carga
1. HIBERNATE2 ALTA CONDENCIMENTAÇÃO DO LOUREGO DA
2. Hibernate3 fornece uma função de carregamento de atraso do atributo
Quando o Hibernate consulta os dados, os dados não existem e a memória e quando o programa realmente opera os dados, o objeto existe e a memória é adiada.
15 Mecanismo de cache do hibernato
1. O primeiro cache de nível de nível também é chamado de hibernação de cache interno, que pertence ao cache da classe de transação do aplicativo
2. Cache de segundo nível
a) Aplicação e cache
b) cache distribuído
Condições: Os dados não serão modificados por terceiros, o tamanho dos dados está em intervalo aceitável, a frequência de atualização de dados é baixa e os mesmos dados são frequentemente usados pelo sistema e pelos dados não críticos.
c) Realização do cache do terceiro partido
16 Otimize o hibernato
1. Use duas associações de duas no caminho
2. Uso flexível de uma associação de um caminho um -para -múltiplo
3. Ninguém -a -one, substitua -o por mais pares
4. Cache do objeto de configuração, sem cache de coleta
5. um saco de uso de coleta de um -multi -collection, a maior parte do conjunto de uso multi -coleta
6. As aulas de herança são usadas para multi -estate
7. Há menos campos de tabela, não tem medo da associação de tabelas, há um cache de segundo nível que suporta a cintura
O exposto acima é um resumo do hibernato, que é mais comum nas entrevistas de Java, na esperança de ajudar a todos.