Java Web笔记三
来源:互联网 发布:二分折半查找范围算法 编辑:程序博客网 时间:2024/06/06 09:53
FORWARD表示内部转发指指定资源,才经过该过滤器
监听器:
ServletContextListener 上下文监听器 在服务器启动的时候创建,在修改代码后保存时,会先销毁,在创建
ServletContextAttributeListener上下文对象属性监听器
HttpSessionBindingListener 是为唯一一个不需要注册的监听器
AJAX 基础:
涉及7项技术: javascript 、XMLHttpRequest、Dom、css、html、XML以及相关服务器的API
创建:
var ajaxObj;
//创建AJAX对象,利用该对象代替form表单向服务器发送请求
functioncreateAJAX() {
if(window.ActiveXObject) { //IE
ajaxObj= new ActiveXObject("Microsoft.XMLHTTP");
}else if (window.XMLHttpRequest) {//firefox
ajaxObj= new XMLHttpRequest();
}
}
用get方式提交(不能有中文,中文需要用post):
function check() {
createAJAX();
//alert(ajaxObj);
varnameTxt = document.getElementById("userName").value;
//向服务器发送一个异步请求,第一个参数为请求方式,第二个参数为URL,get方式需要在后面附加表单数据
//第三个参数固定为true,表示发出的是异步请求
ajaxObj.open("GET","/ajax/checkName?userName=" + nameTxt, true);
//当准备状态变化时,调用press函数,利用该函数处理响应信息
ajaxObj.onreadystatechange= press;
//设置请求消息体,并将请求发送给服务器。对于GET方式而言,消息体为空
ajaxObj.send(null);
}
用POST方式提交
function checkPost(){
createAJAX();
varnameTxt= document.getElementById("userName").value;
ajaxObj.open("post","/ajax/checkName",true);
//设置请求头,指定请求消息的内容格式为键值对方式的表单数据
ajaxObj.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
ajaxObj.onreadystatechange= press;
ajaxObj.send("userName="+nameTxt);
}
使用JQuery的方式来实现ajax:
function check(){
//向服务器发送post方式的异步请求。第一个参数为URL,第二个参数为表单数据的键值对
//第三个参数为回调函数,用于处理响应信息,参数为响应信息的消息体内容
$.post("/ajax/checkName","userName="+$("#userName").val(),
function(data){
if(data=="ok"){
$("#nameSpan").html("该用户已存在");
$("#nameSpan").css({"color":"red"});
}else{
$("#nameSpan").html("可以使用");
$("#nameSpan").css({"color":"green"});
}
});
}
同步提交和异步提交:
表单提交、超链接提交、浏览器访问servlet都属于同步提交,这时。响应信息会直接显示在客户端浏览器中,并且将客户端原来的内容全部清空。
当客户端发出AJAX请求,为异步提交。这时,响应信息会由客户端的js对象进行接收。完成JS处理后,再将处理结果显示在页面。不会清空客户端页面原来的内容。实现页面的局部刷新。由于异步提交,只更新页面一块儿内容,所以客户端和服务器之间交互的数据较少,速度较快。
<input type=”submit” onclick=”check()”>写法错误,不能给服务器同时提交两种提交方式
把字符串转换为JSON格式
方法一利用eval
如eval(“(”+jsonObj+”)”)
方法二,在方法里面添加参数
$.post(“/json/aaa”,”test=”+test,function(data){},”json”)
失血模型:一个类中只有属性及属性的get/set方法,而没有逻辑处理方法
贫血模型:一个类中除了有属性外,另外提供处理本类中属性的方法,但是不涉及业务和持久化。
充血模型:一个类中除了有属性外,另外提供处理和保存属性的方法,但不涉及业务方法。(dao)
涨血模型:一个类中除了有属性外,另外提供处理、保存和该类相关的业务方法。(dao以及service)
将对象转换为JSON格式的字符串:
JSON.stringify(OBJ);
泛型:在一个类中使用<T> 可以给该类定义泛型。如果产生该类的对象时,可以指定T的类型。那么在该类的方法中,凡事引用T的地方,要求必须和定义该类对象时指定的类型一致。
ps=con.prepareStatement("insertinto t_order(o_name,o_address,o_tel)"
+"values(?,?,?)",PreparedStatement.RETURN_GENERATED_KEYS);
PreparedStatement.RETURN_GENERATED_KEYS
会将新增记录的自动增长列,放入结果集
//得到自动增长列的值
set=ps.getGeneratedKeys();
if(set.next()){
return set.getInt(1);
}
- Java Web笔记三
- Java Web学习笔记(三)
- Java Web笔记(三)
- 《java web 学习笔记三》:CSS
- Java Web学习笔记(三)MVC 包命名规范
- 深入分析java web 技术内幕_笔记_三
- Java web 开发笔记 第五章 Servlet编程三
- Java笔记--Web前端知识汇总之三 JavaScript
- java web QQ(三)
- java web(三)
- Java web之三
- 分布式计算学习笔记之三:Web编程方式与 Java Web编程基础
- Java for Web学习笔记(三三):自定义tag(1)篇外:Method和Function
- java Web笔记
- Java web 学习笔记
- java web 学习笔记
- Java Web学习笔记
- java web笔记
- 安全总结
- VMware Workstation 12.1.1安装Centos7图文版(多图、详细)
- html5 audio音频播放全解析
- jsp简单的计算器如何在本页显示数据
- 起点网络备用列表
- Java Web笔记三
- 设计模式之模式分类
- Python学习(1):基本数据类型
- HTML全面深入学习-select的optgroup分组
- 漫步微积分五——速度和变化率
- 关于搜索栏取消第一响应(取消焦点), 取消按钮不隐藏的解决
- 深入理解Java的接口和抽象类
- 用man命令查看内核函数
- Windows上Navicat工具远程连接PostgreSQL数据库