1.AJAX的原理、如何实现刷新及其优点。
传统的WEB访问,都是通过浏览器发送请求,得服务器的响应结果;只要收到结果,就会在浏览器窗口显示,此时就会把原有的页面替换掉!
但是在一些应用中,我们希望保持原来的网页,只是在原网面的局部修改显示,例如注册用户时,对用户名是否重复的校验,google搜索提示框的提示,省份与城市的级联下拉列表框。
为了实现这种不替换原来网页的效果,就不能用浏览器直接发请求了,各种Javascript引擎都提供了一个js对象,用这个对象瞒着浏览器,偷偷与服务器交互,并得到服务器的返回结果 ,再用js代码集合DOM模型修改原网页中的某些元素。
在firefox和ie7等浏览器中,那个js对象是XMLHttpRequest,在ie7以前的ie浏览中,是一个ActiveXObject对象提供的,这个对象通常简称为xhr对象,它有open,connect,send等方法。例如下面一段代码:
1)服务器程序(Servlet代码,容器调用service()方法,决定用doPost(), doGet()方法);
2)页面:html中写一个form表单,两个input, 其中username, onblur="validateUserName()"
3)js代码
<script type="text/javascript">
function validateUserName(){
var username = document.getElementById("username").value;
alert(username);
var xhr = new XMLHttpRequest();
xhr.open('GET', "/serviceProject/abc.html?username="+username, false);//异步false还是同步true
xhr.onreadystatechange=function(){
xhr.send(null);
alert(xhr.readyState);
if(xhr.readyState == 4){
document.getElementById("result").innerHTML = xhr.reponseText;
}
}
//alert(xhr.reponseText);
}
</script>
2.门面模式
访问者,通过一个门面(Facade)来访问各个组件。
3.常用的6个linux的命令:ls cd man cat mkdir clear
4.SQL
编程:
1. 多线程
主线程
public class CommunicationTest{
static boolean bShouldSub = true;
public static void main(String[] args){
//final boolean bShouldSub = true;
new Thread(){
public void run(){
for(int i =0; i<50; i++){
synchronized(CommunicationTest.class){
if(!bShouldSub)
try{CommunicationTest.class.wait();}catch(Exception e){}
for(int j=0; j<10; j++){
try{Thread.sleep(200);}catch(Exception e){}
System.out.println(Thread.currentThread().getName() +":"+(j+1));
}
bShouldSub = false;
CommunicationTest.class.notify();
}
}
}
}.start();//加了大括号就是Thread的子类
for(int i=0; i<50; i++){
synchronized(CommunicationTest.class){
if(bShouldSub)
try{CommunicationTest.class.wait();}catch(Exception e){}
for(int j=0; j<10; j++){
try{
Thread.sleep(new Random().nextInt(1000));
}catch(Exception e){}
System.out.println(Thread.currentThread().getName() +":"+(j+1));
}
bShouldSub = true;
CommunicationTest.class.notify();
}
}
}
}
HashCode 的原理及作用?
java中的每一个对象都可以有一个标示,即hashcode值,有的可以一样,有的不一样;hashcode值128位,通过%、/等标准进行分堆归类,(引申:equals()相等,但hashcode值不一定一样)
用java怎么实现每天有1亿条记录的DB存储?MySQL每天有上亿记录数据量的数据库如何设计?
用PreparedStatement代替Statement,要注意该对象被重用,才能发挥其性能价值;数据库设计应该将存储记录的表分表设计。
从一亿条记录中查找看过5个以上电影的用户数量?
select count(*) as c from user group by userid having c >5;
对组进行条件过滤用having 不是where,
分享到:
相关推荐
这套面试题主要目的是帮助那些还没有java软件开发实际工作经验,而正在努力寻找java软件开发工作的朋友在笔试时更好地赢得笔试和面试。由于这套面试题涉及的范围很泛,很广,很杂,至少需要一个月的时间才能消化和...
张孝祥整理的JAVA面试题宝典,无疑为准备Java面试的求职者提供了一份宝贵的参考资料。下面,我们将深入探讨其中可能涉及的一些关键知识点。 1. **基础语法**:面试通常会从Java的基础开始,包括数据类型(原始与...
最全的j2EE面试题,题量大、经典,是我面试的整理试题 1、java笔试题大集合 2、各个公司面试题 3、J2EE初学者面试题 4、J2EE面试题(打码查错题) 5、java_华为笔试题 ...15、张孝祥整理Java就业面试题大全
张孝祥老师讲解java的多线程的配套ppt,很实用的
张孝祥整理Java就业面试题大全.doc 应届生应聘技术工作的面试技巧(来自培训机构多年经验总结).ppt sql面试题.doc JAVA面试题解惑系列.pdf Java面试题大全.pdf java面试题及答案(基础题122道,代码题19道).doc Java...
本文将根据张孝祥老师提供的《Java面试试题》中的内容进行深入解析,旨在帮助读者更好地准备Java相关的面试。 #### 关键知识点梳理 ##### 1. 学习方法与职业规划 - **学习方法**:在IT领域,尤其是Java开发中,...
虽然原文中并没有直接提到具体的面试技巧或题目,但从文件标题“张孝祥Java就业面试题大全”可以推断出,这部分内容应该涉及Java相关的面试题库及其解答。 **知识点**: - **面试题目的类型**:可能包括基础知识、...
综上所述,Java面试题通常会覆盖内存管理、线程与并发、类加载机制、对象状态管理、基本数据类型及其包装类、字符串类以及异常处理等多个方面。了解并掌握这些基础知识对于应对Java技术面试至关重要。
张孝祥正在整理Java就业面试题大全,要笔试面试java的可以看一下,还是很有帮助的