http://www.hibernate.org/hib_docs/reference/zh-cn/html/queryhql.html#queryhql-select
查詢可以返回任何值類型的函數(shù),
select子句選擇在結(jié)果集中返回哪些對象和屬性。思考一下下面的例子:
select mate
from eg.Cat as cat
inner join cat.mate as mate
這個查詢會選擇出作為其它貓(Cat)朋友(mate)的那些貓。當(dāng)然,你可以更加直接的寫成下面的形式:
select cat.mate from eg.Cat cat
你甚至可以選擇集合元素,使用特殊的elements功能。下面的查詢返回所有貓的小貓。
select elements(cat.kittens) from eg.Cat cat
查詢可以返回任何值類型的屬性,包括組件類型的屬性:
select cat.name from eg.DomesticCat cat
where cat.name like 'fri%'
select cust.name.firstName from Customer as cust
查詢可以用元素類型是Object[]的一個數(shù)組返回多個對象和/或多個屬性。
select mother, offspr, mate.name
from eg.DomesticCat as mother
inner join mother.mate as mate
left outer join mother.kittens as offspr
或者實際上是類型安全的Java對象
select new Family(mother, mate, offspr)
from eg.DomesticCat as mother
join mother.mate as mate
left join mother.kittens as offspr
上面的代碼假定Family有一個合適的構(gòu)造函數(shù)。
1.BCPの引數(shù)
bcp ユーティリティは、ユーザーが指定した形式で、データを Microsoft? SQL Server? 2000 とデータ ファイルとの間でコピーします。
構(gòu)文
bcp {[[database_name.][owner].]{table_name | view_name} | "query"}
{in | out | queryout | format} data_file
[-m max_errors] [-f format_file] [-e err_file]
[-F first_row] [-L last_row] [-b batch_size]
[-n] [-c] [-w] [-N] [-V (60 | 65 | 70)] [-6]
[-q] [-C code_page] [-t field_term] [-r row_term]
[-i input_file] [-o output_file] [-a packet_size]
[-S server_name[\instance_name]] [-U login_id] [-P password]
[-T] [-v] [-R] [-k] [-E] [-h "hint [,...n]"]
使用法 : bcp {dbtable | query} {in | out | queryout | format} datafile
[-m maxerrors] [-f formatfile] [-e errfile]
[-F firstrow] [-L lastrow] [-b batchsize]
[-n native type] [-c character type] [-w wide character type]
[-N keep non-text native] [-V file format version] [-q quoted identifier]
[-C code page specifier] [-t field terminator] [-r row terminator]
[-i inputfile] [-o outfile] [-a packetsize]
[-S server name] [-U username] [-P password]
[-T trusted connection] [-v version] [-R regional enable]
[-k keep null values] [-E keep identity values]
[-h "load hints"]
大切な引數(shù)の説明:
① [-S server name]
-S server_name[\instance_name]
接続先の SQL Server のインスタンスを指定します。
サーバー上の SQL Server の既定のインスタンスに接続する場合は、server_name を指定します。
サーバー上の SQL Server 2000 の名前付きインスタンスに接続する場合は、server_name\instance_name
を指定します。サーバーが指定されない場合は、ローカル コンピュータ上の SQL Server の既定の
インスタンスに接続されます。ネットワーク上のリモート コンピュータから bcp を?qū)g行するときは、このオプションが必要です。
② [-U username]
-U login_id
SQL Server への接続に使用されるログイン ID を指定します。
③ [-P password]
-P password
ログイン ID のパスワードを指定します。このオプションを指定しないと、bcp はパスワードを問い合わせます。
また、このオプションをコマンド プロンプトの最後にパスワードなしで使用すると、デフォルトのパスワード (NULL) が使用されます。
④ {in | out | queryout | format} datafile
in | out | queryout | format
一括コピーする方向を指定します。
in は、ファイルからデータベース テーブルまたはビューにコピーします。
out は、データベース テーブルまたはビューからファイルにコピーします。
queryout は、クエリからデータの一括コピーを行う場合に指定します。
format オプションは、指定したオプション (-n、-c、-w、-6、-N のいずれか) とテーブルまたはビューの區(qū)切り記號に
基づいてフォーマット ファイルを作成します。format を使用する場合、-f オプションも指定する必要があります。
注 Microsoft SQL Server 6.5 の bcp ユーティリティの場合、sql_variant 型または bigint 型のデータを含む
テーブルへの一括コピーはサポートされません。
⑤ [-c character type]
2.例
setEnv.cmdの內(nèi)容:
set DBUSER=lamsec
set DBPASSWORD=lamsec
set DBSERVER=lam-test-server
入力のコマンドファイルの內(nèi)容:
call setEnv.cmd
bcp tempdb..custom IN F:\bcp\CZYTAB.TXT -U%DBUSER% -P%DBPASSWORD% -S%DBSERVER% -c
出力コマンドファイルの內(nèi)容:
call setEnv.cmd
bcp tempdb..custom OUT F:\bcp\CZYTAB.TXT -U%DBUSER% -P%DBPASSWORD% -S%DBSERVER% -c
開始Tomcat用的是mail.jar的1.3.1的版本,但是單獨跑的時候用的1.3.3的版本
結(jié)果就不一樣了:S
當(dāng)今mail服務(wù)器大多都是通過認(rèn)證才能發(fā)信的,現(xiàn)在的網(wǎng)上介紹javamail發(fā)信的文章都沒有深入到有關(guān)認(rèn)證的方面,除非自己裝一個open
relay的mail服務(wù)器,但是這樣有很危險,本人根據(jù)自己工作中用的javamail的方法說一下自己的用法,不對的地方請大家多指教.
首先設(shè)置屬性Properties props = new Properties();
props.put("mail.smtp.host",host);
props.put("mail.smtp.auth","true");注意的是此處必須加上true要不然stmp連接的時候不會認(rèn)證
用Authenticator寫認(rèn)證類下面是本人的認(rèn)證類
package org.xxx;
import javax.mail.*;
import javax.mail.internet.*;
public class PopupAuthenticator extends Authenticator{
String username=null;
String password=null;
public PopupAuthenticator(){}
public PasswordAuthentication performCheck(String user,String pass){
username = user;
password = pass;
return getPasswordAuthentication();
}
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(username, password);
}
}
認(rèn)證類寫完后,在發(fā)信的程序中加上
PasswordAuthentication pop = popAuthenticator.performCheck(username,password);
Session mysession=Session.getInstance(props,popAuthenticator);
mailsession加的popAuthenticator
其他的方法和javamail發(fā)信的用法相似,在此不累述。
http://www.cn-java.com/target/news.php?news_id=1511