O documento descreve como criar e usar Critérios em Java para selecionar objetos de acordo com filtros especificados. Critérios permitem adicionar restrições e ordenações para retornar resultados relevantes de uma consulta. O documento também explica como projetar propriedades específicas e agregar resultados usando Critérios.
Präsentation zum Thema Umwandlung der SeniVita Seniorenhäuser in Sassanfahrt, Eltmann, Pegnitz, Baiersdorf und Hummeltal in AltenPflege 5.0-Einrichtungen.
Präsentation zum Thema Umwandlung der SeniVita Seniorenhäuser in Sassanfahrt, Eltmann, Pegnitz, Baiersdorf und Hummeltal in AltenPflege 5.0-Einrichtungen.
Aqui são apresentados conceitos básicos sobre o paradigma web. Simples e rápido.
/**Depois que entrei no mundo Java, começei a procurar por conteúdo na internet para estudar, então me deparei com um ótimo site, http://www.argonavis.com.br, de um grande cara chamado Helder Rocha, que disponibiliza este mesmo conteúdo em seu site também. Obrigado pela ajuda a comunidade.*/
Java básico - Módulo 08 - Introdução à programação orientada à objetos oo - c...Professor Samuel Ribeiro
Classes
Atributos e métodos para as classes
Objeto this para acessar dados de instância
Overloading de métodos
Importar e criar pacotes
Usar modificadores de acesso para controlar o acesso aos elementos de uma classe
2. Critérios para Queries
• Uma maneira de criar e conectar objetos
simples de Java que agem como filtros para
selecionar os seus resultados desejados.
• Um mecanismo que permite que você forneça
Objetos de exemplo para mostrar o que você
está procurando, controlando quais detalhes
importam e quais propriedades ignorar.
3. Utilizando Critérios Simples
public static List tracksNoLongerThan(Time length, Session session) {
Criteria criteria = session.createCriteria(Track.class);
return criteria.list();
}
public static List tracksNoLongerThan(Time length, Session session) {
Criteria criteria = session.createCriteria(Track.class);
criteria.add(Restrictions.le("playTime", length));
return criteria.list();
}
public static List tracksNoLongerThan(Time length, Session session) {
return session.createCriteria(Track.clas).
add(Restrictions.le("playTime", length)).list();
}
4. Compondo Critérios
É possível incluir mais de um Critérion em sua query e todos eles
devem ficar satisfeitos que os objetos sejam incluídos nos resultados.
Criando mais de um Critério de query e como ordenar.
public static List tracksNoLongerThan(Time length, Session session) {
Criteria criteria = session.createCriteria(Track.class);
criteria.add(Restrictions.le("playTime", length));
criteria.add(Restrictions.like("title", "%A%"));
criteria.addOrder(Order.asc("title").ignoreCase());
return criteria.list();
}
5. Podemos utilizar tambem para filtrar Strings.
criteria.add(Restrictions.like("title", “A”,
MatchMode.ANYWHERE);
Se quiser fazer uma combinação sem distinção
entre maiúscula e minúscula, utilize ilike em vez
de like.
criteria.add(Restrictions.ilike("title", “A”,
MatchMode.ANYWHERE);
6. Se quiser encontrar quaisquer objetos que
combinem com qualquer um de seus critérios, em
vez de exigir que eles se encaixem com todos os
critérios, é preciso utilizar:
Restrictions.disjunction();
public static List tracksNoLongerThan(Time length, Session session) {
Criteria criteria = session.createCriteria(Track.class);
Disjunction any = Restrictions.disjunction();
any.add(Restrictions.le("playTime", length));
any.add(Restrictions.like("title", "%A%"));
criteria.add(any);
criteria.addOrder(Order.asc("title").ignoreCase());
return criteria.list();
7. Projeção e Agregação com Critérios
• Projeção – Significa simplesmente que você não
precisa de todas as informações disponíveis em
uma tabela.
• Agregação – Semelhantemente, envolve a
identificação de propriedades, assim podendo
pedir informações estáticas dessas propriedades,
como valores de contagem, ou encontrar valores
máximos, mínimos ou médios.
8. Obtendo uma projeção e que estamos
interessados especificamente em recuperar a
propriedade do titulo das faixas que encontramos.
public static List titlesContainingText(String text, Session session) {
Criteria criteria = session.createCriteria(Track.class);
criteria.add(Restrictions.like("title", text, MatchMode.ANYWHERE).ignoreCase());
criteria.setProjection(Projections.property("title"));
return criteria.list();
[java] - [Video Killed the Radio Star, Gravity´s Angel]
9. Se recuperássemos as durações da faixa, o
resultado seria esse :
criteria.setProjection(Projections.property(“playTime"));
[java] - [00:03:49, 00:06:06]
10. • O método projectionList() cria uma instância
ProjectionList que pode conter escolhas
multiplas de projeção para uma única query
com critérios.
public static List titlesContainingTextWithPlayTimes(String text, Session session) {
Criteria criteria = session.createCriteria(Track.class);
criteria.add(Restrictions.like("title", text, MatchMode.ANYWHERE).ignoreCase());
criteria.setProjection(Projections.projectionList().
add(Projections.property("title")).
add(Projections.property("playTime")));
return criteria.list();
}
[java] Title: Video Killed the Radio Star (Play Time: 00:03:49)
[java] Title: Gravity´s Angel (Play Time: 00:06:06)