- 浏览: 42691 次
- 性别:
- 来自: 北京
最新评论
-
tianzizhi:
<div class="quote_title ...
迅雷亲历面经:笔试+上机+面试(完整JAVA面试题求解大讨论) -
luobin23628:
Pattern.compile("[ab3]&quo ...
迅雷亲历面经:笔试+上机+面试(完整JAVA面试题求解大讨论) -
zlandjj:
用比较垃圾的办法写出来了
public class TetM ...
迅雷亲历面经:笔试+上机+面试(完整JAVA面试题求解大讨论) -
thinkingame:
<div class="quote_title ...
迅雷亲历面经:笔试+上机+面试(完整JAVA面试题求解大讨论) -
ww362034710:
tomcat 记得是150个吧
迅雷亲历面经:笔试+上机+面试(完整JAVA面试题求解大讨论)
迅雷面试回来,用了整整一下午(不知道怎么说了,其中等待时间都快2小时了),自己感觉笔试和上机还可以,但技术面谈这一关答得不太好,现在再次感觉互联网公司与一般软件公司的区别了,其中一点就是互联网应用在性能上要求很高,谈了一个小时大部分题目感觉都在谈论性能问题,自己在方面一直是弱项,汗啊:(
仔细回忆了一下整个面试过程的题目,记录下来,希望大家多多给点意见讨论下啊
一、笔试题:
A)JAVA基础多项选择题,比较简单,略
B)问答:
1)ajax原理、如何实现刷新数据及优点?
2)门面模式的解释、适用场合?
3)写6个linux常用命令?
4)SQL语句题,较简单
C)编程:
1)有三个线程ID分别是A、B、C,请有多线编程实现,在屏幕上循环打印10次ABCABC…
2)假如有字符串“6sabcsssfsfs33” ,用最有快速的方法去掉字符“ab3”,不能用java内置字符串方法(indeOf,substring,replaceAll等)?
二、上机题:
Java上机实现统计某一目录下每个文件中出现的字母个数、数字个数、空格个数及行数?
三、面试题:
1、说说JVM原理?内存泄露与溢出区别,何时产生内存泄露?
2、用java怎么实现有每天有1亿条记录的DB存储?mysql上亿记录数据量的数据库如何设计?
3、mysql支持事务吗?DB存储引擎有哪些?
4、mvc原理,mvc模式的优缺点,如果让你设计你会怎么改造MVC?
5、hibernate支持集群吗?如何实现集群?
6、tomcat 最多支持并发多少用户?
7、map原理,它是如何快速查找key的?map与set区别?
8、描术算法,如何有效合并两个文件:一个是1亿条的用户基本信息,另一个是用户每天看电影连续剧等的记录,5000万条。内存只有1G???
9、在1亿条用户记录里,如何快速查询统计出看了5个电影以上的用户?
10、Spring如何实现IOC与AOP的,说出实现原理?
期待大家的探讨,共同提高,多谢
线程的一个写法:
呵呵,挺好的题目,正合我的胃口。
第6,9题不太明确,应该属于数据库查询优化的题。又或者通过程序或者SQL过程来做。直接进行数据查询的话内存估计不够。
这么写可以吧。
public static void ab3(){
String str = "6sab3csssfsab3fs33";
String str1 = "ab3";
String str2 = "";
String[] st = str.split("ab3");
for(int i = 0 ; i < st.length ; i ++){
str2 = str2 + st[i];
}
System.out.print(str2);
}
我觉得这个题考查的是对JDK的熟悉程度 Jdk提供了一些方法的
高人啊,应该就是这个方法了
写成这样如何:
工资有多少啊?
貌似这些笔试题目都很注重基础啊.
有点难度.
<pre name="code" class="java">package runnable.com.cn;
import thread.com.cn.Intent;
public class FirstRunner implements Runnable {
private Intent i;
public FirstRunner(Intent i) {
this.i = i;
}
@Override
public void run() {
Intent temp = this.getI();
synchronized (temp) {
while (!temp.isA()) {
try {
temp.wait();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
System.out.print("A");
temp.setA(false);
temp.setB(true);
temp.setC(false);
temp.notifyAll();
}
}
public synchronized Intent getI() {
return i;
}
public void setI(Intent i) {
this.i = i;
}
}
</pre>
<p> </p>
<p> </p>
<pre name="code" class="java">package runnable.com.cn;
import thread.com.cn.Intent;
public class SecondRunner implements Runnable {
private Intent i;
public SecondRunner(Intent i) {
this.i = i;
}
@Override
public void run() {
Intent temp = this.getI();
synchronized (temp) {
while (!temp.isB()) {
try {
temp.wait();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
System.out.print("B");
temp.setA(false);
temp.setB(false);
temp.setC(true);
temp.notifyAll();
}
}
public synchronized Intent getI() {
return i;
}
public void setI(Intent i) {
this.i = i;
}
}
</pre>
<pre name="code" class="java">package runnable.com.cn;
import thread.com.cn.Intent;
public class ThirdRunner implements Runnable {
private Intent i;
public ThirdRunner(Intent i) {
this.i = i;
}
@Override
public void run() {
Intent temp = this.getI();
synchronized (temp) {
while (!temp.isC()) {
try {
temp.wait();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
System.out.print("C");
temp.setA(true);
temp.setB(false);
temp.setC(false);
temp.notifyAll();
}
}
public synchronized Intent getI() {
return i;
}
public void setI(Intent i) {
this.i = i;
}
}
</pre>
<pre name="code" class="java">package thread.com.cn;
public class Intent {
private volatile boolean a;
private volatile boolean b;
private volatile boolean c;
public boolean isA() {
return a;
}
public void setA(boolean a) {
this.a = a;
}
public boolean isB() {
return b;
}
public void setB(boolean b) {
this.b = b;
}
public boolean isC() {
return c;
}
public void setC(boolean c) {
this.c = c;
}
}
</pre>
<pre name="code" class="java">package thread.com.cn;
import runnable.com.cn.*;
public class MainThread {
public static void main(String[] args) {
Intent intent = new Intent();
intent.setA(true);
intent.setB(false);
intent.setC(false);
for (int i = 0; i < 10; i++) {
Thread firstthread = new Thread(new FirstRunner(intent));
Thread secondtthread = new Thread(new SecondRunner(intent));
Thread thirdthread = new Thread(new ThirdRunner(intent));
thirdthread.start();
firstthread.start();
secondtthread.start();
}
}
}
</pre>
绝对的高手,,,,这也太简单了吧
人家的问题你都想太少了
这是个比较拼人品的答案,如果拼对了可能让人对你有深刻的印象,如果拼错了。。。。换一家吧。
这也是个非常直接的答案,如果只限制在这一题内,这个答案肯定没错,而且算是很高效的。很多时候没必要让算法多通用,通用的算法未必都高效。很多时候能让我们快速直接解决实际问题的方法才是最省成本的
这个是亮点
仔细回忆了一下整个面试过程的题目,记录下来,希望大家多多给点意见讨论下啊
一、笔试题:
A)JAVA基础多项选择题,比较简单,略
B)问答:
1)ajax原理、如何实现刷新数据及优点?
2)门面模式的解释、适用场合?
3)写6个linux常用命令?
4)SQL语句题,较简单
C)编程:
1)有三个线程ID分别是A、B、C,请有多线编程实现,在屏幕上循环打印10次ABCABC…
2)假如有字符串“6sabcsssfsfs33” ,用最有快速的方法去掉字符“ab3”,不能用java内置字符串方法(indeOf,substring,replaceAll等)?
二、上机题:
Java上机实现统计某一目录下每个文件中出现的字母个数、数字个数、空格个数及行数?
三、面试题:
1、说说JVM原理?内存泄露与溢出区别,何时产生内存泄露?
2、用java怎么实现有每天有1亿条记录的DB存储?mysql上亿记录数据量的数据库如何设计?
3、mysql支持事务吗?DB存储引擎有哪些?
4、mvc原理,mvc模式的优缺点,如果让你设计你会怎么改造MVC?
5、hibernate支持集群吗?如何实现集群?
6、tomcat 最多支持并发多少用户?
7、map原理,它是如何快速查找key的?map与set区别?
8、描术算法,如何有效合并两个文件:一个是1亿条的用户基本信息,另一个是用户每天看电影连续剧等的记录,5000万条。内存只有1G???
9、在1亿条用户记录里,如何快速查询统计出看了5个电影以上的用户?
10、Spring如何实现IOC与AOP的,说出实现原理?
期待大家的探讨,共同提高,多谢
评论
117 楼
tianzizhi
2010-11-21
aniu2008 写道
迅雷面试回来,用了整整一下午(不知道怎么说了,其中等待时间都快2小时了),自己感觉笔试和上机还可以,但技术面谈这一关答得不太好,现在再次感觉互联网公司与一般软件公司的区别了,其中一点就是互联网应用在性能上要求很高,谈了一个小时大部分题目感觉都在谈论性能问题,自己在方面一直是弱项,汗啊:(
仔细回忆了一下整个面试过程的题目,记录下来,希望大家多多给点意见讨论下啊
一、笔试题:
A)JAVA基础多项选择题,比较简单,略
B)问答:
1)ajax原理、如何实现刷新数据及优点?
2)门面模式的解释、适用场合?
3)写6个linux常用命令?
4)SQL语句题,较简单
C)编程:
1)有三个线程ID分别是A、B、C,请有多线编程实现,在屏幕上循环打印10次ABCABC…
2)假如有字符串“6sabcsssfsfs33” ,用最有快速的方法去掉字符“ab3”,不能用java内置字符串方法(indeOf,substring,replaceAll等)?
二、上机题:
Java上机实现统计某一目录下每个文件中出现的字母个数、数字个数、空格个数及行数?
三、面试题:
1、说说JVM原理?内存泄露与溢出区别,何时产生内存泄露?
2、用java怎么实现有每天有1亿条记录的DB存储?mysql上亿记录数据量的数据库如何设计?
3、mysql支持事务吗?DB存储引擎有哪些?
4、mvc原理,mvc模式的优缺点,如果让你设计你会怎么改造MVC?
5、hibernate支持集群吗?如何实现集群?
6、tomcat 最多支持并发多少用户?
7、map原理,它是如何快速查找key的?map与set区别?
8、描术算法,如何有效合并两个文件:一个是1亿条的用户基本信息,另一个是用户每天看电影连续剧等的记录,5000万条。内存只有1G???
9、在1亿条用户记录里,如何快速查询统计出看了5个电影以上的用户?
10、Spring如何实现IOC与AOP的,说出实现原理?
期待大家的探讨,共同提高,多谢
仔细回忆了一下整个面试过程的题目,记录下来,希望大家多多给点意见讨论下啊
一、笔试题:
A)JAVA基础多项选择题,比较简单,略
B)问答:
1)ajax原理、如何实现刷新数据及优点?
2)门面模式的解释、适用场合?
3)写6个linux常用命令?
4)SQL语句题,较简单
C)编程:
1)有三个线程ID分别是A、B、C,请有多线编程实现,在屏幕上循环打印10次ABCABC…
2)假如有字符串“6sabcsssfsfs33” ,用最有快速的方法去掉字符“ab3”,不能用java内置字符串方法(indeOf,substring,replaceAll等)?
二、上机题:
Java上机实现统计某一目录下每个文件中出现的字母个数、数字个数、空格个数及行数?
三、面试题:
1、说说JVM原理?内存泄露与溢出区别,何时产生内存泄露?
2、用java怎么实现有每天有1亿条记录的DB存储?mysql上亿记录数据量的数据库如何设计?
3、mysql支持事务吗?DB存储引擎有哪些?
4、mvc原理,mvc模式的优缺点,如果让你设计你会怎么改造MVC?
5、hibernate支持集群吗?如何实现集群?
6、tomcat 最多支持并发多少用户?
7、map原理,它是如何快速查找key的?map与set区别?
8、描术算法,如何有效合并两个文件:一个是1亿条的用户基本信息,另一个是用户每天看电影连续剧等的记录,5000万条。内存只有1G???
9、在1亿条用户记录里,如何快速查询统计出看了5个电影以上的用户?
10、Spring如何实现IOC与AOP的,说出实现原理?
期待大家的探讨,共同提高,多谢
线程的一个写法:
public class ThreadTest implements Runnable{ private String id; public ThreadTest(String id) { this.id = id; } public static void main(String[] arg){ ExecutorService es = Executors.newSingleThreadExecutor(); for(int i=0;i<10;i++){ es.submit(new ThreadTest("A")); es.submit(new ThreadTest("B")); es.submit(new ThreadTest("C")); } es.shutdown(); } public void run() { // TODO Auto-generated method stub System.out.print(this.id); } }
116 楼
luobin23628
2010-11-20
Pattern.compile("[ab3]").matcher(s).replaceAll("");
115 楼
zlandjj
2010-10-12
用比较垃圾的办法写出来了
public class TetMain {
public static void main(String[] args) {
String str = "6sabcsssfsfs33";
char[] strCharArray = str.toCharArray();
char[] filtedCharArray = new char[strCharArray.length];
int retIndex = 0;
for (int i = 0; i < strCharArray.length; i++) {
if ((strCharArray[i] != 'a') && (strCharArray[i] != 'b')
&& (strCharArray[i] != 'c')) {
filtedCharArray[retIndex] = strCharArray[i];
retIndex++;
}
}
char[] resultCharArry = new char[retIndex];
for (int i = 0; i < resultCharArry.length; i++) {
resultCharArry[i] = filtedCharArray[i];
}
String resultStr = new String(resultCharArry);
System.out.println(resultStr);
}
}
public class TetMain {
public static void main(String[] args) {
String str = "6sabcsssfsfs33";
char[] strCharArray = str.toCharArray();
char[] filtedCharArray = new char[strCharArray.length];
int retIndex = 0;
for (int i = 0; i < strCharArray.length; i++) {
if ((strCharArray[i] != 'a') && (strCharArray[i] != 'b')
&& (strCharArray[i] != 'c')) {
filtedCharArray[retIndex] = strCharArray[i];
retIndex++;
}
}
char[] resultCharArry = new char[retIndex];
for (int i = 0; i < resultCharArry.length; i++) {
resultCharArry[i] = filtedCharArray[i];
}
String resultStr = new String(resultCharArry);
System.out.println(resultStr);
}
}
114 楼
thinkingame
2010-09-26
aniu2008 写道
迅雷面试回来,用了整整一下午(不知道怎么说了,其中等待时间都快2小时了),自己感觉笔试和上机还可以,但技术面谈这一关答得不太好,现在再次感觉互联网公司与一般软件公司的区别了,其中一点就是互联网应用在性能上要求很高,谈了一个小时大部分题目感觉都在谈论性能问题,自己在方面一直是弱项,汗啊:(
仔细回忆了一下整个面试过程的题目,记录下来,希望大家多多给点意见讨论下啊
一、笔试题:
A)JAVA基础多项选择题,比较简单,略
B)问答:
1)ajax原理、如何实现刷新数据及优点?
2)门面模式的解释、适用场合?
3)写6个linux常用命令?
4)SQL语句题,较简单
C)编程:
1)有三个线程ID分别是A、B、C,请有多线编程实现,在屏幕上循环打印10次ABCABC…
2)假如有字符串“6sabcsssfsfs33” ,用最有快速的方法去掉字符“ab3”,不能用java内置字符串方法(indeOf,substring,replaceAll等)?
二、上机题:
Java上机实现统计某一目录下每个文件中出现的字母个数、数字个数、空格个数及行数?
三、面试题:
1、说说JVM原理?内存泄露与溢出区别,何时产生内存泄露?
2、用java怎么实现有每天有1亿条记录的DB存储?mysql上亿记录数据量的数据库如何设计?
3、mysql支持事务吗?DB存储引擎有哪些?
4、mvc原理,mvc模式的优缺点,如果让你设计你会怎么改造MVC?
5、hibernate支持集群吗?如何实现集群?
6、tomcat 最多支持并发多少用户?
7、map原理,它是如何快速查找key的?map与set区别?
8、描术算法,如何有效合并两个文件:一个是1亿条的用户基本信息,另一个是用户每天看电影连续剧等的记录,5000万条。内存只有1G???
9、在1亿条用户记录里,如何快速查询统计出看了5个电影以上的用户?
10、Spring如何实现IOC与AOP的,说出实现原理?
期待大家的探讨,共同提高,多谢
仔细回忆了一下整个面试过程的题目,记录下来,希望大家多多给点意见讨论下啊
一、笔试题:
A)JAVA基础多项选择题,比较简单,略
B)问答:
1)ajax原理、如何实现刷新数据及优点?
2)门面模式的解释、适用场合?
3)写6个linux常用命令?
4)SQL语句题,较简单
C)编程:
1)有三个线程ID分别是A、B、C,请有多线编程实现,在屏幕上循环打印10次ABCABC…
2)假如有字符串“6sabcsssfsfs33” ,用最有快速的方法去掉字符“ab3”,不能用java内置字符串方法(indeOf,substring,replaceAll等)?
二、上机题:
Java上机实现统计某一目录下每个文件中出现的字母个数、数字个数、空格个数及行数?
三、面试题:
1、说说JVM原理?内存泄露与溢出区别,何时产生内存泄露?
2、用java怎么实现有每天有1亿条记录的DB存储?mysql上亿记录数据量的数据库如何设计?
3、mysql支持事务吗?DB存储引擎有哪些?
4、mvc原理,mvc模式的优缺点,如果让你设计你会怎么改造MVC?
5、hibernate支持集群吗?如何实现集群?
6、tomcat 最多支持并发多少用户?
7、map原理,它是如何快速查找key的?map与set区别?
8、描术算法,如何有效合并两个文件:一个是1亿条的用户基本信息,另一个是用户每天看电影连续剧等的记录,5000万条。内存只有1G???
9、在1亿条用户记录里,如何快速查询统计出看了5个电影以上的用户?
10、Spring如何实现IOC与AOP的,说出实现原理?
期待大家的探讨,共同提高,多谢
呵呵,挺好的题目,正合我的胃口。
第6,9题不太明确,应该属于数据库查询优化的题。又或者通过程序或者SQL过程来做。直接进行数据查询的话内存估计不够。
113 楼
ww362034710
2010-09-25
tomcat 记得是150个吧
112 楼
sun_cyj
2010-09-25
public static void main(String[] args) {
Worker a = new Worker("A");
Worker b = new Worker("B");
Worker c = new Worker("C");
a.setCanRun(true);
a.setNext(b);
b.setNext(c);
c.setNext(a);
a.start();
b.start();
c.start();
}
Worker a = new Worker("A");
Worker b = new Worker("B");
Worker c = new Worker("C");
a.setCanRun(true);
a.setNext(b);
b.setNext(c);
c.setNext(a);
a.start();
b.start();
c.start();
}
111 楼
sun_cyj
2010-09-25
class Worker extends Thread{ Worker(String name) { setName(name); } int count = 10; int runTime = 0; private boolean canRun = false; private Worker next; public Worker getNext() { return next; } public void setNext(Worker next) { this.next = next; } public Worker(Worker next) { super(); this.next = next; } public void run() { while(runTime <= count) { if(isCanRun()) { System.out.println(getName()); this.canRun = false; if(next != null) next.setCanRun(true); runTime ++; } } } public boolean isCanRun() { return canRun; } public synchronized void setCanRun(boolean canRun) { this.canRun = canRun; } }
110 楼
ddrdongdong
2010-09-24
支持一下,好东西不会过时。
109 楼
xcg9593
2010-07-01
高手过招。有些题目还是非常头疼的。
108 楼
wxb_love
2010-06-13
egmacross 写道
2)假如有字符串“6sabcsssfsfs33” ,用最有快速的方法去掉字符“ab3”,不能用java内置字符串方法(indeOf,substring,replaceAll等)?
这个不用内置的能有啥好方法吗?
这个不用内置的能有啥好方法吗?
这么写可以吧。
public static void ab3(){
String str = "6sab3csssfsab3fs33";
String str1 = "ab3";
String str2 = "";
String[] st = str.split("ab3");
for(int i = 0 ; i < st.length ; i ++){
str2 = str2 + st[i];
}
System.out.print(str2);
}
107 楼
jsczxy2
2010-06-06
不知道工资有多少 个人觉得如果都很回答上来的话 起码工资能到10K+的水平
106 楼
adriny
2010-06-05
egmacross 写道
2)假如有字符串“6sabcsssfsfs33” ,用最有快速的方法去掉字符“ab3”,不能用java内置字符串方法(indeOf,substring,replaceAll等)?
这个不用内置的能有啥好方法吗?
这个不用内置的能有啥好方法吗?
我觉得这个题考查的是对JDK的熟悉程度 Jdk提供了一些方法的
105 楼
ayiui4566
2010-06-05
2)假如有字符串“6sabcsssfsfs33” ,用最有快速的方法去掉字符“ab3”,不能用java内置字符串方法(indeOf,substring,replaceAll等)?
private static void m(){ String str = "6sab3ab3sssfab3sfs33ab3d"; char[] strr=str.toCharArray(); StringBuffer sb = new StringBuffer(); for (int i=0;i<str.length();i++) { if(strr[i]=='a'){ if(strr[i+1]=='b'){ if(strr[i+2]=='3'){ i=i+2; }else{ sb.append(strr[i]); } }else{ sb.append(strr[i]); } }else{ sb.append(strr[i]); } System.out.println(i); } System.out.println(sb.toString()); }
104 楼
ayiui4566
2010-06-05
aniu2008 写道
diaodou 写道
C 2) 可以用这个简单方法。
上机题是一样的方法,开个256的数组,count[256],表示每个字母,数字等的出现次数。
class Remove{
public static void main(String args[]) {
String str="6sabcsssfsfs33;
boolean removeChars[256] = {true};
removeChars['a'] = false;
removeChars['b'] = false;
removeChars['3'] = false;
StringBuffer sb = new StringBuffer();
for (char ch: str) {
if (!removeChars[ch]) sb.append(ch);
}
String result = sb.toString();
}
}
上机题是一样的方法,开个256的数组,count[256],表示每个字母,数字等的出现次数。
class Remove{
public static void main(String args[]) {
String str="6sabcsssfsfs33;
boolean removeChars[256] = {true};
removeChars['a'] = false;
removeChars['b'] = false;
removeChars['3'] = false;
StringBuffer sb = new StringBuffer();
for (char ch: str) {
if (!removeChars[ch]) sb.append(ch);
}
String result = sb.toString();
}
}
高人啊,应该就是这个方法了
写成这样如何:
String str="6sabcssaafsbbfs33"; StringBuffer sb=new StringBuffer(); for(char ch:str.toCharArray()){ if(ch!='a'&&ch!='b'&&ch!='3'){ sb.append(ch); } } System.out.println(sb.toString());
103 楼
w156445045
2010-06-04
aniu2008 写道
迅雷面试回来,用了整整一下午(不知道怎么说了,其中等待时间都快2小时了),自己感觉笔试和上机还可以,但技术面谈这一关答得不太好,现在再次感觉互联网公司与一般软件公司的区别了,其中一点就是互联网应用在性能上要求很高,谈了一个小时大部分题目感觉都在谈论性能问题,自己在方面一直是弱项,汗啊:(
仔细回忆了一下整个面试过程的题目,记录下来,希望大家多多给点意见讨论下啊
一、笔试题:
A)JAVA基础多项选择题,比较简单,略
B)问答:
1)ajax原理、如何实现刷新数据及优点?
2)门面模式的解释、适用场合?
3)写6个linux常用命令?
4)SQL语句题,较简单
C)编程:
1)有三个线程ID分别是A、B、C,请有多线编程实现,在屏幕上循环打印10次ABCABC…
2)假如有字符串“6sabcsssfsfs33” ,用最有快速的方法去掉字符“ab3”,不能用java内置字符串方法(indeOf,substring,replaceAll等)?
二、上机题:
Java上机实现统计某一目录下每个文件中出现的字母个数、数字个数、空格个数及行数?
三、面试题:
1、说说JVM原理?内存泄露与溢出区别,何时产生内存泄露?
2、用java怎么实现有每天有1亿条记录的DB存储?mysql上亿记录数据量的数据库如何设计?
3、mysql支持事务吗?DB存储引擎有哪些?
4、mvc原理,mvc模式的优缺点,如果让你设计你会怎么改造MVC?
5、hibernate支持集群吗?如何实现集群?
6、tomcat 最多支持并发多少用户?
7、map原理,它是如何快速查找key的?map与set区别?
8、描术算法,如何有效合并两个文件:一个是1亿条的用户基本信息,另一个是用户每天看电影连续剧等的记录,5000万条。内存只有1G???
9、在1亿条用户记录里,如何快速查询统计出看了5个电影以上的用户?
10、Spring如何实现IOC与AOP的,说出实现原理?
期待大家的探讨,共同提高,多谢
仔细回忆了一下整个面试过程的题目,记录下来,希望大家多多给点意见讨论下啊
一、笔试题:
A)JAVA基础多项选择题,比较简单,略
B)问答:
1)ajax原理、如何实现刷新数据及优点?
2)门面模式的解释、适用场合?
3)写6个linux常用命令?
4)SQL语句题,较简单
C)编程:
1)有三个线程ID分别是A、B、C,请有多线编程实现,在屏幕上循环打印10次ABCABC…
2)假如有字符串“6sabcsssfsfs33” ,用最有快速的方法去掉字符“ab3”,不能用java内置字符串方法(indeOf,substring,replaceAll等)?
二、上机题:
Java上机实现统计某一目录下每个文件中出现的字母个数、数字个数、空格个数及行数?
三、面试题:
1、说说JVM原理?内存泄露与溢出区别,何时产生内存泄露?
2、用java怎么实现有每天有1亿条记录的DB存储?mysql上亿记录数据量的数据库如何设计?
3、mysql支持事务吗?DB存储引擎有哪些?
4、mvc原理,mvc模式的优缺点,如果让你设计你会怎么改造MVC?
5、hibernate支持集群吗?如何实现集群?
6、tomcat 最多支持并发多少用户?
7、map原理,它是如何快速查找key的?map与set区别?
8、描术算法,如何有效合并两个文件:一个是1亿条的用户基本信息,另一个是用户每天看电影连续剧等的记录,5000万条。内存只有1G???
9、在1亿条用户记录里,如何快速查询统计出看了5个电影以上的用户?
10、Spring如何实现IOC与AOP的,说出实现原理?
期待大家的探讨,共同提高,多谢
工资有多少啊?
貌似这些笔试题目都很注重基础啊.
有点难度.
102 楼
melin
2010-06-04
有三个线程ID分别是A、B、C,请有多线编程实现,在屏幕上循环打印10次ABCABC…
package com.starit.portal.hessian;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.Semaphore;
public class TestOderThread {
private static Semaphore semaphore1 = new Semaphore(0);
private static Semaphore semaphore2 = new Semaphore(0);
public Thread t1;
public Thread t2;
public Thread t3;
private static CountDownLatch latch;
public TestOderThread() {
t1 = new Thread() {
public void run() {
try {
System.out.print("A");
semaphore1.release();
latch.countDown();
} catch (Exception e) {
e.printStackTrace();
}
}
};
t2 = new Thread() {
public void run() {
try {
semaphore1.acquire();
System.out.print("B");
semaphore2.release();
latch.countDown();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
};
t3 = new Thread() {
public void run() {
try {
semaphore2.acquire();
System.out.print("C");
latch.countDown();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
};
}
public void run() {
t1.start();
t2.start();
t3.start();
}
public static void main(String args[]) throws Exception {
TestOderThread t = new TestOderThread();
for (int i = 0; i < 10; i++) {
t = new TestOderThread();
latch = new CountDownLatch(3);
t.run();
latch.await();
}
}
}
package com.starit.portal.hessian;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.Semaphore;
public class TestOderThread {
private static Semaphore semaphore1 = new Semaphore(0);
private static Semaphore semaphore2 = new Semaphore(0);
public Thread t1;
public Thread t2;
public Thread t3;
private static CountDownLatch latch;
public TestOderThread() {
t1 = new Thread() {
public void run() {
try {
System.out.print("A");
semaphore1.release();
latch.countDown();
} catch (Exception e) {
e.printStackTrace();
}
}
};
t2 = new Thread() {
public void run() {
try {
semaphore1.acquire();
System.out.print("B");
semaphore2.release();
latch.countDown();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
};
t3 = new Thread() {
public void run() {
try {
semaphore2.acquire();
System.out.print("C");
latch.countDown();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
};
}
public void run() {
t1.start();
t2.start();
t3.start();
}
public static void main(String args[]) throws Exception {
TestOderThread t = new TestOderThread();
for (int i = 0; i < 10; i++) {
t = new TestOderThread();
latch = new CountDownLatch(3);
t.run();
latch.await();
}
}
}
101 楼
lz12366
2010-06-03
这些题真的很有水平啊!!一些题还真做不了
100 楼
lovesl
2010-06-03
<pre name="code" class="java">package runnable.com.cn;
import thread.com.cn.Intent;
public class FirstRunner implements Runnable {
private Intent i;
public FirstRunner(Intent i) {
this.i = i;
}
@Override
public void run() {
Intent temp = this.getI();
synchronized (temp) {
while (!temp.isA()) {
try {
temp.wait();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
System.out.print("A");
temp.setA(false);
temp.setB(true);
temp.setC(false);
temp.notifyAll();
}
}
public synchronized Intent getI() {
return i;
}
public void setI(Intent i) {
this.i = i;
}
}
</pre>
<p> </p>
<p> </p>
<pre name="code" class="java">package runnable.com.cn;
import thread.com.cn.Intent;
public class SecondRunner implements Runnable {
private Intent i;
public SecondRunner(Intent i) {
this.i = i;
}
@Override
public void run() {
Intent temp = this.getI();
synchronized (temp) {
while (!temp.isB()) {
try {
temp.wait();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
System.out.print("B");
temp.setA(false);
temp.setB(false);
temp.setC(true);
temp.notifyAll();
}
}
public synchronized Intent getI() {
return i;
}
public void setI(Intent i) {
this.i = i;
}
}
</pre>
<pre name="code" class="java">package runnable.com.cn;
import thread.com.cn.Intent;
public class ThirdRunner implements Runnable {
private Intent i;
public ThirdRunner(Intent i) {
this.i = i;
}
@Override
public void run() {
Intent temp = this.getI();
synchronized (temp) {
while (!temp.isC()) {
try {
temp.wait();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
System.out.print("C");
temp.setA(true);
temp.setB(false);
temp.setC(false);
temp.notifyAll();
}
}
public synchronized Intent getI() {
return i;
}
public void setI(Intent i) {
this.i = i;
}
}
</pre>
<pre name="code" class="java">package thread.com.cn;
public class Intent {
private volatile boolean a;
private volatile boolean b;
private volatile boolean c;
public boolean isA() {
return a;
}
public void setA(boolean a) {
this.a = a;
}
public boolean isB() {
return b;
}
public void setB(boolean b) {
this.b = b;
}
public boolean isC() {
return c;
}
public void setC(boolean c) {
this.c = c;
}
}
</pre>
<pre name="code" class="java">package thread.com.cn;
import runnable.com.cn.*;
public class MainThread {
public static void main(String[] args) {
Intent intent = new Intent();
intent.setA(true);
intent.setB(false);
intent.setC(false);
for (int i = 0; i < 10; i++) {
Thread firstthread = new Thread(new FirstRunner(intent));
Thread secondtthread = new Thread(new SecondRunner(intent));
Thread thirdthread = new Thread(new ThirdRunner(intent));
thirdthread.start();
firstthread.start();
secondtthread.start();
}
}
}
</pre>
99 楼
ziyu_1
2010-03-30
linyvlu 写道
lantb1986 写道
linyvlu 写道
StringBuilder sb = new StringBuilder("6sabcsssfsfs33"); sb.delete(2, 4); sb.delete(sb.length()-2, sb.length());
绝对的高手,,,,这也太简单了吧
人家的问题你都想太少了
这是个比较拼人品的答案,如果拼对了可能让人对你有深刻的印象,如果拼错了。。。。换一家吧。
这也是个非常直接的答案,如果只限制在这一题内,这个答案肯定没错,而且算是很高效的。很多时候没必要让算法多通用,通用的算法未必都高效。很多时候能让我们快速直接解决实际问题的方法才是最省成本的
这个是亮点
98 楼
ziyu_1
2010-03-30
5、hibernate支持集群吗?如何实现集群?
hibernate 怎么还有集群的概念
hibernate 怎么还有集群的概念
发表评论
-
正确理解ThreadLocal
2009-12-01 10:40 756首先,ThreadLocal 不是用来解决共享对象的多线程访问 ... -
java中ThreadLocal类的使用
2009-12-01 10:38 2895EasyDBO的数据库连接部分,为了给每个连接提供上下文,程序 ... -
迅雷招聘题:2009的2009次方,所得数各位数字求和,结果继续求和,直到剩下一位数字,需要几次求和运算??
2009-11-30 07:39 25642009的2009次方,所得数各位数字求和,结果继续求和,直到 ... -
KMP字符串模式匹配详解
2009-11-29 19:03 906http://lemonmilk.blog.51cto.com ...
相关推荐
有很多很有趣的知识点,但是以面试题为主,还是有点把自己当速成:chicken:的感觉 然后主要看面试Blog,Rico的博客, 数据库原理,操作系统,计算机网络,第一次看JUC包,之前谁管过这个,真没用过锁 第一场面试之前...
必联采购网的Java程序员笔试题涉及到多个Java Web开发的核心知识点,这些题目旨在考察应聘者的编程基础、异常处理能力、前端知识、框架理解以及实际项目经验。下面是对这些知识点的详细说明: 1. **Java连接数据库...
亲历分享_自学编程的致命误区,你中招了没_在职程序员聊聊自学时如何防止入坑
5. **只买蓝筹,不买小票**:蓝筹股市值大,流通盘相对较小,且大多由政府可控机构持有,更利于救市操作,而小盘股庄家操控性强,买入可能导致庄家套现,加大市场波动。 6. **过快上涨主动卖出**:防止指数快速上涨...
中软笔试题目是指中软公司的笔试题目,该公司是中国最大的软件公司之一,笔试题目涵盖了软件开发、数据库、算法、软件工程、网络模型、面向对象、编程语言等多个方面,本文将对笔试题目的各个部分进行概括和分析。...
亲历:果敢战火下的中缅边民.docx
《亲历华为IPD:理解与实践》 集成产品开发(IPD,Integrated Product Development)是华为公司在2003年引入的一种先进的产品开发管理模式,源自IBM的改革实践。IPD的核心理念在于通过跨部门、跨职能的团队协作,...
3. **JavaApplication开发**:通过示例程序(如“Hello World”),学生将亲历程序的编写、保存、编译与运行全过程。 4. **JavaApplet初步**:虽然未详述,但介绍Applet的基本结构与开发流程,为更复杂的应用打下...
【集成产品开发(IPD)】是华为引入的一种先进的产品开发模式,源于IBM的企业改革实践。IPD的核心理念是强调跨部门协作和整体责任,旨在提高产品研发效率和产品质量,确保产品的市场效益。以下是对IPD的详细阐述: ...
深度实战:全面覆盖游戏逻辑、图形渲染、事件处理等核心技术点,让您亲历从零到一完整的游戏开发流程。 丰富玩法:原汁原味还原经典模式,同时具备流畅的方块旋转、平移、锁定功能,更有刺激的消除行分计算系统,...
全球有25亿Java器件运行着Java,450多万Java开发者活泼在地球的每个角落,数以千万计的Web用户每次上网都亲历Java的威力。 Java软件工程师的薪水相对较高。通常来说,具有3~5年开发经验的工程师,拥有年薪10万元是...
附完整源码,这是一门培养应对复杂业务的综合技术能力的实战课程,本课采用前后端分离开发模式,严格遵守企业级架构和规范,带你开发门户平台+媒体中心+运营中心三大业务的企业级自媒体平台。一个项目贯穿后端主流...
这本书的书名——《打造Facebook:亲历Facebook爆发的5年》很嚣张,谁有资格可以说这句话呢,当然,扎克伯格最有资格,但他不会亲自来告诉你,至少从目前的情况来看,近几年都不大可能。而且,这不是一个人的公司。...
精品教育教学资料
OSGi是一种模块化系统和Java服务框架,它允许在运行时动态地发现、加载、卸载和管理软件组件,极大地增强了Java应用程序的灵活性和可维护性。 在描述中,虽然没有提供具体的信息,但我们可以推断这是一篇个人经验...
本书作者是阿里巴巴网站构建的亲历者,拥有核心技术部门的一线工作经验,直接体验了大型网站构建与发展过程中的种种生与死,蜕与变,见证了一个网站架构从幼稚走向成熟稳定的历程。 本书通过梳理大型网站技术发展...
《亲历投行——中国投行的若干传言与真相》是一本深度揭示中国投资银行业内幕的书籍,作者通过自己的亲身经历,为读者揭开了这个行业神秘的面纱。这份PPT读书笔记,无疑是深入理解中国投行生态的重要参考资料,对于...
本书作者是阿里巴巴网站构建的亲历者,拥有核心技术部门的一线工作经验,直接体验了大型网站构建与发展过程中的种种生与死,蜕与变,见证了一个网站架构从幼稚走向成熟稳定的历程。 本书通过梳理大型网站技术发展...
亲历“精细化营销”doc14.doc