⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 query_sql.po

📁 hibernate-distribution-3.3.1.GA-dist.zip源码
💻 PO
📖 第 1 页 / 共 4 页
字号:
msgstr ""#. Tag: para#: query_sql.xml:329#, no-c-formatmsgid "a result transformer"msgstr "结果转换器(result transformer)"#. Tag: para#: query_sql.xml:333#, no-c-formatmsgid """The above query will return a list of <literal>CatDTO</literal> which has ""been instantiated and injected the values of NAME and BIRTHNAME into its ""corresponding properties or fields."msgstr """上面的查询将会返回<literal>CatDTO</literal>的列表,它将被实例化并且将NAME和""BIRTHDAY的值注射入对应的属性或者字段。"#. Tag: title#: query_sql.xml:340#, no-c-formatmsgid "Handling inheritance"msgstr "处理继承(Handling inheritance)"#. Tag: para#: query_sql.xml:342#, no-c-formatmsgid """Native sql queries which query for entities that is mapped as part of an ""inheritance must include all properties for the baseclass and all it ""subclasses."msgstr """原生SQL查询假若其查询结果实体是继承树中的一部分,它必须包含基类和所有子类的所""有属性。"#. Tag: title#: query_sql.xml:348#, no-c-formatmsgid "Parameters"msgstr "参数(Parameters)"#. Tag: para#: query_sql.xml:350#, no-c-formatmsgid "Native sql queries support positional as well as named parameters:"msgstr "原生查询支持位置参数和命名参数:"#. Tag: programlisting#: query_sql.xml:353#, no-c-formatmsgid """<![CDATA[Query query = sess.createSQLQuery(\"SELECT * FROM CATS WHERE NAME ""like ?\").addEntity(Cat.class);\n""List pusList = query.setString(0, \"Pus%\").list();\n""     \n""query = sess.createSQLQuery(\"SELECT * FROM CATS WHERE NAME like :name\").""addEntity(Cat.class);\n""List pusList = query.setString(\"name\", \"Pus%\").list();          ]]>"msgstr ""#. Tag: title#: query_sql.xml:361#, no-c-formatmsgid "Named SQL queries"msgstr "命名SQL查询"#. Tag: para#: query_sql.xml:363#, no-c-formatmsgid """Named SQL queries may be defined in the mapping document and called in ""exactly the same way as a named HQL query. In this case, we do ""<emphasis>not</emphasis> need to call <literal>addEntity()</literal>."msgstr """可以在映射文档中定义查询的名字,然后就可以象调用一个命名的HQL查询一样直接调用""命名SQL查询.在这种情况下,我们<emphasis>不</emphasis> 需要调用""<literal>addEntity()</literal>方法."#. Tag: programlisting#: query_sql.xml:368#, no-c-formatmsgid """<![CDATA[<sql-query name=\"persons\">\n""    <return alias=\"person\" class=\"eg.Person\"/>\n""    SELECT person.NAME AS {person.name},\n""           person.AGE AS {person.age},\n""           person.SEX AS {person.sex}\n""    FROM PERSON person\n""    WHERE person.NAME LIKE :namePattern\n""</sql-query>]]>"msgstr ""#. Tag: programlisting#: query_sql.xml:370#, no-c-formatmsgid """<![CDATA[List people = sess.getNamedQuery(\"persons\")\n""    .setString(\"namePattern\", namePattern)\n""    .setMaxResults(50)\n""    .list();]]>"msgstr ""#. Tag: para#: query_sql.xml:372#, no-c-formatmsgid """The <literal>&lt;return-join&gt;</literal> and <literal>&lt;load-""collection&gt;</literal> elements are used to join associations and define ""queries which initialize collections, respectively."msgstr """<literal>&lt;return-join&gt;</literal>和 <literal>&lt;load-collection&gt;</""literal> 元素是用来连接关联以及将查询定义为预先初始化各个集合的。"#. Tag: programlisting#: query_sql.xml:377#, no-c-formatmsgid """<![CDATA[<sql-query name=\"personsWith\">\n""    <return alias=\"person\" class=\"eg.Person\"/>\n""    <return-join alias=\"address\" property=\"person.mailingAddress\"/>\n""    SELECT person.NAME AS {person.name},\n""           person.AGE AS {person.age},\n""           person.SEX AS {person.sex},\n""           address.STREET AS {address.street},\n""           address.CITY AS {address.city},\n""           address.STATE AS {address.state},\n""           address.ZIP AS {address.zip}\n""    FROM PERSON person\n""    JOIN ADDRESS address\n""        ON person.ID = address.PERSON_ID AND address.TYPE='MAILING'\n""    WHERE person.NAME LIKE :namePattern\n""</sql-query>]]>"msgstr ""#. Tag: para#: query_sql.xml:379#, no-c-formatmsgid """A named SQL query may return a scalar value. You must declare the column ""alias and Hibernate type using the <literal>&lt;return-scalar&gt;</literal> ""element:"msgstr """一个命名查询可能会返回一个标量值.你必须使用<literal>&lt;return-scalar&gt;</""literal>元素来指定字段的别名和 Hibernate类型"#. Tag: programlisting#: query_sql.xml:383#, no-c-formatmsgid """<![CDATA[<sql-query name=\"mySqlQuery\">\n""    <return-scalar column=\"name\" type=\"string\"/>\n""    <return-scalar column=\"age\" type=\"long\"/>\n""    SELECT p.NAME AS name,\n""           p.AGE AS age,\n""    FROM PERSON p WHERE p.NAME LIKE 'Hiber%'\n""</sql-query>]]>"msgstr ""#. Tag: para#: query_sql.xml:385#, no-c-formatmsgid """You can externalize the resultset mapping informations in a <literal>&lt;""resultset&gt;</literal> element to either reuse them accross several named ""queries or through the <literal>setResultSetMapping()</literal> API."msgstr """你可以把结果集映射的信息放在外部的<literal>&lt;resultset&gt;</literal>元素""中,这样就可以在多个命名查询间,或者通过<literal>setResultSetMapping()</""literal>API来访问。(此处原文即存疑。原文为:You can externalize the ""resultset mapping informations in a <literal>&lt;resultset&gt;</literal> ""element to either reuse them accross several named queries or through the ""<literal>setResultSetMapping()</literal> API.)"#. Tag: programlisting#: query_sql.xml:390#, no-c-formatmsgid """<![CDATA[<resultset name=\"personAddress\">\n""    <return alias=\"person\" class=\"eg.Person\"/>\n""    <return-join alias=\"address\" property=\"person.mailingAddress\"/>\n""</resultset>\n""\n""<sql-query name=\"personsWith\" resultset-ref=\"personAddress\">\n""    SELECT person.NAME AS {person.name},\n""           person.AGE AS {person.age},\n""           person.SEX AS {person.sex},\n""           address.STREET AS {address.street},\n""           address.CITY AS {address.city},\n""           address.STATE AS {address.state},\n""           address.ZIP AS {address.zip}\n""    FROM PERSON person\n""    JOIN ADDRESS address\n""        ON person.ID = address.PERSON_ID AND address.TYPE='MAILING'\n""    WHERE person.NAME LIKE :namePattern\n""</sql-query>]]>"msgstr ""#. Tag: para#: query_sql.xml:392#, no-c-formatmsgid """You can alternatively use the resultset mapping information in your hbm ""files directly in java code."msgstr "另外,你可以在java代码中直接使用hbm文件中的结果集定义信息。"#. Tag: programlisting#: query_sql.xml:395#, no-c-formatmsgid """<![CDATA[List cats = sess.createSQLQuery(\n""        \"select {cat.*}, {kitten.*} from cats cat, cats kitten where kitten.""mother = cat.id\"\n""    )\n""    .setResultSetMapping(\"catAndKitten\")\n""    .list();]]>"msgstr ""#. Tag: title#: query_sql.xml:398#, no-c-formatmsgid "Using return-property to explicitly specify column/alias names"msgstr "使用return-property来明确地指定字段/别名"#. Tag: para#: query_sql.xml:401#, no-c-formatmsgid """With <literal>&lt;return-property&gt;</literal> you can explicitly tell ""Hibernate what column aliases to use, instead of using the <literal>{}</""literal>-syntax to let Hibernate inject its own aliases."msgstr """使用<literal>&lt;return-property&gt;</literal>你可以明确的告诉Hibernate使用哪""些字段别名,这取代了使用<literal>{}</literal>-语法 来让Hibernate注入它自己的别""名."#. Tag: programlisting#: query_sql.xml:406#, no-c-formatmsgid """<![CDATA[<sql-query name=\"mySqlQuery\">\n""    <return alias=\"person\" class=\"eg.Person\">\n""        <return-property name=\"name\" column=\"myName\"/>\n""        <return-property name=\"age\" column=\"myAge\"/>\n""        <return-property name=\"sex\" column=\"mySex\"/>\n""    </return>\n""    SELECT person.NAME AS myName,\n""           person.AGE AS myAge,\n""           person.SEX AS mySex,\n""    FROM PERSON person WHERE person.NAME LIKE :name\n""</sql-query>\n""]]>"msgstr ""#. Tag: para#: query_sql.xml:408#, no-c-formatmsgid """<literal>&lt;return-property&gt;</literal> also works with multiple columns. ""This solves a limitation with the <literal>{}</literal>-syntax which can not ""allow fine grained control of multi-column properties."msgstr """<literal>&lt;return-property&gt;</literal>也可用于多个字段,它解决了使用""<literal>{}</literal>-语法不能细粒度控制多个字段的限制"#. Tag: programlisting#: query_sql.xml:413#, no-c-formatmsgid """<![CDATA[<sql-query name=\"organizationCurrentEmployments\">\n""    <return alias=\"emp\" class=\"Employment\">\n""        <return-property name=\"salary\">\n""            <return-column name=\"VALUE\"/>\n""            <return-column name=\"CURRENCY\"/>\n""        </return-property>\n""        <return-property name=\"endDate\" column=\"myEndDate\"/>\n""    </return>\n""        SELECT EMPLOYEE AS {emp.employee}, EMPLOYER AS {emp.employer},\n""        STARTDATE AS {emp.startDate}, ENDDATE AS {emp.endDate},\n""        REGIONCODE as {emp.regionCode}, EID AS {emp.id}, VALUE, CURRENCY\n""        FROM EMPLOYMENT\n""        WHERE EMPLOYER = :id AND ENDDATE IS NULL\n""        ORDER BY STARTDATE ASC\n""</sql-query>]]>"msgstr ""#. Tag: para#: query_sql.xml:415#, no-c-formatmsgid """Notice that in this example we used <literal>&lt;return-property&gt;</""literal> in combination with the <literal>{}</literal>-syntax for injection. ""Allowing users to choose how they want to refer column and properties."msgstr """注意在这个例子中,我们使用了<literal>&lt;return-property&gt;</literal>结合""<literal>{}</literal>的注入语法. 允许用户来选择如何引用字段以及属性."#. Tag: para#: query_sql.xml:420#, no-c-formatmsgid """If your mapping has a discriminator you must use <literal>&lt;return-""discriminator&gt;</literal> to specify the discriminator column."msgstr """如果你映射一个识别器(discriminator),你必须使用<literal>&lt;return-""discriminator&gt;</literal> 来指定识别器字段"#. Tag: title#: query_sql.xml:426#, no-c-formatmsgid "Using stored procedures for querying"msgstr "使用存储过程来查询"#. Tag: para#: query_sql.xml:428#, no-c-formatmsgid """Hibernate 3 introduces support for queries via stored procedures and ""functions. Most of the following documentation is equivalent for both. The ""stored procedure/function must return a resultset as the first out-parameter ""to be able to work with Hibernate. An example of such a stored function in ""Oracle 9 and higher is as follows:"msgstr """Hibernate 3引入了对存储过程查询(stored procedure)和函数(function)的支持.以下""的说明中,这二者一般都适用。 存储过程/函数必须返回一个结果集,作为Hibernate能""够使用的第一个外部参数. 下面是一个Oracle9和更高版本的存储过程例子."#. Tag: programlisting#: query_sql.xml:434#, no-c-formatmsgid """<![CDATA[CREATE OR REPLACE FUNCTION selectAllEmployments\n""    RETURN SYS_REFCURSOR\n""AS\n""    st_cursor SYS_REFCURSOR;\n""BEGIN\n""    OPEN st_cursor FOR\n"" SELECT EMPLOYEE, EMPLOYER,\n"" STARTDATE, ENDDATE,\n"" REGIONCODE, EID, VALUE, CURRENCY\n"" FROM EMPLOYMENT;\n""      RETURN  st_cursor;\n"" END;]]>"msgstr ""#. Tag: para#: query_sql.xml:436#, no-c-formatmsgid "To use this query in Hibernate you need to map it via a named query."msgstr "在Hibernate里要要使用这个查询,你需要通过命名查询来映射它."#. Tag: programlisting#: query_sql.xml:439#, no-c-formatmsgid """<![CDATA[<sql-query name=\"selectAllEmployees_SP\" callable=\"true\">\n""    <return alias=\"emp\" class=\"Employment\">\n"

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -