今天是東軟正式啟動校園招聘的日子,心里的緊張和焦慮真的是說不出來,不過現在想想都已經過去了,我面試是在明天,但是今天有個公司的面試,所以我去了,剛開始,是公司的一些簡介,我了解到,這個公司是面向C的,但是我為了鍛煉自己,還是選擇去參加了,我的預感一直很準吧,筆試的題一般都是高中的數學題,包含很多邏輯性比較強的算術題,還有一些c的基礎知識題,還有一個是能力方面的,主要是單片機的知識,通過了上午的筆試,我已經很吃驚了,然后我又參加了下午的面試,面試我穿了同學的正裝,然后簡單的準備了一下自我介紹,其實我是抱著去鍛煉的想法去的,等候面試的時間是最緊張的了,不過我還好,其實我還在看jsp的自定義標簽,呵呵,然后我是排在第5個,進去的,我敲了門,沒人回應,又敲,還是沒人回應,后來老師給我開得門,其實這就有點不好,不應該讓老師給你開門的,這是自己第一次面試的失誤,進去之后,我一看,就有點蒙了,總共3個人呢。我鞠了一個宮,說,面試老師好,我看見老師示意了一下,然后我就做那了,老師說讓我自我介紹,我就把簡單的準備說了一下,當時我記得說完之后,我長出了一口氣,估計還是緊張吧,然后中間的面試官用日語和他旁邊的人溝通,我才知道,原來中間的人是老總,明白了大體的關系之后,我注意和老總有眼神的交流,因為我要表現自己非常自信的一面,我記得我的回答速度很快,但是答得也是模糊的,我還記得一些問題,現在具體說一說
1.你的性格缺點
我看過些簡單的面試資料,知道在說自己的缺點的時候,不能不說。但是又不能說的太多,所以我把事先準備好的簡單的說了一下,后來,才想明白,應該在加上一句,我現在已經改正了,而且做得很好,但是當時忘了。
2.為什么來我們公司
我的第一反應,我喜歡上海,第二,我喜歡計算機方面的工作。(因為我并沒有仔細的了解這個公司的概況,只能想起來什么說什么)
如果現在讓我回答,我會這樣說(首先,我喜歡上海,第二,我喜歡計算機方面的工作,第三,我了解到貴公司的情況,和未來發展。感覺到這個工作就是自己想要的,更適合自己)。
3.把你想要去工作的地方按順序排下
我的回答,上海,沈陽,北京,其實我當時也是說了一些大城市,因為畢竟這個問題還是要往計算機前景比較好的城市說。
4.為什么不喜歡去大連
這個問題一下子就把我難住了,為什么不喜歡大連。是啊,我的回答:我說大連消費高,就是不喜歡,也說不出為什么。后來我自己想,我說的是什么啊。上海的消費不比大連高好多啊。真是笨呢,現在要是說的話(就是心里不喜歡,也不知道為什么)這個回答可能也不太好,不過這個我真不知道怎么回答好。
5.你期望的工資是多少
我的回答是不比正常的員工低就可以。
6.說幾句簡單的日語
這個馬馬虎虎了。
還有一些都不記得了。。
1.union 與union all 的區別union把兩條記錄合并成一個查詢,但是前提,所選的記錄的兩個表的字段名要一致。
union和union all的區別是,union會自動壓縮多個結果集合中的重復結果,同時進行默認規則的排序。而union all則將所有的結果全部顯示出來,不管 是不是重復,不排序。
2.rpad與lpad區別
Lpad()函數的用法:
lpad函數將左邊的字符串填充一些特定的字符其語法格式如下:
lpad(string,n,[pad_string])
string:可是字符或者參數
n:字符的長度,是返回的字符串的數量,如果這個數量比原字符串的長度要短,lpad函數將會把字符串截取成從左到右的n個字符;
pad_string:是個可選參數,這個字符串是要粘貼到string的左邊,如果這個參數未寫,lpad函數將會在string的左邊粘貼空格。
例如:
lpad('tech', 7); 將返回' tech'
lpad('tech', 2); 將返回'te'
lpad('tech', 8, '0'); 將返回'0000tech'
lpad('tech on the net', 15, 'z'); 將返回 'tech on the net'
lpad('tech on the net', 16, 'z'); 將返回 'ztech on the net'
Rpad()函數的用法:
rpad函數將右邊的字符串填充一些特定的字符其語法格式如下:
rpad(string,n,[pad_string])
string:可是字符或者參數
n:字符的長度,是返回的字符串的數量,如果這個數量比原字符串的長度要短,lpad函數將會把字符串截取成從左到右的n個字符;
pad_string:是個可選參數,這個字符串是要粘貼到string的右邊,如果這個參數未寫,lpad函數將會在string的右邊粘貼空格。
例如:
rpad('tech', 7); 將返回' tech'
rpad('tech', 2); 將返回'te'
rpad('tech', 8, '0'); 將返回'tech0000'
rpad('tech on the net', 15, 'z'); 將返回 'tech on the net'
rpad('tech on the net', 16, 'z'); 將返回 'tech on the netz'
3.to_number字符串轉換
oracle中函數用to_number('321312','99999999')
4.cast
是進行類型轉換的, 可以針對各種Oracle數據類型. 修改的是用戶的數據類型.
round只是修改的數據顯示格式. 對數據做四舍五入. 類似的函數還有ceil(取此數據的最小整數). trunc( 取整函數.)
SQL> create table t1(a varchar(10));
Table created.
SQL> insert into t1 values ('12.3456');
1 row created.
SQL> select round(a) from t1;
ROUND(A)
----------
12
SQL> select round(a,3) from t1;
ROUND(A,3)
----------
12.346
SQL> select cast(a as int) from t1;
CAST(AASINT)
------------
12
SQL> select cast(a as number(8,4)) from t1;
CAST(AASNUMBER(8,4))
--------------------
12.3456
進入到C:\Program Files\Apache Software Foundation\Tomcat 5.0\conf下
修改server.xml文件。更改端口號。ok
前提:
重新安裝的系統及環境
運行程序出現端口被占用的錯誤
解決方法:
用命令 netstat -a -n -o
最后一個選項表示連接所在進程id. 找到8080端口的PID
然后打開任務管理器, 切換到進程選項卡, 在菜單欄選擇查看->選擇列, 選擇PID.
在列表中找到PID對應的進程就可以了
問題解決!
安裝好jdk及tomcat之后
提示servcie not found
解決:java未設置環境變量
新建classpath:到jdk的lib路徑
path: 到bin路徑
J2EE上API上有兩個init方法 一個是帶參數的 init(ServletConfig config)
方法還有一個是不帶參數的 init()方法
通常情況下,比如用tomcat,tomcat會把web.xml的配置信息封裝成對象 (也就是config ),通過調用init(ServletConfig config)給正常初始化.tomcat調用init(ServletConfig config)方法的類中有個成員變量叫config,
tomcat的具體實現是{this.config = config; init();}這樣config成員變量就被正常初始化了.
如果我們程序員要自己手動的方式調用init方法,最好用不帶參數的init(),如果非要用帶參數的init(ServletConfig config)方法.就一定不能忘記調用父類的super.init(config);
因為重寫方法,就把以前的語句給覆蓋了.不能正常的賦值了.
不然用到servletContext的時候很容易出空指針異常(config成員變量沒有正常初始化);
2。創建Servlet時,必須要繼承自HttpServlet,也就是Servlet的父類(super)。
HttpServlet作為一個抽象類用來創建用戶自己的Servlet,HttpServlet的子類至少重寫一下方法中的一個:doGet()和doPost().
HttpServlet類提供doGet()方法處理form表單的GET請求,并提供doPost()方法來處理POST請求。
你必須了解Servlet 的生命周期:
實例化——>Servlet容器創建Sevlet實例
初始化——>該容器調用init()方法
服 務——>如果請求Servlet,則容器調用Service()方法
銷 毀——>銷毀實例之前調用destroy()方法
那就得給你解釋下初始化了:
Servlet容器加載好Servlet后,必須進行初始化,初始化Servlet時,可以設置數據庫連接參數,建立JDBC連接,或者建立對其他資源的引用。在初始化階段init()方法被掉用。這個方法在javax.servlet.Servlet接口中定義。
你可以把Servlet容器 就當作和Tomcate一樣的東西!所以Servlet也叫Servlet引擎。
ServletConfig說明和用法
因為本人雖然做過開發,卻一些基本知識不扎實,今天用到了,所以惡補了一下,特整理成了文檔,希望能鞏固知識,也希望能幫助一些朋友。
Servlet容器初始化一個servlet對象時,會為這個servlet對象創建一個servletConfig對象。在servletConfig對象中包含了servlet的初始化參數信息。此外,servletConfig對象還與servletContext對象關聯。Servlet容器在調用servlet對象的init(ServletConfig config)方法時,會把servletConfig對象當做參數傳遞給servlet對象。Init(ServletConfig config)方法會使得當前servlet對象與servletConfig對象建立關聯關系。
servletConfig接口中定義了一下方法:
Ø getInitParameter(String name):根據給定的初始化參數,返回匹配的初始化參數值。
Ø getInitParameterNmes():返回一個Enumeration對象,里面包含了所有的初始化參數。
Ø getServletContext():返回一個servletContext()對象,
Ø getServltName():返回servlet的名字,即web.xml中的<servlet-name>的子元素的值。如果沒有配置這個子元素,則返回servlet類的名字。
例子:
<servlet>
<servlet-name>actionServlet</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<load-on-startup>0</load-on-startup>
<init-param>
<param-name>color</param-name>
<param-value>red</param-value>
</init-param>
<init-param>
<param-name>size</param-name>
<param-value>16</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>actionServlet</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
如上,紅色標記處為初始化參數,相當于公有參數。
在servlet中:
public class UserDateBaseServlet extends HttpServlet{
String color = this.getInitParameter("color");
String size = this.getInitParameter("size");
System.out.println("顏色是:"+color+"字號是:"+size);
}
注:HttpServlt類繼承了GenericServlet類,而GenericServlet類實現了ServletConfig接口,因此在HttpServlet類和GenericServlet類及子類中都可以直接調用ServletConfig接口中的方法。
servletconfig和servletcontext的區別
ServletConfig就是獲取一個<Servlet></Servlet>的信息
而ServletContext則包含Web.xml里面所有的信息
ServletConfig是獲取該servlet的配置信息
每一個servletconfig對應一個servletservlet之間不共享數據的
request是瀏覽器發給服務器的
http://localhost:8080/Userinfo/servlet/str=''-----------------------------這個事干嗎的啊