blogspot.com-GA4

星期二, 8月 09, 2011

servlet通訊協定溝通


URL url = new URL("http://127.0.0.1:8080/cts/CreateToken.do?method=view");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("POST");
connection.setRequestProperty("Content-Length", "" + sb.length());

// 當有server 無法進行存取設定時,增加以下兩行設定
connection.setDoInput(true);
//connection.setDoOutput(true);

// 方法一
OutputStreamWriter outputWriter = new OutputStreamWriter( connection.getOutputStream());
outputWriter.write(sb.toString());
outputWriter.flush();
outputWriter.close();

// 方法二
DataInputStream in = new DataInputStream(connection.getInputStream());
String line;
while((line = in.readLine())!=null){
System.out.println(line);
}
in.close();

星期三, 7月 20, 2011

設定截取手機畫面

把手機拿回來也好一段時間了(兩個月一下子就過去了XD),
都還沒有正式開始進入研究的動作,
今天終於開始動手,

第一步截取手機螢幕畫面,

一、先設定手機打開 "USB除錯"

1.開啟"設定"


2.開啟"應用程式"


3. 開啟"開發"


4. 點選 "USB除錯中"


二、抓取 Android SDK

三、解壓縮後,開啟 android-sdk-windows\tools 目錄

1. 開啟 ddms.bat
※ 請注意在這裡如果遇到錯誤,請檢察一下本機環境的JDK相關設定


2. 開啟截取手機畫面


3. 開始截取
上面會有幾個按鈕,分別是

Refresh:重新抓取手機畫面,一開始我以為手機換畫面會跟著跳,其實主要是靠這個按鈕更新截取畫面
Rotate:選轉畫面
Save:儲存目前的畫面為圖檔
Copy:將目前的畫面複製到剪貼簿,可以在小畫家或其他地方貼上
Done:結束離開



以上內容希望對初步接手的各位新手有幫助

星期五, 6月 03, 2011

JSTL pageContext 參數

${pageContext.request.method}
${pageContext.request.authType}
${pageContext.request.contextPath}
${pageContext.request.pathInfo}
${pageContext.request.pathTranslated}
${pageContext.request.queryString}
${pageContext.request.requestURI}
${pageContext.request.servletPath}

session參數
${pageContext.session.creationTime}
${pageContext.session.id}
${pageContext.session.lastAccessedTime}
${pageContext.session.maxInactiveInterval}
${(pageContext.session.lastAccessedTime-pageContext.session.creationTime)/1000}

星期一, 4月 25, 2011

相容IE6.0上PRE 標籤的自動換行

加入以下兩段,就可以相容於IE6.0以上的瀏覽器,
目前測試 IE6.0、IE8.0、FireFox4.0 都能自動換行


pre {
whitewhite-space: pre-wrap; /* css-3 */
whitewhite-space: -moz-pre-wrap; /* Mozilla, since 1999 */
whitewhite-space: -pre-wrap; /* Opera 4-6 */
whitewhite-space: -o-pre-wrap; /* Opera 7 */
word-wrap: break-word; /* Internet Explorer 5.5+ */
whitewhite-space : normal ; /* Internet Explorer 5.5+ */
}
* html pre {
word-wrap: break-word; /* Internet Explorer 5.5+ */
white-space : normal ; /* Internet Explorer 5.5+ */
}

星期一, 3月 07, 2011

oracle For each row in a cursor

在oracle function中,
select 出的資料可以放到 cursor中在進行處理,
下面是一個簡單的範例,可以參考一下


SQL> CREATE TABLE emp(
2 emp_ID NUMBER (6),
3 START_DATE DATE,
4 END_DATE DATE,
5 JOB_ID VARCHAR2 (10),
6 DEPARTMENT_ID NUMBER (4)
7 );

Table created.

SQL>
SQL>
SQL>
SQL> CREATE OR REPLACE PROCEDURE promotion_review_2
2 IS
3 CURSOR empCursor IS SELECT emp_id, start_date, end_date, job_id FROM emp;
4 BEGIN
5 FOR jh_rec IN empCursor
6 LOOP
7 DBMS_OUTPUT.put_line(jh_rec.emp_id||' had job '||jh_rec.job_id||' for '|| (jh_rec.end_date - jh_rec.start_date)||' days.');
8 END LOOP;
9 END;
10 /

Procedure created.

SQL> drop table emp;

Table dropped.

星期二, 2月 22, 2011

quartz設定記憶體

quartz預設設定方式為使用記憶體,將改成database功能關閉後,即會使用記憶體方式執行。



<bean id="quartzScheduler" class="com.shingkuang.test.scheduling.SchedulerFactoryBean" destroy-method="destroy">
<!-- turn auto startup off to disable quartz daemon -->
<property name="autoStartup" value="true"/>
<property name="jobFactory" ref="jobFactory"/>
<property name="configLocation" value="classpath:quartz/simple/quartz.properties"/>
<!-- override job store properties in quartz.properties -->
<!-- <property name="dataSource" ref="quartzDataSource"/> -->
<property name="transactionManager" ref="transactionManager"/>
<!-- configure cluster properties -->
<!--<property name="quartzProperties">
<props>
<prop key="org.quartz.jobStore.isClustered">false</prop>
<prop key="org.quartz.jobStore.clusterCheckinInterval">20000</prop>
</props>
</property>
-->
<!-- configure system triggers -->
<property name="overwriteExistingJobs" value="true"/>
<property name="triggers">