今天到一家巨牛無比的公司面試,做了一套巨牛無比的筆試題目.結果發現原來自己白乾了1年工作
大家看看這些問題也許對你以後面試有幫助
1. 面向對象的特徵有哪些方面?
2. JSP的常用內置對象都包括哪些?
3. Integer怎麼樣裝換成int型?
4。請問在weblogic下如何完整的解決中文問題?
5.某字段有10條重複記錄請把對應表中的記錄查詢出來?
表名 appeal_base_info
字段 appeal_type(number)
6.一張主表,一張從表,請將兩張表的所有記錄查詢出來?
主表: appeal_base_info 主鍵:base_id (number)
主表: appeal_person_info 主鍵:person_id(number) 外鍵: base_id(number)
7.兩個int 型的整數, 不經過第3方變量進行替換?
如a =10 b =5
轉換後 a =5 b =10
8.排錯題
1.
public BaseVO getAll(String id) throws SQLException {
PreparedStatement ps = null;
BaseVo vo = null;
ResultSet rs = null;
List list = null;
String sql = "select * from base_info where id = "+ id ";
ps = dbConnection.prepareStatement(sql);
try {
rs = ps.executeQuery();
if (rs.next()) {
vo = fillVO(rs);
}
}
catch (SQLException e) {
throw e;
}
finally {
closeDBObject(ps,rs);
return vo;
}
}
2.
public boolean compare(String str,List list){
list = new ArrayList();
int len = list.size();
boolean b = false;
for(int i=0;i <len;i++){
String str1 = list.get(i);
if(str.equals(str1)){
b = true;
}
}
return b;
}
9.編程題
1.請寫出你認爲效率最高的方法,實現從1加到100.
2.給定兩個日期begin,end
請對兩個日期進行對比
如果begin> end返回true
日期格式(yyyy-mm-dd hh:ss)
注意有可能爲null的條件
請用javascript實現.
10.在某頁面有一下拉框,需要隨着數據庫的變化而動態變化,請說明你所知道的方式,以及具體思路.
=========================================================================
1. 面向對象的特徵有哪些方面?
繼承性 多態性 封裝性
2. JSP的常用內置對象都包括哪些?
3. Integer怎麼樣裝換成int型?
4。請問在weblogic下如何完整的解決中文問題?
1) 在JSP文件頭加入
<%@ page contentType="text/html; charset=GBK" %>
指定該JSP採用的字符集。
2) 在Weblogic.xml文件的<jsp-descriptor>中加入:
<jsp-param>
<param-name>encoding</param-name>
<param-value>GBK</param-value>
</jsp-param>
指定JSP文件中採用的字符集,在JSP文件中的
<%@ page contentType="text/html; charset=GBK" %>會覆蓋該設置
3) 在Weblogic.xml文件的<jsp-descriptor>中加入
<jsp-param>
<param-name>compilerSupportsEncoding</param-name>
<param-value>true</param-value>
</jsp-param>
如果爲TRUE,指定在編譯JSP文件時,採用在JSP文件中定義的
<%@ page contentType="text/html; charset=GBK" %>
或
<jsp-descriptor>
中定義的encoding參數中定義的字符集進行編碼;
如果爲FALSE,則採用JVM中默認指定的字符集進行編碼。
5.某字段有10條重複記錄請把對應表中的記錄查詢出來?
表名 appeal_base_info
字段 appeal_type(number)
SELECT * form appeal_base_info where appeal_type in (select appeal_type from appeal_base_info group by appeal_type having count(appeal_type) = 10)
6.一張主表,一張從表,請將兩張表的所有記錄查詢出來?
主表: appeal_base_info 主鍵:base_id (number)
主表: appeal_person_info 主鍵:person_id(number) 外鍵: base_id(number)
select * from appeal_base_info,appeal_person_info where appeal_base_info.base_id = appeal_person_info.base_id
7.兩個int 型的整數, 不經過第3方變量進行替換?
如a =10 b =5
轉換後 a =5 b =10
方法一、a=a+b;b=a-b;a=a-b;
方法二、a=a + b<<16; // b放到了a的高16位
b=(a &0XFFFF0000)>>16 //把a放到了a的高16位
a=a & 0x0000ffff;
方法三、a^= b;
b ^= a;
a ^= b;
8.排錯題
1.
public BaseVO getAll(String id) throws SQLException {
PreparedStatement ps = null;
BaseVo vo = null;
ResultSet rs = null;
List list = null;
String sql = "select * from base_info where id = "+ id";
ps = dbConnection.prepareStatement(sql);
try {
rs = ps.executeQuery();
if (rs.next()) {
vo = fillVO(rs);
}
}
catch (SQLException e) {
throw e;
}
finally {
closeDBObject(ps,rs);
return vo;
}
}
2.
public boolean compare(String str,List list){
list = new ArrayList();
int len = list.size();
boolean b = false;
for(int i=0;i<len;i++){
String str1 = list.get(i);
if(str.equals(str1)){
b = true;
}
}
return b;
}
9.編程題
1.請寫出你認爲效率最高的方法,實現從1加到100.
1-100的累加相當於加50次101,這樣循環次數從100次降爲50次:
int sun = 0
for(int i = 1,j = 100 ; i <= 50 ; i++,j--){
sun = sun + i + j;
}
2.給定兩個日期begin,end
請對兩個日期進行對比
如果begin>end返回true
日期格式(yyyy-mm-dd hh:ss)
注意有可能爲null的條件
請用javascript實現.
10.在某頁面有一下拉框,需要隨着數據庫的變化而動態變化,請說明你所知道的方式,以及具體思路.
a、就像csdn論壇首頁那樣做,頁面一框架形式存在,定時刷新框架的一部分,如csdn刷新的就只是用戶狀態欄。
b、借鑑.net的實現方法,將頁面狀態已編碼的方式存放在form中,當數據庫發生變化時,不論用戶是否完成表單編輯頁面信息都會被提交,但是不會被處理,只有要變化的下拉框的狀態會發生變化,其它的值將回讀編碼值,以保存原有的狀態。
編寫一個截取字符的函數,輸入爲一個字符串和字節數,輸出爲按字節截取的字符串,但是要保證漢字不被截半個,如(“我ABC”,4),應該截爲“我AB”,輸入爲(“我ABC漢DEF”,6),應該截爲“我ABC”,而不是“我ABC+漢的一半”
public class CutString {
public static void main(String args[]) {
String str="我喜歡JAVA:)";
for(int i=0;i<=str.length();i++) {//循環打印
System.out.println(cutString(str,i));
}
}
public static String cutString(String s,int len) {
byte [] sb=s.getBytes();
boolean b=true;
for(int i=0;i<len;i++) {
if(sb[i]<0 && b==true) {//遇到漢字len++
len++;
b=false;
}else{
b=true;
}
}
return new String(sb,0,len);
}
}
static String cutstr(String str, int n) {
int i;
for (i = 0; i < n; i++) {
if (str.charAt(i) > 127)
n--;
}
return str.substring(0, n);
}
給出任一字符串,如abcdd,找出所有可能的字母組合(如ab ac add dd …… )!
public class GenCombination
{
char num[];
public GenCombination(int i,char[] ia){
num=new char[i];
for (int j=0 ;j<i ; j++ ) {
num[j]=ia[j];
}
}
public int getCombination(int n,int m){
if (n<m){
System.out.println("Wrong Parameters: first Param >= Second Param");
return 0;
}
System.out.println("get "+ m + " char from "+ n + " char :");
int numOfResult=0;
char result[][]=new char[100][];
int a[];
a=new int[m+1] ;
int i,j;
for (i=1;i<=m;i++) a[i]=i;
for (;;)
{
result[numOfResult] = new char[m];
int h=0;
for (i=1;i<=m;i++) {
result[numOfResult][h] = num[ a[i]-1 ];
h++;
}
for (int p=0; p<result[numOfResult].length; p++ ){
System.out.print(result[numOfResult][p]);
}
System.out.println();
numOfResult++;
for (j=m;j>=1;j--) if (a[j]<n-m+j) break;
if (j==0) break;
a[j]++;
for (i=j+1;i<=m;i++) a[i]=a[i-1]+1;
}
System.out.println( "/n"+numOfResult+" result!/n/n");
return numOfResult;
}
public static void main(String args[])
{
String s="abcdd";
char ca[]=s.toCharArray();
GenCombination gc=new GenCombination(s.length(),ca);
for (int i=1 ; i<=s.length(); i++)
gc.getCombination(s.length(),i);
}
}
1 HashMap和HashTable有什麼區別
2 數據庫中有以下數據
ID(pri)(Auto) name pass
1 aaa 111
2 bbb 222
3 ccc 333
請用一條SQL語句將現有的三條記錄複製一下,達到以下的效果
ID(pri) (Auto) name pass
1 aaa 111
2 bbb 222
3 ccc 333
4 aaa 111
5 bbb 222
6 ccc 333
再用一條sql刪除重複記錄
這個要hotman_x這個sqlA來回答了,呵呵
3 在服務器端,從一個jsp頁面中跳到另外一個jsp頁面中有幾種方法?
4 數據庫中表結構如下,
ID(Pri) int
no int
name varchar
birthDay Date
用java寫一個函數,返回所有符合條件 no = int a & name = str $ birthdavy = date 的結果集合
5 jsp和Servlet的區別和聯繫
6 設計一個權限管理模型,分爲a&b兩組 a組的一般用戶只能讀取a的table,a組中的管理員可以對a的table進行CRUD
同樣,b組的一般用戶只能讀取b的table,b組中的管理員可以對b的table進行CRUD
超級管理員可以對a&b的table進行CRUD
寫出部分實現代碼