每日记载内容总结36
1.mysql复制表格(来源:http://www.2cto.com/database/201202/120259.html)
(1)复制表结构及数据到新表
CREATE TABLE 新表 SELECT * FROM 旧表
(2)只复制表结构到新表
CREATE TABLE 新表 SELECT * FROM 旧表 WHERE 1=2
(3)复制旧表的数据到新表(假设两个表结构一样)
INSERT INTO 新表 SELECT * FROM 旧表
(4)复制旧表的数据到新表(假设两个表结构不一样)
INSERT INTO 新表(字段1,字段2,.......) SELECT 字段1,字段2,...... FROM 旧表
(5) show create table 旧表;
这样会将旧表的创建命令列出。我们只需要将该命令拷贝出来,更改table的名字,就可以建立一个完全一样的表
2.hibernate Restrictions 设置时间起始点和结束点的查询
需要注意的就是 不能将数据库里面是datetime类型的数据直接和string类型的进行比较,需要将时间格式化之后,转化为java.sql.Date类型之后,进行比较
Restrictions.ge("insertDate",java.sql.Date.valueOf(getBeginDate());
Restrictions.le("insertDate", java.sql.Date.valueOf(getEndDate());
3.jquery ajax总结(大部分数据来自http://www.w3school.com.cn)
(1)jQuery $.get() 方法
$.get() 方法通过 HTTP GET 请求从服务器上请求数据。
语法:
$.get(URL,callback);
必需的 URL 参数规定您希望请求的 URL。
可选的 callback 参数是请求成功后所执行的函数名。
var url = "${ctx}/admin/getDataById.json?id="+id; $.get(url,function(data){ data=eval("("+data+")"); if(data.status = true || data.status == "true"){ //do soemthing }else{ //do soemthing } });
eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码。
eval() 函数使用的是 JavaScript 编译器,可解析 JSON 文本,然后生成 JavaScript 对象。
(2)jQuery $.post() 方法
$.post() 方法通过 HTTP POST 请求从服务器上请求数据。
语法:
$.post(URL,data,callback);
必需的 URL 参数规定您希望请求的 URL。
可选的 data 参数规定连同请求发送的数据。
可选的 callback 参数是请求成功后所执行的函数名。
var params = { id : id,type:0 }; $.post("${ctx}/admin/forum/deletePost.json", params, function( result) { result = eval("(" + result + ")"); if (result.status == "true" || result.status == true) { alert(result.msg); window.location.reload(); } });
比较 GET 与 POST
下面的表格比较了两种 HTTP 方法:GET 和 POST。
GET | POST | |
---|---|---|
后退按钮/刷新 | 无害 | 数据会被重新提交(浏览器应该告知用户数据会被重新提交)。 |
书签 | 可收藏为书签 | 不可收藏为书签 |
缓存 | 能被缓存 | 不能缓存 |
编码类型 | application/x-www-form-urlencoded | application/x-www-form-urlencoded 或 multipart/form-data。为二进制数据使用多重编码。 |
历史 | 参数保留在浏览器历史中。 | 参数不会保存在浏览器历史中。 |
对数据长度的限制 | 是的。当发送数据时,GET 方法向 URL 添加数据;URL 的长度是受限制的(URL 的最大长度是 2048 个字符)。 | 无限制。 |
对数据类型的限制 | 只允许 ASCII 字符。 | 没有限制。也允许二进制数据。 |
安全性 |
与 POST 相比,GET 的安全性较差,因为所发送的数据是 URL 的一部分。 在发送密码或其他敏感信息时绝不要使用 GET ! |
POST 比 GET 更安全,因为参数不会被保存在浏览器历史或 web 服务器日志中。 |
可见性 | 数据在 URL 中对所有人都是可见的。 | 数据不会显示在 URL 中。 |
(3)jQuery ajax - getJSON() 方法
定义和用法
通过 HTTP GET 请求载入 JSON 数据。
语法
jQuery.getJSON(url,data,success(data,status,xhr))
参数 | 描述 |
---|---|
url | 必需。规定将请求发送的哪个 URL。 |
data | 可选。规定连同请求发送到服务器的数据。 |
success(data,status,xhr) |
可选。规定当请求成功时运行的函数。 额外的参数:
|
详细说明
该函数是简写的 Ajax 函数,等价于:
$.ajax({ url: url, data: data, success: callback, dataType: json });
发送到服务器的数据可作为查询字符串附加到 URL 之后。如果 data 参数的值是对象(映射),那么在附加到 URL 之前将转换为字符串,并进行 URL 编码。
传递给 callback 的返回数据,可以是 JavaScript 对象,或以 JSON 结构定义的数组,并使用 $.parseJSON() 方法进行解析。
$.getJSON('${ctx}/gettypenobyproduct.do?productId='+product, function(data) {var items = []; $.each(data.data, function(key, val) { items.push('<li onclick="gettypenoandproduct(\''+product+'\',\''+val.id+'\',\''+val.model+'\');">' + val.model + '</li >'); }); $("#typeno").append(items.join('')); });
顺便说一下$.each()函数:
$.each()函数不同于JQuery对象的each()方法,它是一个全局函数,不操作JQuery对象,而是以一个数组或者对象作为第1个参数,以一个回调函数作为第2个参数。回调函数拥有两个参数:第1个为对象的成员或数组的索引,第2个为对应变量或内容。