📄 query_criteria.pot
字号:
# SOME DESCRIPTIVE TITLE.# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.##, fuzzymsgid ""msgstr """Project-Id-Version: PACKAGE VERSION\n""Report-Msgid-Bugs-To: http://bugs.kde.org\n""POT-Creation-Date: 2008-08-14 15:28+0000\n""PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n""Last-Translator: FULL NAME <EMAIL@ADDRESS>\n""Language-Team: LANGUAGE <kde-i18n-doc@kde.org>\n""MIME-Version: 1.0\n""Content-Type: application/x-xml2pot; charset=UTF-8\n""Content-Transfer-Encoding: 8bit\n"#. Tag: title#: query_criteria.xml:29#, no-c-formatmsgid "Criteria Queries"msgstr ""#. Tag: para#: query_criteria.xml:31#, no-c-formatmsgid "Hibernate features an intuitive, extensible criteria query API."msgstr ""#. Tag: title#: query_criteria.xml:36#, no-c-formatmsgid "Creating a <literal>Criteria</literal> instance"msgstr ""#. Tag: para#: query_criteria.xml:38#, no-c-formatmsgid "The interface <literal>org.hibernate.Criteria</literal> represents a query against a particular persistent class. The <literal>Session</literal> is a factory for <literal>Criteria</literal> instances."msgstr ""#. Tag: programlisting#: query_criteria.xml:44#, no-c-formatmsgid "" "<![CDATA[Criteria crit = sess.createCriteria(Cat.class);\n" "crit.setMaxResults(50);\n" "List cats = crit.list();]]>"msgstr ""#. Tag: title#: query_criteria.xml:49#, no-c-formatmsgid "Narrowing the result set"msgstr ""#. Tag: para#: query_criteria.xml:51#, no-c-formatmsgid "An individual query criterion is an instance of the interface <literal>org.hibernate.criterion.Criterion</literal>. The class <literal>org.hibernate.criterion.Restrictions</literal> defines factory methods for obtaining certain built-in <literal>Criterion</literal> types."msgstr ""#. Tag: programlisting#: query_criteria.xml:59#, no-c-formatmsgid "" "<![CDATA[List cats = sess.createCriteria(Cat.class)\n" " .add( Restrictions.like(\"name\", \"Fritz%\") )\n" " .add( Restrictions.between(\"weight\", minWeight, maxWeight) )\n" " .list();]]>"msgstr ""#. Tag: para#: query_criteria.xml:61#, no-c-formatmsgid "Restrictions may be grouped logically."msgstr ""#. Tag: programlisting#: query_criteria.xml:65#, no-c-formatmsgid "" "<![CDATA[List cats = sess.createCriteria(Cat.class)\n" " .add( Restrictions.like(\"name\", \"Fritz%\") )\n" " .add( Restrictions.or(\n" " Restrictions.eq( \"age\", new Integer(0) ),\n" " Restrictions.isNull(\"age\")\n" " ) )\n" " .list();]]>"msgstr ""#. Tag: programlisting#: query_criteria.xml:67#, no-c-formatmsgid "" "<![CDATA[List cats = sess.createCriteria(Cat.class)\n" " .add( Restrictions.in( \"name\", new String[] { \"Fritz\", \"Izi\", \"Pk\" } ) )\n" " .add( Restrictions.disjunction()\n" " .add( Restrictions.isNull(\"age\") )\n" " .add( Restrictions.eq(\"age\", new Integer(0) ) )\n" " .add( Restrictions.eq(\"age\", new Integer(1) ) )\n" " .add( Restrictions.eq(\"age\", new Integer(2) ) )\n" " ) )\n" " .list();]]>"msgstr ""#. Tag: para#: query_criteria.xml:69#, no-c-formatmsgid "There are quite a range of built-in criterion types (<literal>Restrictions</literal> subclasses), but one that is especially useful lets you specify SQL directly."msgstr ""#. Tag: programlisting#: query_criteria.xml:74#, no-c-formatmsgid "" "<![CDATA[List cats = sess.createCriteria(Cat.class)\n" " .add( Restrictions.sqlRestriction(\"lower({alias}.name) like lower(?)\", \"Fritz%\", Hibernate.STRING) )\n" " .list();]]>"msgstr ""#. Tag: para#: query_criteria.xml:76#, no-c-formatmsgid "The <literal>{alias}</literal> placeholder with be replaced by the row alias of the queried entity."msgstr ""#. Tag: para#: query_criteria.xml:81#, no-c-formatmsgid "An alternative approach to obtaining a criterion is to get it from a <literal>Property</literal> instance. You can create a <literal>Property</literal> by calling <literal>Property.forName()</literal>."msgstr ""#. Tag: programlisting#: query_criteria.xml:87#, no-c-formatmsgid "" "<![CDATA[\n" "Property age = Property.forName(\"age\");\n" "List cats = sess.createCriteria(Cat.class)\n" " .add( Restrictions.disjunction()\n" " .add( age.isNull() )\n" " .add( age.eq( new Integer(0) ) )\n" " .add( age.eq( new Integer(1) ) )\n" " .add( age.eq( new Integer(2) ) )\n" " ) )\n" " .add( Property.forName(\"name\").in( new String[] { \"Fritz\", \"Izi\", \"Pk\" } ) )\n" " .list();]]>"msgstr ""#. Tag: title#: query_criteria.xml:92#, no-c-formatmsgid "Ordering the results"msgstr ""#. Tag: para#: query_criteria.xml:94#, no-c-formatmsgid "You may order the results using <literal>org.hibernate.criterion.Order</literal>."msgstr ""#. Tag: programlisting#: query_criteria.xml:98#, no-c-formatmsgid "" "<![CDATA[List cats = sess.createCriteria(Cat.class)\n" " .add( Restrictions.like(\"name\", \"F%\")\n" " .addOrder( Order.asc(\"name\") )\n" " .addOrder( Order.desc(\"age\") )\n" " .setMaxResults(50)\n" " .list();]]>"msgstr ""#. Tag: programlisting#: query_criteria.xml:100#, no-c-formatmsgid "" "<![CDATA[List cats = sess.createCriteria(Cat.class)\n" " .add( Property.forName(\"name\").like(\"F%\") )\n" " .addOrder( Property.forName(\"name\").asc() )\n" " .addOrder( Property.forName(\"age\").desc() )\n" " .setMaxResults(50)\n" " .list();]]>"msgstr ""#. Tag: title#: query_criteria.xml:105#, no-c-formatmsgid "Associations"msgstr ""#. Tag: para#: query_criteria.xml:107#, no-c-formatmsgid "You may easily specify constraints upon related entities by navigating associations using <literal>createCriteria()</literal>."msgstr ""#. Tag: programlisting#: query_criteria.xml:112#, no-c-formatmsgid "" "<![CDATA[List cats = sess.createCriteria(Cat.class)\n" " .add( Restrictions.like(\"name\", \"F%\") )\n" " .createCriteria(\"kittens\")\n" " .add( Restrictions.like(\"name\", \"F%\") )\n" " .list();]]>"msgstr ""#. Tag: para#: query_criteria.xml:114#, no-c-formatmsgid "note that the second <literal>createCriteria()</literal> returns a new instance of <literal>Criteria</literal>, which refers to the elements of the <literal>kittens</literal> collection."msgstr ""#. Tag: para#: query_criteria.xml:120#, no-c-formatmsgid "The following, alternate form is useful in certain circumstances."msgstr ""#. Tag: programlisting#: query_criteria.xml:124#, no-c-formatmsgid "" "<![CDATA[List cats = sess.createCriteria(Cat.class)\n" " .createAlias(\"kittens\", \"kt\")\n" " .createAlias(\"mate\", \"mt\")\n" " .add( Restrictions.eqProperty(\"kt.name\", \"mt.name\") )\n" " .list();]]>"msgstr ""#. Tag: para#: query_criteria.xml:126#, no-c-formatmsgid "(<literal>createAlias()</literal> does not create a new instance of <literal>Criteria</literal>.)"msgstr ""#. Tag: para#: query_criteria.xml:131#, no-c-formatmsgid "Note that the kittens collections held by the <literal>Cat</literal> instances returned by the previous two queries are <emphasis>not</emphasis> pre-filtered by the criteria! If you wish to retrieve just the kittens that match the criteria, you must use a <literal>ResultTransformer</literal>."msgstr ""#. Tag: programlisting#: query_criteria.xml:138#, no-c-formatmsgid "" "<![CDATA[List cats = sess.createCriteria(Cat.class)\n" " .createCriteria(\"kittens\", \"kt\")\n" " .add( Restrictions.eq(\"name\", \"F%\") )\n" " .setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP)\n" " .list();\n" "Iterator iter = cats.iterator();\n" "while ( iter.hasNext() ) {\n" " Map map = (Map) iter.next();\n" " Cat cat = (Cat) map.get(Criteria.ROOT_ALIAS);\n" " Cat kitten = (Cat) map.get(\"kt\");\n" "}]]>"msgstr ""#. Tag: title#: query_criteria.xml:143#, no-c-formatmsgid "Dynamic association fetching"msgstr ""#. Tag: para#: query_criteria.xml:145#, no-c-formatmsgid "You may specify association fetching semantics at runtime using <literal>setFetchMode()</literal>."msgstr ""#. Tag: programlisting#: query_criteria.xml:150#, no-c-formatmsgid "" "<![CDATA[List cats = sess.createCriteria(Cat.class)\n" " .add( Restrictions.like(\"name\", \"Fritz%\") )\n" " .setFetchMode(\"mate\", FetchMode.EAGER)\n" " .setFetchMode(\"kittens\", FetchMode.EAGER)\n" " .list();]]>"msgstr ""#. Tag: para#: query_criteria.xml:152#, no-c-formatmsgid "This query will fetch both <literal>mate</literal> and <literal>kittens</literal> by outer join. See <xref linkend=\"performance-fetching\"/> for more information."msgstr ""#. Tag: title#: query_criteria.xml:160#, no-c-formatmsgid "Example queries"msgstr ""#. Tag: para#: query_criteria.xml:162#, no-c-formatmsgid "The class <literal>org.hibernate.criterion.Example</literal> allows you to construct a query criterion from a given instance."msgstr ""#. Tag: programlisting#: query_criteria.xml:167#, no-c-formatmsgid "" "<![CDATA[Cat cat = new Cat();\n" "cat.setSex('F');\n" "cat.setColor(Color.BLACK);\n" "List results = session.createCriteria(Cat.class)\n" " .add( Example.create(cat) )\n" " .list();]]>"msgstr ""#. Tag: para#: query_criteria.xml:169#, no-c-format
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -