datagrid中datetime字段的异常显示:

使用过easyui datagrid的应该都知道,如果数据库中的字段是datetime类型,绑定在datagrid显式的时候会不正常显示,一般需要借助于formatter来格式化时间格式

                  {
title: '活动开始时间', field: 'BeginTime', width: , editor: {
type: 'datetimebox', options: { required: true },
formatter: function (v) {
return Common.DateTimeFormatter(v);
}
}
}

Common.DateTimeFormatter的具体实现如下:

var Common = {

    //EasyUI用DataGrid用日期格式化
TimeFormatter: function (value, rec, index) {
if (value == undefined) {
return "";
}
/*json格式时间转js时间格式*/
value = value.substr(1, value.length - 2);
var obj = eval('(' + "{Date: new " + value + "}" + ')');
var dateValue = obj["Date"];
if (dateValue.getFullYear() < 1900) {
return "";
}
var val = dateValue.pattern("yyyy-MM-dd HH:mm");
return val;
},
DateTimeFormatter: function (value, rec, index) { if (value == null || value == '') {
return '';
}
var dt;
if (value instanceof Date) {
dt = value;
}
else {
dt = new Date(value);
if (isNaN(dt)) {
value = value.replace(/\/Date\((-?\d+)\)\//, '$1'); //标红的这段是关键代码,将那个长字符串的日期值转换成正常的JS日期格式
dt = new Date();
dt.setTime(value);
}
}
return dt.pattern("yyyy-MM-dd HH:mm");
}, //EasyUI用DataGrid用日期格式化
DateFormatter: function (value, rec, index) {
if (value == undefined) {
return "";
}
/*json格式时间转js时间格式*/
value = value.substr(1, value.length - 2);
var obj = eval('(' + "{Date: new " + value + "}" + ')');
var dateValue = obj["Date"];
if (dateValue.getFullYear() < 1900) {
return "";
} return dateValue.pattern("yyyy-MM-dd");
}
};
Date.prototype.pattern = function (fmt) {
var o = {
"M+": this.getMonth() + 1, //月份
"d+": this.getDate(), //日
"h+": this.getHours() % 12 == 0 ? 12 : this.getHours() % 12, //小时
"H+": this.getHours(), //小时
"m+": this.getMinutes(), //分
"s+": this.getSeconds(), //秒
"q+": Math.floor((this.getMonth() + 3) / 3), //季度
"S": this.getMilliseconds() //毫秒
};
var week = {
"0": "/u65e5",
"1": "/u4e00",
"2": "/u4e8c",
"3": "/u4e09",
"4": "/u56db",
"5": "/u4e94",
"6": "/u516d"
};
if (/(y+)/.test(fmt)) {
fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
}
if (/(E+)/.test(fmt)) {
fmt = fmt.replace(RegExp.$1, ((RegExp.$1.length > 1) ? (RegExp.$1.length > 2 ? "/u661f/u671f" : "/u5468") : "") + week[this.getDay() + ""]);
}
for (var k in o) {
if (new RegExp("(" + k + ")").test(fmt)) {
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
}
}
return fmt;
}

看着这么多js还是很繁琐的,我这里采用一个小技巧,就是把数据库里的datetime格式的字段类型转化为字符串格式 值不变,但是免去了前端格式化的过程

 { title: '活动开始时间', field: 'BeginTimeStr', width: 300, editor: { type: 'datetimebox', options: { required: true } } }

具体 datetime类型的转化可以在数据库层面或者C#代码层面实现;我这里是在数据库层面进行的转化,然后直接指定的字符串类型的BeginTimeStr作为绑定字段

SELECT
ID,ActivityItemID,Created,CONVERT(varchar, EndTime , 20) EndTimeStr,
CONVERT(varchar, BeginTime , 20) BeginTimeStr
FROM dbo.ActivityItemIDInfo

datagrid   RowEdit:

第一步:指定editor

 columns: [[
{
title: '链接ID', field: 'ActivityItemID', width: 200, editor: {
type: 'numberbox', options: { required: true }
}
},
{ title: '活动开始时间', field: 'BeginTimeStr', width: 300, editor: { type: 'datetimebox', options: { required: true } } },
{
title: '活动结束时间', field: 'EndTimeStr', width: 300, editor: { type: 'datetimebox', options: { required: true } }
}
]]

第二步定义相应的操作方法:

var editIndex = undefined;
function endEditing() {
if (editIndex == undefined) { return true }
if ($('#ActivityItemIDInfolist').datagrid('validateRow', editIndex)) {
var ed = $('#ActivityItemIDInfolist').datagrid('getEditor', { index: editIndex, Field: 'ActivityItemID' }); $('#ActivityItemIDInfolist').datagrid('endEdit', editIndex);
editIndex = undefined;
return true;
} else {
return false;
}
}
function onClickRow(index) {
if (editIndex != index) {
if (endEditing()) {
$('#ActivityItemIDInfolist').datagrid('selectRow', index).datagrid('beginEdit', index);
editIndex = index;
} else {
$('#ActivityItemIDInfolist').datagrid('selectRow', editIndex);
}
}
}
function append() {
if (endEditing()) {
$('#ActivityItemIDInfolist').datagrid('appendRow', { ActivityItemID: '0' });
editIndex = $('#ActivityItemIDInfolist').datagrid('getRows').length - 1;
$('#ActivityItemIDInfolist').datagrid('selectRow', editIndex).datagrid('beginEdit', editIndex);
}
}
function removeit() { if (editIndex == undefined) { return; }
$('#ActivityItemIDInfolist').datagrid('cancelEdit', editIndex).datagrid('deleteRow', editIndex);
editIndex = undefined;
}
function accept() {
if (endEditing()) {
$('#ActivityItemIDInfolist').datagrid('acceptChanges');
}
}
function reject() {
$('#ActivityItemIDInfolist').datagrid('rejectChanges');
editIndex = undefined;
}
function getChanges() {
var rows = $('#ActivityItemIDInfolist').datagrid('getChanges');
alert(rows.length + ' rows are changed!');
}

第三步: 指定编辑行索引的时机,这里把时机和行单击事件关联

aaarticlea/png;base64,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" alt="" />

第四步:检测datagrid的变化,并把变化通过ajax的方式提交到后台处理

function SaveDataToServer() {
endEditing();
var rows = $('#ActivityItemIDInfolist').datagrid('getChanges');
if (rows.length > 0) { var inserted = $('#ActivityItemIDInfolist').datagrid('getChanges', "inserted");
var deleted = $('#ActivityItemIDInfolist').datagrid('getChanges', "deleted");
var updated = $('#ActivityItemIDInfolist').datagrid('getChanges', "updated");
var effectRow = new Object();
if (inserted.length) {
effectRow["inserted"] = JSON.stringify(inserted);
}
if (deleted.length) {
effectRow["deleted"] = JSON.stringify(deleted);
}
if (updated.length) {
effectRow["updated"] = JSON.stringify(updated);
}
$.ajaxtext('/ShopActivitys/SaveShopActivityItemsData', effectRow, function (data) {
if (data == 0) {
$.messager.alert('保存', "保存成功", 'info');
mygrid.databind();
} else {
alert("保存失败,请重试");
}
});
}
else {
alert("没有检测到任何修改"); return;
}
}

第五步:后台获取到前端Post过来的数据进行入库等相关操作

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAA8MAAAI3CAIAAAAwYx7aAAAgAElEQVR4nO3dXZajuLYuUHeiWlGdPF2oNuwGVL/24xnn4b5xHyLTSSBpsRA/RsScg5EDy0ISBNhfKrDjNQEAANu9Pj0AAAAY0kVJ+vXbNd0dZdBhAwBwgeuS9Hv973/+/VoW63u82zmktQVJGgCA0geS9DRN87DbWo8L42p9Ybq1lSQNAEBJkl7vSJIGAKB0lyRdvT0jX1htc1F/MYDqTSbVm0MkaQAASh9L0qtpOCisbpKP15tmxMvBAwDAdJ856XI9KFzNx5mO4maDwQMAwPRjk3S1RJIGACDvJyZpd3cAALDf7b5PunXfRfVDhOVN0mXXrS4yHZWDBwCAL0P+jcPD//ZKi79xCABAy3gZ8aQ/ZAgAAJuMl6QBAOAOJGkAAOghSQMAQA9JGgAAekjScKL3F7/4BhgAeJ67vLu/XlM1aXyVt57a2eOxXjMntXlU4zsbyW/e3dHru75GNvVyUvvBQwBgdDd6aw9ixgcTSLLreUg6KjBV27wySZ+R/Da1WVY+fEibDuzW3iVpAHi2G721PyZJH9d1pc39Hb2nt/sGcEjv3ZXPS9KZxncOfmsLAMDNnfu+/r43Y36HRrxevZdjURJUC+4GCTZ/P2yNJ5N/WslpfvNAeatG9amgzdZtHq3WWm22Nl+MbbF5XBLsXavN1U3izTv2vawcd7e192prcSEAMKjT39cXgXVrYfXhap1c8F0+zIxkrc0oCG4tbLVZbrWpzXdsjcdZjiQYYeapTMlRm8/3seMo5Q/IpsG3CgGAQT0zSW8dWNB7R/JZnTEtawZTnmXNPYXleMoBby3fGYXfhVtz87ukPHTVJP2unB98/kDFLa+2AACMSJJe6X1nkg5ybSaiZdo5trC1I3H5nii8c/PVBvMTyZv+QxLXXK0MADzAM5N0Jq4cm6S3zgqvPvvxwsX63OFJulW+tcF4Tjre903xuuPZagUAYGhXJOlX7UN7r+LzfNWaZbVW4bw8P6RF1/MKi/prbS5vMCjLV1NXWWdRWH3Yt3nc8qKR1d0p9yiumQmd+c1bh2W+p/EBae14+WzQe+aYTADAg1w6J82VBsptAw11q3lq/+xIAIDDnfvunpwk5nCtqda7GWWcAAAlCQYAAHpI0gAA0EOSBgCAHpI0AAD0uC5J+2AZAABPcmmSvqwvAAA4myQNAAA9JGkAAOghSQMAQI+L0q0YDQDAw5iTBgCAHpI0AAD0kKQBAKCHJA0AAD38jUMAAOgh2gIAQA9JGgAAekjSAADQQ5IGAIAekjQAAPSQpAEAoMfASfrHfqXe67dPDwQA4Ed7fhp7WOCcB2hhGgDgg54fxR6WNiVpAICbGDKKvV6/lkXJfGVebVG53ezyron3w3l5tTC/edBv5raNIEkL1gAAVxo4ey1y4yJDt6q1W6sn1Gq0LQs3bb6HOWkAgJsYOIqVSXp1PWytPitcTavVbL26fghJGgDgJgaOYocn6Xz5sUn6qLs7AAC40sBR7LwkbU4aAIBVQ0ax8qOEi48Vtj6PuNZs/SODmcL85vu12hSsAQCuJHs9hyQNAHAl2QsAAHpI0gAA0EOSBgCAHpI0AAD0kKQBAKCHJA0AAD0kaQAA6DFqkvbVyQAAfNaogVSSBgDgs8YLpOWfCp+XlyvVPycOAAA7jRotq5m4zMqLqA0AAEcZNV22knSrUIwGAOBYowZMSRoAgM8aNWDmk3RQDgAA3QbOmNVPHFY/VihJAwBwuOdnTDEaAIAzPDlm+uY7AADOI2YCAEAPSRoAAHpI0gAA0EOSBgCAHmMn6dfr9fKJQgAAPmHsGCpGAwDwKWMnUUkaAIBPGTuJStIAAHzK2ElUkgYA4FMGTqJiNAAAHzR2GBWmAQD4lLGTqCQNAMCnjJ1EJWkAAD5l7CQqSQMA8CljJ1F/4xAAgE8RQwEAoIckDQAAPSRpAADoIUkDAEAPSRoAAHpI0rfj20hgdO+ruHo5u8YBHsMLeqeT3grnb7F///PvfDmlv+PsGeFAu/kkTrCTLIKyMA3wYF7N72WRpBf/3sHhI5k3eJ/d/AmcYCeRpAF+Dq/mN1J9c71PxPlyatDhenc7/qOfYPncLEwDPICX8mmaptfrz90a8/X3w7JCWafctrp5OIz1JP3+DfXiV9WLX163qk2N33RXf/e9qNm6GaD1e/NNQ6ru+Gpfwf0J+d/mv2aShWWdchpy9Q9wvgrtmusnWFmzWr/kBDv2BJOkAX4UL+W/LJJxUNh6WG5VbSccQ2pOOg4KZbBYFFZrJgur46mW54dU3amd48wM+MsiKJ9XuFN8gpWF839jTrBjTzBJGuBH8VL+Sys0t2b1gmB9QZKubl5Op1U3ac3UBpsne289zAfcuPdNQac1lViqzihXq5XrrcLMTPMmrROs+juTaXeSbtV0gi32pdxZSRrgR/FS/ksw/Zwp2RrEG2PoT9LJ2cFWSbz5au9Bg/khrfbeN2WYtDqR3DcnHfeYz9yrvzNZPHt4knaCZQY/SdIAP4yX8l/2390Rb54exnKbTNA541fVq78Kj0d12ZD6EtXbQHd3lOvB/9+m9OnnBDv8BNv6Kw4AxuXV/I/yd+Xlr87javMKrc3XxvCtavnr49bvlBe/bv67+E3613py81bvi9aCbcvNu4e084BMoU0fGSwLN23erXWClU+9C6dcknaCnXGCSdIAP4dX8xPFd4y0t/JD2WA1K5/KD+vx+k6w+FYfpw3AY3hBP9fWOWk2SU48n+TYiWdu6LMnGAD3JwQAAEAPSRoAAHpI0gAA0EOSBgCAHpL0ks+QAQCQITIuidEAAGRIjUuSNAAAGVLjkiQNAECG1LgkSZO1+MPxFovFYrFYDl/u7e7ju5gYzQbOFgA41e3fau8+vusJ02Q5VQDgVLd/q737+K4nSZPlVAGAU93+rfbu47ueJE2WUwUATnX7t9q7j+96kjRZThUAONXt32rvPr7r+RuHZDlPAOBUt3+rvfv44L5uf3kDwNhu/1Z79/HBfd3+8gaAsd3+rfbu44P7uv3lDQBju/1b7d3HB/d1+8sbAMZ2+7fau48P7uv2lzcAjO32b7V3Hx/c1z0u79dv75L//PXX+987K8dZ7guUxj3nq1wIrBr3nD/g9L79hXD38XHSKbR6Hp/6Un5Uy6/v9je4tft0xaVDR/Gttfjl9T9//RW/8n5VOOnVed5yMM6dx+ee+eMh53zaTc75e+aMay6ETc44nZzzxzY+f3hUjD7j1f740/vGP/Qvdx/fI93krMicx8lzveMl46hXmXk7V7/Ivl75Ts8b59ZX2MzrZvK1teMl+G4BotsPPee3dHqfc/5sz7gQVrtzzm+qNso5v9rI50/v278j3H18j3STs0KS3t93vtPzxra15Zsk6YAknW9nlFTxkQFc5hkXgiSdHMD+aucNoMOpSTogSZP1ev1ZFg/n58aiwmLbuFq1o3BIld89tX4bVS2Z1wx+mRUXBlfR8jdkubtQOnovd2Tb4NODnGZHcnWc5fDio7Ha9Zf3bRvz17jWvRzVksXv7KoNttpsVa5K7lF1w9WDWVaOf+6bfhyp0yYceeZ02tP7vMLqvrc2zwxy+vQ53zrb5ytl5fjqKFu44YVQ/REHx7NavijJbL7aZnWcydNpT+/VA7J188wgp4+e8+Xr85Q7P4Nz/vrTu76bkvRPtgjB1fV5YeYUWkTt1kp7SJX/2VcLVx8GW3V01O39GtTX+67CWtfBOKsvpq316h6t7mzL4rUyKFx9GGzV0VHVznOj+h62eGrT+Zl8Y/sR53yxHo/zg+f8l+o7/eKpTSdt/n+e+TZbuk+Yy37uzvlynEO8zm8957s7Cmw4NyTpH66ajzf9p6tM0uX6/iRdvf6n2sW8+koR1DzvFbZsPNn7pgOyPD4bk3TQY7A+Lzn8FTaYb1g8bE1glB2VNT+epFvr3ad3tfBHnPNbduSz5/yX/P8Ju8/5auFnL4RNP/dWd5kLwTmfHOfq+ryk+5zfH5qnxq9iyo4uPb0laaYwDceF8baL9czJtvoqE9QPaiZfd5KvsK9Cq+aUeOWKe996QL4925WkV4dUrXz2K2xQP6iZmZxr9R7Y+e4bHJ/4RM2f3qtNbWp/GuicT1TuGFK18s5z/ksySWeeDcrvdiH0/dw3VQhG6JzPDKla+ezX+fz0c/5KidsJbDi9JemfLEi9ceWgvNrOlhNy22tlMpQkA0ryFXaTne8ZuwobSbr6rjDKK+zqw+t/67f6Lru6ebnelyqCXra2uccnz/li/V1yt3P+S+ZM3vmb7mrhZy+EK3/u+c33cM5fkKTd3dHt7uMb2qv9KcBX7aOEQeE7ub2KjyTGHdVG9c2iMK5WrTkvr3a02nu36l4ke4+HFFd7F1X3PXko8h2919//LuqvHadpav8+rvxFXuuX2uVvwN/l1Y5We2+pHr3MPpY/yuBIxmdItc1qd/Hm1VHt0dqjTO/xkPbse/JQ5Dt6r796z/nylKue/Iua1RaqbVa7izevjipQPaSrOz6vPD+qrZ9mfDL0/aBbm/dpnRuZ3pO7GW9b9ls+bA0m39F7/dV7zk/haZ85FePX/+rmq222tA5UtWrc1MfdfXxkLPI3q/a/uH+1ckAjux31dnUHwXvYR8bzJE86hk8656vOuBAefLhanrTL3ed8Znr4YvF/OaobnD6mfe4+PpLyc9Ic9jbscJ/v2YHpMo+Pno+388f3A0+AH7jLpeT08N3d/od49/HBfd3+8gaAsd3+rfb1f//3/ywWS8cyvVw+FovFYrGcuNz/rfb13//+r8Vi6Viml8vHYrFYLJYTl/u/1d496Vsst13u/x9li8VisViGXu7/Vnv3u0/48sM/NnGI44+hHwoAnOr2b7V3H98DtL7UJf9VG8H3U8ZbnffJ5WTLF/wHoHokW4f34PHc/vIGgLHd/q327uN7pOIve6zWr9c7MMt2RMybJOnfHaUKJWkAGMnt32rvPr5H2nRWBOFPkp51lC88bki3v7wBYGy3f6u9+/iGVt5j8Cr+AHiikfrfLF3cX5H/m1iLmq/vgppB75nBvwrtrX4dnFftT6Mv1t8l1XbiIe11+8sbAMZ2+7fau4/vAWr3GGzafBlky/VqYX7zslpHR5nB5y1y82JlKo6hJA0AD3T7t9q7j+8BrknSwbzy4mFrSrvst6x5ZZIu1yVpAPhZbv9We/fxPcDFc9L5zePyas09STp/d8ckSQMA0wBvtXcf3wPsTNJT4paM297d0e2kJH3wmG9/eQPA2G7/Vnv38Q2t+vnCrZ84nHJ3aFRv2GjdyFGdEq7eGRIUrs4rlyNPqh6xxVOv759KDA7y9/wtSQPAOG7/Vnv38fHl1AngH+L4Y+iHAgCnuv1b7d3/mrnFcttlerl8LBaLxWI5cbn/W+3rv//9X4vF0rFML5ePxWKxWCwnLvd/q7170rdYbrvc/z/KFovFYrEMvdz/rfbud5/AfS0+2GixWCwWi+Xw5d7uPj4AALgnSfoKmS+MAwBgLOLdFcRoAIDnkfCuIEkDADyPhHcFSRoA4HkkvCtI0gAAzyPhnU6MBgB4JCHvCsI0AMDzSHhXkKQBAJ5HwruCJA0A8DwS3hUkaQCA55HwruBvHAIAPI94BwAAPSRpAADoIUkDAEAPSRoAAHpI0gAA0EOSBoDPe3/Fk+96goG4XPlj9dv6Xr+d3XvQ0cffY+5zlOLe45qZOsfKdHTSz33RZuYYdve12uzf//z7tVTrtMo7Ojqqzfzm3R29j0lwZPa32epia++Zmh3n8OLZj7/QAUmuVb5Jxp2jmoo32Rmeurc9pPHLjlL12fm/q+3c7T372PFUd/PUrLz61P6wGLRQjiHZ3VERtrvNsvLhB+r9sLuvoIWFrWFakoZBuVb55lYZUZI+tfcLkmWfAwfTOqMuTtLHThIHLbRidHKqdeeodrZ5ZZKOn8o3GMuH6Xv+/g3IcKGO5PX6tSzWy4fvkvlK2HLld/2tX7VXS+Y1gxsM4sI4SQfjmT8V9B5suFq5Nc6PH6XWUOPeF3VW9yi574ufQtBgXL5arXX0yoNcbbnvyAcHpDWecgxTI4217hkIblFYVC47mhpJOtlmXNJaL7uYz+PGm8SbV0cV35vRl6QXg9w6pLnqD2X1nN9aCHyQa3Iwi6wcFE65DD01ElW1cPVhsNX+jnb2vtNtj9LqaDe1ubNw+p6htw6p+jCuEx/YrVtl2sxUiPclmNdMJr+yhdZZUSbpfJubhlRtIS45avP5PsZt5ntfZOi+Pfqy9XKIC4G7caEOphWap8a0dK7NelZIzrG1alZTRVlzZ6J6N7tabafbHqXV0QaDz+9RdQeTexSUZw5dvrAcUqvl1R9B0GZrMPmR55P09D3SxS1Ue4+nfjOjOjZJT43Imy+pTnW3mt2TpDNbrT6bPCXy5zxwNy7U8Xy9upYxerFS1mk3uBKzgvpBzY53i+5ElR/Vok4rDibHeYejtLX31SSdbHZTmqyWtzrdk6STFTYl6eRg8uWbknS1vFUt6Kg6w9rR9bQvCu/cfLXBWyXp7jM5KATuxoU6njJJZ9bDBrMxa/VhR0DZmaTzve90w6MUpP9NSXp1bJv2fc+QghYyQXznbq4+273vi6fOyHP5jnbe3THti8JB+ZV3d6z2tT9Jbw3HHXMBwB24VodUvsa+Xt+WRUmiwcrU7OJhq1q15ry82lHcezyeVuFq7zvd8ygF4wwKV49ba486aq4ekMUeBUONC+N9bx3M6gHcejyDvhbNLu5PmGe7uHDRWrWw2tFivXzYarM6pPdT5YatmpnYmt+8ui/TLEkvdrlaEvcedBG38C7JnFfxs/FZBNyHaxLgG2HlVMGE+g83/4/iah3gJlyTANPUnmbmKK25cIBxec8AAIAekjQAAPSQpEfyP0P59NECADiXJD2SgeLpQEMFAOgjSY8kE09X6wQV3k9lZpe/yuNnAQAeTJIeyTu8vgNuGXYX69VnV+Nvq8HqYOKmAACeSpIeyTy8xv+W9atPVdufEnPSrZrVvgAAHkmSHsmeJF1G2+rsdTIBxy23CgEAnkSSHklHkm7F5SD+xnePVJttNQUA8GCS9EgW6bZ6Z0WQpOeNxO1X/y3rzHvJxGsAgCeRpEey8+6OavJetF/m8tU4bk4aAPiZJOmR7EnSi8Ky5epdHPFI4gYTOwQAMDBJeiQ7k3SrWlk/M3s9Xy9rStIAwONJ0iPJp+f3ehltg7BbzcfBSFrttAoBAJ5Ekh5JR5JOFlafWp29brXTKgQAeBJJeiTzpLu6PjWycjDNXL0bpNVO0EurEADgSSTpkQwUTwcaKgBAH0l6JAPF04GGCgDQR5IeSfVbNW7r00cLAOBckjQAAPSQpE/0er1eL0cYAOCZ5LxzSdIAAE8l551LkgYAeCo571ySNADAU8l555KkAQCeSs47nTANAPBIQt65xGgAgKeS884lSQMAPJWcdy5JGgDgqeS8c0nSAABPJeedyN84BAB4MDkPAAB6SNIAANBDkgYAgB6SNAAA9JCkAQCghyQ9Bt8BchIHFgDoJkacrhrVXq9fS66FZb175r/kt/5dMPjq4W0d83seTADg/mSID3gnt+4kfY2Ofm+SpH93lCqUpAGAPjLEB2xKbh/MeT8kSU/CNADQRYA4UXk7wbuk+9aO12+Lkql2c8VrZlMLr+/iAbQ6yuzRq9De6tcRmx+61vq7pNpOPCQAgCQB4nS12wk2bV6pXQ2yi6cWgTUonGopvNr1pjZbumPrIjcvVqbiwErSAMCpBIjTXZOkW+vB5PFqAq4m6XLzK5N0uS5JAwCfIkCc7oNJOvNsvpdMtfPu7pgkaQDgZgSI0+1M0lMi0eZvughmr7f22z0n3e2kJC1GAwB9ZIgTVT9fuPUTh1M4iTsvmVdY1Fy0Vt7a0ZoSzmxeHVVyd/Kqh3Hx1Ov7pxKDI/89f7sKAIAeMsQYpL2TOLAAQDcxAgAAekjSAADQQ5IGAIAekjQAAPSQpAEAoIckfYXMd8MBADAW8e4KYjQAwPNIeFeQpAEAnkfCu4IkDQDwPBLeFSRpAIDnkfBOJ0YDADySkHcFYRoA4HkkvCtI0gAAzyPhXUGSBgB4HgnvCpI0AMDzSHhX8DcOAQCeR7wDAIAekjQAAPSQpAEAoIckDQAAPSRpAADoIUkDwEjeXwblW6Hg41yE/HLPV+T5Fwi+fqtWu3ZcN+q9ZfW7F1/fZaqdMMx6j5k6Z5wMizYzx7C7r9Vm//7n36+lWqdV3tHRUW3mN+/u6H1MgiOzv81WF1t7z9TsOIcXz97z9Qd+Dlcgl+p40T/wbWPot5z9h6767Pzf1XbudgCPHU91N0/NyqtP7Q+LQQvlGJLdHRVhu9ssKx9+oN4Pu/sKWljYGqYlabgVVyCXkqS7HZ6k++rc6hgeOJjWaXZxkj52kjhooRWjk1OtO0e1s80rk3T8VL7BWD5M3/CXcvDDufxG8nr9Whbr5cN3yXyl3ezyF+Xvh+Vvt6u/68+08P1Wgnqbqx1NtcRT/RX8YvOg92DDfOVgx+M9uvLQtXYhs1Ot9QN3s9VgXL5arXX0FiXlVsHurPYVHJDWeMoxTI001rpnILhFYVG57GhqJOlkm3FJa73sYj6PG28Sb14dVXxvRl+SXgxy65Dmqj+U1XN+ayFwOFfaYBZZOSicEhn6e8uVt//FU4sgEhQuWmj1srXNagtxnaCpo4xy6JKDT7a5s3Bq7GZySNWHcZ34rNi6VabNTIV4X4J5zWTyK1tonRVlks63uWlI1RbikqM2n+9j3Ga+90WG7tujL1svh7gQuIbLbzCt0Dz9zs1BhbWWs2E0mHJbjXHVAFFuvjM8VcfZ2na/UQ5d9+Bbha3B79nNVnm5eVBztbAcUqvleMDljgc/jo6R55P09D3SxS1Ue4+nfjOjOjZJT43Imy+pTnW3mt2TpDNbrT6bv+oz1YDLuPzG8/WaWcboxUpZZ63Z7ETg6rNBeccbQ3d4Sm5bbtJKfsEmrYe3OnSZvjYl6WSzm3azWt7qdE+STlbY+dPcue+bknS1vFUt6Kg6w9rR9bQvCu/cfLXBWyXp7jM5KASu4fIbT5mkM+uJZg9IVB3BYlObyWY3DWm/+x+64L8Emwa/OuD9u5kcUtBCJojv3M3VZ7v3ffHUGXku39HOuzumfVE4KL/y7o7VvvYn6a3huGOCADiPK3BI5Svn6/VtWZSstbacgp2vvx8ualZbqLZZ7S7ePB5VObagcLX3PcY6dMH4g8LV8WQGn6xZjjzeo2CocWG8762DWT2AW49n0Nei2cX9CfNsFxcuWqsWVjtarJcPW21Wh/R+qtywVTMTW/ObV/dlmiXpxS5XS+Legy7iFt4lmfMqfjY+i4CzudIAOgkrpwom1H+4+X8UV+sAp3KlAWwTzFJziNZcOMDdeCcAAIAekjQAAPSQpEfyP0P59NECADiXJD2SgeLpQEMFAOgjSY9kEU+rabUsfJfMn8psu5qGg6loSRoAeDxJeiTznLoIr8E9FYsKwQ0YyaQ+77QcWLAtAMCTSNIjCeLp6lOZsFum87gvSRoA+Mkk6ZEE92lkkvS8ZjwnHdRZVHN3BwDwY0nSIwkCdPWejTjjBvdyLDJ3axjmpAGAn0ySHsl8qrh6J0YwhRzMH8+rLTapPrXoNF4BAHgqSXok+ewbbBW0vJqPy3J3dwAAP5YkPZJWhJ1ySTqYkJ7XXE3Dwf0eQQkAwMNI0iPZOSdd1o+7WK1jThoA+Mkk6ZEscmrr33Kr97NHzUkHmT7eFgDgMSTpkazex1wG3NYcc5x9gxxcTeGSNADwA0nSI1mE3XIeOs6vwZx0NQqvTmC7uwMA+Mkk6ZEMFE8HGioAQB9JeiQDxdOBhgoA0EeSHknrhop7+vTRAgA4lyQNAAA9JOkTvV6v18sRBgB4JjnvXJI0AMBTyXnnkqQBAJ5KzjuXJA0A8FRy3rkkaQCAp5LzTidMAwA8kpB3LjEaAOCp5LxzSdIAAE8l551LkgYAeCo571ySNADAU8l5J/I3DgEAHkzOAwCAHpI0AAD0kKQBAKCHJA0AAD0kaQAA6CFJj8F3gOznGAIAx5ItTlfNb6/XryXXwq4f0xlfxpds84LwWj2SrcMrTAMABxIsPuAd565J0pkWOrq4SZL+3VGqUJIGAA4kWHzApjh3SPiTpGeFznkA4BhSxYnKewzeJX23dszvqXivv75bbFuWL0oym6+2mR98ZvP3wZkfpdb6u6TaTjwkAIA9pIrT1e4x2LT5MsiW6zsLy162bp4cfN4iNy9WpuIYStIAwPWkitPdKkm/H5YT1WW/5fzxlUm6XJekAYBbkSpOd7cknYzF1cS5J0nn7+6YJGkAYARSxel2JumpNxPf4e6ObiclaTEaADiQYHGi6ucLt37icGrfm/Ge2W1N9Lbu0KjWDzZfbTM58qTqEVs89fr+qcTgIH/P3054AOAwgsUY1u6F8HNc5ygBAMeSLYaXnB4GAOBY4hcAAPSQpAEAoIckDQAAPSRpAADoIUlfwScCAQCeR7y7ghgNAPA8Et4VJGkAgOeR8K4gSQMAPI+EdwVJGgDgeSS804nRAACPJORdQZgGAHgeCe8KkjQAwPNIeFeQpAEAnkfCu4IkDQDwPBLeFfyNQwCA5xHvAACghyQNAAA9JGkAAOghSQMAQA9JGgAAekjSAPB576948l1PMBCXKz3O+F6/eZuv36rVju33PGcfpaBCcADLaseOMOgxU+eMn/uizcwx7O5rtdm///n3a6nWaZV3dHRUm/nNuzt6H5PgyOxvs9XF1t4zNTvO4cWzA73QwQ/nWqXT6gt9xzvBge8lN3kfuuAoVZ+d/7vazk2O1dux46nu5qlZefWp/WExaKEcQ7K7oyJsd5tl5cMP1Pthd19BCwtbw7QkDYNyrdJJks64Pkn31bnJ4fpy4GBaZ9TFSfrYSeKghVaMTk617hzVzliM17UAABAOSURBVDavTNLxU/kGY/kwPfrv3+Anc6GO5PX6tSzWy4fvkvlKo83lPRXvleqv2qvli5LM5qttTrUYVNYpNw96DzaMK9/5KLUG3NrZap1gnPk9moqDEzQYl69Wax298iBXW+478sEBaY2nHMPUSGOtewaCWxQWlcuOpkaSTrYZl7TWyy7m87jxJvHm1VHF92b0JenFILcOaa76Q1k957cWAh/kmhzMIisHhdNahp5VqySqnYXT2rvF6ubVFuI6ce873fYorY72pMEHe7TnB1c+jOvEB3brVpk2MxXifQnmNZPJr2yhdVaUSTrf5qYhVVuIS47afL6PcZv53hcZum+Pvmy9HOJC4G5cqINphebpd24OKrTb3BueprUpz0Wdec2dierd7Gq1nW57lFZHu3XwZe9T7SAHNTNDWjSSqblaWA6p1fLqjyBoszWY/MjzSXr6HuniFqq9x1O/mVEdm6SnRuTNl1SnulvN7knSma1Wn82/iGWqATfkQh3P16trGaMXK2WddoOHTazmA0rcTrJ+UJ6Mm604mBznHY7S6mi7B983jHx5q9M9STpZYVOSTg4mX74pSVfLW9WCjqozrB1dT/ui8M7NVxu8VZLuPpODQuBuXKjjKZN0Zj1scFdGXA2OHR21WojrbI2bm9zwKAXpf1OS7ov+W4988gfXaiETxHfu5uqz3fu+eOqMPJfvaOfdHdO+KByUX3l3x2pf+5P01nCcuQqAG3KtDql8jX29vi2LkkSDy6nZxcOgZqvwXV7dPN973EtrnNXed7rnUQrGGRSuHrdyhJlxBjuYKa/WzBfG+946mNUDuPV4Bn0tml3cnzDPdnHhorVqYbWjxXr5sNVmdUjvp8oNWzUzsTW/eXVfplmSXuxytSTuPegibuFdkjmv4mfjswi4D9ckdV6vMxylR/JjPVUwof7Dzf+juFoHuAnXJBXBdB1vjtLD+IGerTUXDjAu7xkAANBDkgYAgB6S9Ej+ZyifPloAAOeSpEcyUDwdaKgAAH0k6ZF0x9PqhmXhomS1u2AqWpIGAB5Pkh7JVzzddFtF+VRw90UmSS+aWtSUpAGAn0OSHklyarmjkfdT1aDcakGSBgB+Mkl6JPOcmpmQnr4n2jgfT0UOXp26DgYgSQMAjydJj6SaU1vri8Jq/K02vtgkSOfmpAGAn0ySHsnWOenqs6v5uKyzeGrRVLwCAPBUkvRI+uakq3WqE9Kr+bgsd3cHAPBjSdIj2TonXdac2nPS5VOZXJ4vAQB4GEl6JKtz0qsbTmGSTrZsThoAYJKkx1KNuXFmLeehD5mTbt3vEZQAADyMJD2SMr9mYnS8Um08aLZ1D8lqCQDAw0jSI3nPGS/uo8jcKj2FWTlzg3Vcwd0dAMBPI0mPZKB4OtBQAQD6SNIjGSieDjRUAIA+kvRIWjdU3NOnjxYAwLkkaQAA6CFJn+j1er1ejjAAwDPJeeeSpAEAnkrOO5ckDQDwVHLeuSRpAICnkvPOJUkDADyVnHc6YRoA4JGEvHOJ0QAATyXnnUuSBgB4KjnvXJI0AMBTyXnnkqQBAJ5KzjuRv3EIAPBgch4AAPSQpAEAoIckDQAAPSRpAADoIUkDAEAPSXoMD/4OkAfvGgDwbELM6apB8fX6teRaeM6P6fXbovBT4wEA6CbBfMA7N/60JD3fkdY6AMAoJJgP2JQbn5Qyg/T8pN0EAH4I8eVE5S0c75I9t3aUN0i8H87Lq4X5zasjWWgVZvZFkgYARie+nK6MiHvmpIMbJFqZu3vzw0nSAMCTiC+nOzxJVyeAq0m0mq1X188jSQMATyK+nO68OenV8mOTtLs7AADmxJfT7UzSUy7+Dj0nLUYDACOSYE5U/Xzh1k8cTu0bPMqS1cL85idpDensfgEADifBjOHBWfPBuwYAPJsQAwAAPSRpAADoIUkDAEAPSRoAAHpI0gAA0EOS5uHe3w3iS0IAgGPJFmxz+JdPn/pV1r64GgA4j2DBBuf9YcJka1s7laQBgPMIFmSdGkPPSNLJv6AOANBHqhhP/m+DL0pe31XbjPtdHVLQUdB7tfH9g88nafEaAOggQAymen/FGYVx18khzf+NOwoexsPLtxnvBQDAVlLFeKqTstVq5XqrMJgtjnuJO9qTpKtDCqauOw4LAMAeUsWoVieS++akkz0mOzpkTjou3xr9JWkA4ChSxWAuu7tj9c7jTJufvbtjtRcAgD0Ei8EEdzJkCvObV5N0sqP3+vvf+UowpGp5dQCrQ3o/FTxcLQcACAgQP8tnI+NHeq/OiLfqAADkCRA/SDB3+/jeAQAOJ9YAAEAPSRoAAHpI0gAA0EOSBgCAHpL0Lz4MBwDAJrLjH5I0AAB5suMfkjQAAHmy4x+SNAAAebLjH5I0AAB5suM3wjQAAEmC4x9iNAAAebLjH5I0AAB5suMfkjQAAHmy4x+SNAAAebLjL/7GIQAAm8iOAADQQ5IGAIAekjQAAPSQpAEAoIckDQAAPYZM0r5nAwCAjxs1j0rSAAB81qh5VJIGAOCzRs2jkjQAAJ81ah6VpAEA+KyB86gwDQDAB40aRsVoAAA+a9Q8KkkDAPBZo+ZRSRoAgM8aNY9K0gAAfNaQedTfOAQA4OPkUQAA6CFJAwBAD0kaAAB6SNIAANBDkgYAgB6S9C6+QmRyEACAn0oGmqZper2mjjT4TpB///PvYjl4fDmf6ncSpgGAH+n5ASiZ8fYk6el7ij070X4wMbdI0gDAD/T8AHRSkl5kxyvT7Q2T9CRMAwA/z6jp5+t+jMVdGYuSeZ1FzCvLv1byt3m0kvR85Wu9vOWjeh/IoqR6u0jrHpLWXSXVzecrq/s4/3OS7/VFefWAAAA83pDpZ5Geg8KpNtnc2rzaVHsMyyRdDbiLldZ631YLi/JWm9X2S/MdnIfp8tlWCQDAsw2ZfoLMVp2ozmweb1KrvzIn/X4YBNxFtXIKubrVziS92s6X13eL8mr9oDUAgOcZMv20Mtvq/HSw+VFJeiGfpOPCjyTpVrkkDQAwPSBJH3h3R7BJYxgr391xz7s7Vtv5sunuDjEaAPiBRg1Aq58jLD+JGGxefZgYQ/R90uX6e8PqBwSTH0ycP1WtmfkUY7WR6g6Wnzicf+iwPBQAAD+HALTLqQky8/UadyBGAwA/kwx0U63ZaAAAbkKSBgCAHpI0AAD0kKQBAKCHJA0AAD3GTtKtvxICAABnGzuGitEAAHzK2ElUkgYA4FPGTqKSNAAAnzJ2EpWkAQD4lIGTqBgNAMAHjR1GhWkAAD5l7CQqSQMA8CljJ1FJGgCATxk7iUrSAAB8ythJ1N84BADgU8RQAADoIUkDAEAPSRoAAHpI0gAA0EOSBgCAHpI0AAD0kKQBAKCHJP1N9dupfWU1AAAlGfEbSRoAgCQZ8Ztkkn79tiiZvv/ZxWphfvNgSAAAfJyUNk2zaLtq+h5tq2m4bHlRkt8cAIDbEt2+ycxJl9k6v+0UJum+MQMA8BHS2zfJJN297SRJAwA8hfT2zdYkbU4aAODHkt56tD4ymCnMb/5+6pydAABgFynt7iRpAIB7ktIAAKCHJA0AAD0kaQAA6CFJAwBAD0kaRvKfv/46tvK7zn/++mu+BJU3jQEAHkyS5pv5V4WITTf0/qGspt5pe5Je3TBzSjht9ntfhslvqQfgU7wiT9M0/f3Pv1/Lpwfyx6twTafv9SAP7QxJ+c27O0oGzZ1ttrrY2vummouVqThKi97LJWgzHnarZjmYW8XoTdfR/itu/6Wa+aOqwjTATXg5/uVWMfrL9X8B8dgkfUac2nlvw/4hlbF1Z19BC8nK8fxx3Nqm/2zMT4mjbv+44MT+6mL+b2YwH/z7o5I0wEC8HP9y8yR9n+7yUelHJen4qXyDcc3988etmtW59lbvm4Ydu+wkz3TUqnPllZjPzcI0wB14Lf6llaSrN368C+flceGiZL7SUr1X8v175/kvoKuF74erm5e9BKpJOrjtYRG/gpI4zFXbXN0k3rw6quS9ENUugqfmg9w6pKl92KeG/P8iypnmsq9qyab57JbkWbc4kxencV9Krm5bPqze7xFchvnLLTOAQwoBOI+X3V+qoXaRgFsrq4XlemYKPHivbcWCRUlrfc97cCtmxetlC5lNMnHwjM1bgXLP4BcZes8eLSL46vxxtZdF5fj/JJlhb/KqCSqX6+XKao+rbc7HFmzbqrbaWmbwQjPAWLwW/3JSkm5NVGeG1Hq7Tb6tBkk67i4WT/0uambKd0bhqRF58yXVqe5Ws3uSdGar7jYXhZnM3UrhZZuZYffJnHWtwB3n77ij1StiU4WtHUnSAI/htfiXfJKeGpPK1ZtA8n2VNkXea5J0MIMbV47L90ThnZtnwmhQ/4NJOr65Yms+Xp3nbvUejCEjmaRb5YMm6Wnjr4YkaYDb8lr8S/5WjdXMHbdZrVx9W90Uhfcn6fipL6tJum+uemeSbpVvbXDPnPRqX8cm6WCEq73H3SXT+cVz0uV6dVo3yNabpoqD9dWRb+1oUwurvQNwMS/H01TchpH5yGCmML959dbM6i+1g19zB42s1nw/Gxyl/7RvpQ1mMZMTmeXDoGYmtuY3r+7LNMup1VnbRUnce9BF3EJ1N8v4vinHt2puSudHJemk1lUwfb92ghN759WRqVlesNVhxx1N+5J0fAkDcDgvu5tt+qDhcEZ8J7441X3QnpnmVrW+dP5zjvkZXrWJ6mqFrf/jHfH6BRial90eyelnzhbfjQC3FcxJAzAQr+MAANBDkgYAgB6SNAAA9JCkAQCgx5BJ2id1AAD4uFHzqCQNAMBnjZpHJWkAAD5r1DwqSQMA8Fmj5lFJGgCAzxo4jwrTAAB80KhhVIwGAOCzRs2jkjQAAJ81ah6VpAEA+KxR86gkDQDAZw2ZR/2NQwAAPk4eBQCAHpI0AAD0kKQBAKCHJA0AAD0kaQAA6CFJAwBAD0kaAAB6PD9J++JpAADO8PyYKUkDAHCGIWPm6/UrH79X5uXvkvfDsjBYD1bWRvVa/PHF98N5ebUwv/n7qfUBAQBwplEDWZluF5G6ur5as2xzHrXD8bxa62XqjZPx6uYAANzBqCmtmo/LGehWzdX1zLPfa34zL69WDkpWNwcA4A5GDWpx6s3XPDBJ58slaQCABxg1qJ2Rj49K0uakAQB+giGDWvUujnl5tX6rhfnHCqsfWGw1UvRS/8hgpjC/+fupaCgAAJxPIBuSJA0A8HECGQAA9JCkAQCghyQNAAA9JGkAAOghSQMAQI/Tk7S/dw0AwCNdkXElaQAAnkeSBgCAHpI0AAD0kKQBAKDHRRlXmAYA4GHMSQMAQA9JGgAAekjSAADQQ5IGAIAe/sYhAAD0kHEBAKCHJA0AAD0kaQAA6CFJAwBAD0kaAAB6SNIAANDjmu+T/vPvnkaO/TI9X80HAMAewyTpQ1oAAICjnBtOvyaS58vO1gAA4CY+Nie9yNbv9TJwl0G8Vbma11ubl7k8PyQAAPj/Vkkd7WsCTdsAAAAASUVORK5CYII=" alt="" />

最新文章

  1. 基于Dubbo框架构建分布式服务(一)
  2. 在WebStorm环境中给nodejs项目中添加packages
  3. TabLayout 简单使用。
  4. zmNgFrameWork 架构升级ng1.5和md5静态资源缓存方案【angular1.x】
  5. struts2+Hibernate4+spring3+EasyUI环境搭建之四:引入hibernate4以及spring3与hibernate4整合
  6. php数组排序和分割字符串
  7. sqlserver 注释提取工具
  8. gettimeofday(struct timeval *tv, struct timezone *tz)函数
  9. angularJS在本机运行时的注意事项
  10. &lt;CentOS7&gt;如何设置hostname
  11. 第二个MapReduce
  12. redis的持久化之RDB的配置和原理
  13. python 简史
  14. 前端表单提交数据~php获取表单内容
  15. 从Java角度理解Angular之入门篇:npm, yarn, Angular CLI
  16. [Linux.NET]Nginx 泛解析配置请求映射到多端口实现二级域名访问
  17. Swift与JS的交互
  18. Win7系统下搭建FTP
  19. IntelliJ IDEA Maven引入
  20. #leetcode刷题之路20-有效的括号

热门文章

  1. vi/vim使用小结
  2. Python之路【番外篇】回顾&amp;类的静态字段
  3. Struts2 action的单例与多例
  4. WKWebView使用及注意点
  5. netstat miscellaneousness
  6. 采用ETL with RDBMS模式来实现ETL
  7. 更改vs自带的模板
  8. SQL存储过程来调用webservice
  9. 闲扯json取值,联想map取值。
  10. VPN添加静态路由表(指定程序或资源走VPN)