我需要用 Java 生成 Soap 请求。这是我需要生成并传递的 xml 文件:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns="website"
xmlns:com="website/Common"
xmlns:xm="http://www.w3.org/2005/05/xmlmime">
<soapenv:Header/>
<soapenv:Body>
<ns:RequestName>
<ns:model>
<ns:keys query="myquery;" ></ns:keys>
<ns:instance></ns:instance>
</ns:model>
</ns:RequestName>
</soapenv:Body>
</soapenv:Envelope>
Run Code Online (Sandbox Code Playgroud)
我知道还有其他方法可以执行此操作,例如 wsimport,但我想知道如何以这种方式执行此操作。这样,我的意思是为 Soap 请求创建 xml 文件时正确的 Java 语法是什么。这是一些非常基本的语法:
SOAPMessage message = messageFactory.createMessage();
SOAPHeader header = message.getSOAPHeader();
SOAPBody body = message.getSOAPBody();
// Here is the XML it produces:
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
...
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Run Code Online (Sandbox Code Playgroud) 我正在尝试清理一些服务器,并想知道在过去30天内哪些数据库没有被访问过.如何将我的T-SQL查询更改为仅显示过去30天内未访问过的数据库?
有关其他信息,我还包括上次重新启动服务器的时间.这与此问题无关.
例如,今天是10月10日.自9月10日以来访问过的任何数据库,我都不想出现在我的查询结果中.
这是我当前的T-SQL脚本,用于查找上次在我的服务器上访问数据库的时间:
SELECT
DB_NAME(sd.database_id) AS DatabaseName,
COALESCE(MAX(ius.last_user_seek), MAX(ius.last_user_scan),
MAX(ius.last_user_lookup), MAX(ius.last_user_update), '1/1/1900') AS LastAccessDate,
(SELECT create_date
FROM sys.databases
WHERE name = 'tempdb') AS LastServerRestart
FROM
sys.databases sd
LEFT JOIN
sys.dm_db_index_usage_stats ius ON ius.database_id = sd.database_id
WHERE
DB_NAME(sd.database_id) NOT IN ('tempdb', 'master', 'model', 'msdb')
GROUP BY
sd.database_id
ORDER BY
DatabaseName
Run Code Online (Sandbox Code Playgroud)
以下是此查询的结果:
DatabaseName LastAccessDate LastServerRestart
--------------------------------------------------------------------------
AdventureWorks2016 2018-09-12 18:21:21.800 2018-09-12 18:21:10.727
AdventureWorksDW2016 2018-10-10 09:40:31.903 2018-09-12 18:21:10.727
Drake_Test 1900-01-01 00:00:00.000 2018-09-12 18:21:10.727
OLD_DB 1900-01-01 00:00:00.000 2018-09-12 18:21:10.727
Drake_Test_new 2018-10-10 14:20:17.943 2018-09-12 18:21:10.727 …Run Code Online (Sandbox Code Playgroud)