上次中的空白页问题,是转发跳转不过去,改为重定向方式后,跳转正常,我认为是刷新需要由浏览器发出请求,没办法由服务器直接跳转。就是重定向和转发的区别。

还有第二个问题,分页功能中,长时间的翻页后会导致页面一致加载,功能失效,原因是这句话的问题

原来的时候,后面的参数是我直接new ComboPooledDataSource();导致每分一次页,都会new一个对象,导致对象太多,服务器崩溃。我这次将ComboPooledDataSource对象写成静态,看下图

ComboPooledDataSource只有在类开始的时候创建的那一个,所以服务器相对较为稳定。

Ajax & Jquery

###Ajax

是什么?“Asynchronous Javascript And XML”(异步JavaScript和XML),这并不是新的技术,只是把原有的技术,整合到一起而已。

1.使用CSS和XHTML来表示。

2.使用DOM模型来交互和动态显示。

3.使用XMLHttpRequest来和服务器进行异步通信。

4.使用javascript来绑定调用。

有什么用?

网页如果想要刷新局部内容,那么需要重新载入整个网页,用户体验不是很好,就是为了解决局部刷新的问题,保持其他部分不动,只刷新某些地方。

###数据请求GET

1.创建对象

jquery 等于某文本的元素_数据

2.发送请求

jquery 等于某文本的元素_html_02

如果发送请求的同时,还想获取数据,那么代码如下

jquery 等于某文本的元素_ci_03

###数据请求POST

jquery 等于某文本的元素_html_04

jquery 等于某文本的元素_数据_05

###校验用户名是否可用

###1.搭建环境

(1)页面准备

jquery 等于某文本的元素_html_06

(2)数据库准备

Servlet代码

jquery 等于某文本的元素_html_07

Dao代码(此处注意在获取数据库中的数据数量时,一定是select count(*) from user ,要加上count,而且获取到的结果数量要用Long来接受,用long接受不了)

jquery 等于某文本的元素_数据_08

(3)jsp页面显示

jquery 等于某文本的元素_html_09

jquery 等于某文本的元素_数据_10

###JQuery

是什么?javaScript的代码框架。

有什么用?简化代码,提高效率

核心?write less do more ,写的更少,做的更多

###load

页面代码

在此处,需要注意的是,若将

<input type="button" id="aaa" value="使用JQuery执行load方法" onclick="load()">

换成

<a href="" οnclick="load()">使用JQuery执行load方法</a>,就不会接收到服务器返回回来的数据,原因是有两次刷新,先走onClick的方法,取到数据回来之后,赋值显示,接着走href=""的路径,但是这个属性没有给值,所以会把当前的页面重新再刷新一次。所以导致看不见值。

jquery 等于某文本的元素_ci_11

Servlet代码

jquery 等于某文本的元素_数据_12

###赋值显示

* val("aa");> 只能放那些标签带有value属性
           * html("aa"); ---写html代码
           * text("aa");

> 其实没有什么区别,如果想针对这分数据做html样式处理,那么只能用html()

###使用JQ实现get方法

jquery 等于某文本的元素_html_13

###使用JQ实现post方法

jquery 等于某文本的元素_ci_14

###使用JQ实现校验用户名

jquery 等于某文本的元素_ci_15

jquery 等于某文本的元素_ci_16

###实现百度搜索提示

搭建环境

1.定义首页

首页代码

jquery 等于某文本的元素_html_17

JS请求代码(最后list.jsp代码反馈给了div01中,所以jsp不一定只能显示在整个页面上,也能显示在div盒子中)

jquery 等于某文本的元素_html_18

2.定义数据库

Servlet代码(list.jsp反馈给了div盒子中)

jquery 等于某文本的元素_jquery 等于某文本的元素_19

提示框list.jsp代码

jquery 等于某文本的元素_数据_20

Dao代码(在数据库中寻找以name开头的关键词,返回一个数组中)

jquery 等于某文本的元素_ci_21

成果图

jquery 等于某文本的元素_数据_22

###使用JQ实现省市联动

1.准备页面

jquery 等于某文本的元素_jquery 等于某文本的元素_23

2.JS请求代码

(json方式)

jquery 等于某文本的元素_数据_24

(XML方式)

jquery 等于某文本的元素_jquery 等于某文本的元素_25

3.Servlet代码

(JSON方式,是将所有的数据做成键值对的形式)

键值对:{"name":"aaa" , "age":19}

jquery 等于某文本的元素_jquery 等于某文本的元素_26

(XStream方式,是将数据做成xml的形式,反映到jsp文件中)

<list>
               <city>
                   <id>1<id>
                   <pid>1</pid>
                   <cname>深圳</cname>
               </city>
               <city >
                   <id>2<id>
                   <pid>1</pid>
                   <cname>东莞</cname>
               </city>
           </list>

jquery 等于某文本的元素_数据_27

成果图

jquery 等于某文本的元素_数据_28

jquery 等于某文本的元素_ci_29

jquery 等于某文本的元素_ci_30

jquery 等于某文本的元素_ci_31