From 67af83c26d0d90fdc6ef853cdda9e6e2c1c268e8 Mon Sep 17 00:00:00 2001 From: mikedream Date: Thu, 20 Apr 2017 23:25:30 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E4=BF=AE=E6=94=B9mysql=20=E5=AF=86?= =?UTF-8?q?=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/resources/conf/db.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/resources/conf/db.properties b/src/main/resources/conf/db.properties index 1e92088..120f9d6 100644 --- a/src/main/resources/conf/db.properties +++ b/src/main/resources/conf/db.properties @@ -3,6 +3,6 @@ db_type=mysql mysql.jdbcUrl =jdbc:mysql://127.0.0.1:3306/jfinal_cms?characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull mysql.user = root -mysql.password = 123456 +mysql.password = root mysql.driverClass = com.mysql.jdbc.Driver -- Gitee From 416b1dfc6e9e44da87db9967601cfb55cfb5960a Mon Sep 17 00:00:00 2001 From: mikedream Date: Fri, 21 Apr 2017 00:22:26 +0800 Subject: [PATCH 2/5] add ico test --- src/main/webapp/template/website/favicon.ico | Bin 0 -> 6518 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 src/main/webapp/template/website/favicon.ico diff --git a/src/main/webapp/template/website/favicon.ico b/src/main/webapp/template/website/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..113eb43d2380a85886bcc9b5fb622733d2322b8b GIT binary patch literal 6518 zcmeHLJx;@53^hnFcVJ@5gn9@DPQV>F0pbz}HdvVv2jB`t+@?$&x)nRks~%Q zB7L<#+wVQ=Yx+s9$cdcFVj*e^S)PepiAYgY`wNj=)C(v|0UGXW;4_Z;%)%%3`|NMSe{ysRiz1@?At{Yu; zpO%l_q5jeD^IX@fuAd3NThlU4(|-B*zTa)OKhamTtb6>t{&Qzq(E5jkkA0b_J}md} zerfg3y4IWRn$scQIIs+0ev_@sRoFFhCAh~&g>Tgbo!4Nj&jHhAnZs(qQ)ioE;ONq- z%L7}-&HZ>EdylWvXp8yxkNF}#wwe8r`pf@`x$1c z^Y%K``45`EJXhbn&3vkF^H(*0_MZX!YNFm|U7LAT`$-q(?{XH@{o!{xqJNmb{r>^; Nem;Tu1ditfegU0Lo#Frh literal 0 HcmV?d00001 -- Gitee From 78bf173188bae2833d5558da218853b2a82dd5fe Mon Sep 17 00:00:00 2001 From: mikedream Date: Fri, 21 Apr 2017 00:24:20 +0800 Subject: [PATCH 3/5] update sql --- sql/jfinal_cms20170421.sql | 1559 ++++++++++++++++++++++++++++++++++++ 1 file changed, 1559 insertions(+) create mode 100644 sql/jfinal_cms20170421.sql diff --git a/sql/jfinal_cms20170421.sql b/sql/jfinal_cms20170421.sql new file mode 100644 index 0000000..1f51d43 --- /dev/null +++ b/sql/jfinal_cms20170421.sql @@ -0,0 +1,1559 @@ +/* +Navicat MySQL Data Transfer + +Source Server : mysql +Source Server Version : 50554 +Source Host : 127.0.0.1:3306 +Source Database : jfinal_cms + +Target Server Type : MYSQL +Target Server Version : 50554 +File Encoding : 65001 + +Date: 2017-04-21 00:23:47 +*/ + +SET FOREIGN_KEY_CHECKS=0; + +-- ---------------------------- +-- Table structure for sys_config +-- ---------------------------- +DROP TABLE IF EXISTS `sys_config`; +CREATE TABLE `sys_config` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `name` varchar(128) NOT NULL COMMENT '名称', + `key` varchar(64) NOT NULL COMMENT '键', + `value` varchar(1000) NOT NULL COMMENT '值', + `code` varchar(64) DEFAULT NULL COMMENT '编码', + `type` int(11) NOT NULL DEFAULT '0' COMMENT '类型', + `sort` int(11) NOT NULL DEFAULT '10' COMMENT '排序号', + `update_time` varchar(64) DEFAULT NULL COMMENT '更新时间', + `update_id` int(11) DEFAULT '0' COMMENT '更新人', + `create_time` varchar(64) DEFAULT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=22 DEFAULT CHARSET=utf8 COMMENT='系统配置表'; + +-- ---------------------------- +-- Records of sys_config +-- ---------------------------- +INSERT INTO `sys_config` VALUES ('1', '系统参数', 'systemParam', '0', null, '0', '10', '2016-12-17 22:32:35', '1', '2016-12-17 22:32:35', '1'); +INSERT INTO `sys_config` VALUES ('2', 'API参数', 'apiParam', '0', null, '0', '11', '2016-12-17 22:33:41', '1', '2016-12-17 22:33:41', '1'); +INSERT INTO `sys_config` VALUES ('4', '版权', 'copyright', '©FLY的狐狸 版权所有', null, '1', '10', '2016-12-17 23:07:21', '1', '2016-12-17 23:07:21', '1'); +INSERT INTO `sys_config` VALUES ('5', 'API是否开启', 'API.FLAG', 'true', null, '2', '110', '2016-12-17 23:12:26', '1', '2016-12-17 23:12:26', '1'); +INSERT INTO `sys_config` VALUES ('6', 'ip黑名单,逗号分隔', 'API.IP.BLACK', '127.0.0.122,localhost22', null, '2', '111', '2016-12-17 23:16:29', '1', '2016-12-17 23:16:29', '1'); +INSERT INTO `sys_config` VALUES ('7', '支持的版本,逗号分隔', 'API.VERSIONS', '1.0.0,1.0.1', null, '2', '112', '2016-12-17 23:17:00', '1', '2016-12-17 23:17:00', '1'); +INSERT INTO `sys_config` VALUES ('8', '登陆验证是否开启', 'API.LOGIN.VALID', 'false', null, '2', '114', '2016-12-17 23:17:23', '1', '2016-12-17 23:17:23', '1'); +INSERT INTO `sys_config` VALUES ('9', '站点参数', 'siteParam', '0', null, '0', '12', '2016-12-31 16:27:12', '1', '2016-12-31 16:27:12', '1'); +INSERT INTO `sys_config` VALUES ('10', '多站点标示', 'SITE.MULTI.FLAG', 'false', null, '9', '211', '2016-12-31 16:28:02', '1', '2016-12-31 16:28:02', '1'); +INSERT INTO `sys_config` VALUES ('11', '站点根目录', 'SITE.TEMPLATE.PATH', '/template/', null, '9', '212', '2016-12-31 16:28:43', '1', '2016-12-31 16:28:43', '1'); +INSERT INTO `sys_config` VALUES ('12', 'Session站点列表', 'SITE.SESSION.SITES', 'sites', null, '9', '213', '2016-12-31 16:30:17', '1', '2016-12-31 16:30:17', '1'); +INSERT INTO `sys_config` VALUES ('13', 'Session站点', 'SITE.SESSION.SITE', 'site', null, '9', '214', '2016-12-31 16:30:38', '1', '2016-12-31 16:30:38', '1'); +INSERT INTO `sys_config` VALUES ('14', 'API参数加密是否开启', 'API.PARAM.ENCRYPT', 'false', null, '2', '115', '2017-03-17 23:17:23', '1', '2017-03-17 23:17:23', '1'); +INSERT INTO `sys_config` VALUES ('15', '文件备份参数', 'backupParam', '0', null, '0', '10', '2017-04-05 03:49:21', '1', '2017-04-05 03:49:21', '1'); +INSERT INTO `sys_config` VALUES ('16', '文件备份类型名称', 'backup.name', 'filemanger', null, '15', '10', '2017-04-05 03:50:12', '1', '2017-04-05 03:50:12', '1'); +INSERT INTO `sys_config` VALUES ('17', '文件系统备份路径', 'backup.filemanger.path', 'D:\\test', null, '15', '10', '2017-04-05 03:50:42', '1', '2017-04-05 03:50:42', '1'); +INSERT INTO `sys_config` VALUES ('18', '阿里云存储bucketname', 'backup.oss.bucketname', 'jflyfox', null, '15', '10', '2017-04-05 22:58:05', '1', '2017-04-05 22:58:05', '1'); +INSERT INTO `sys_config` VALUES ('19', '阿里云存储endpoint', 'backup.oss.endpoint', 'http://oss-cn-beijing.aliyuncs.com', null, '15', '10', '2017-04-05 22:59:01', '1', '2017-04-05 22:59:01', '1'); +INSERT INTO `sys_config` VALUES ('20', '阿里云存储ID', 'backup.oss.id', '', null, '15', '10', '2017-04-05 22:59:24', '1', '2017-04-05 22:59:24', '1'); +INSERT INTO `sys_config` VALUES ('21', '阿里云存储KEY', 'backup.oss.key', '', null, '15', '10', '2017-04-05 22:59:51', '1', '2017-04-05 22:59:51', '1'); + +-- ---------------------------- +-- Table structure for sys_department +-- ---------------------------- +DROP TABLE IF EXISTS `sys_department`; +CREATE TABLE `sys_department` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `parent_id` int(11) DEFAULT '0' COMMENT '上级机构', + `name` varchar(32) NOT NULL COMMENT '部门/11111', + `code` varchar(128) DEFAULT NULL COMMENT '机构编码', + `sort` int(11) DEFAULT '0' COMMENT '序号', + `linkman` varchar(64) DEFAULT NULL COMMENT '联系人', + `linkman_no` varchar(32) DEFAULT NULL COMMENT '联系人电话', + `remark` varchar(128) DEFAULT NULL COMMENT '机构描述', + `update_time` varchar(64) DEFAULT NULL COMMENT '更新时间', + `update_id` int(11) DEFAULT '0' COMMENT '更新者', + `create_time` varchar(64) DEFAULT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8 COMMENT='部门'; + +-- ---------------------------- +-- Records of sys_department +-- ---------------------------- +INSERT INTO `sys_department` VALUES ('1', '0', '系统承建单位', null, '99', 'system', '15888888888', null, '2016-06-06 06:06:06', '1', '2016-06-06 06:06:06', '1'); +INSERT INTO `sys_department` VALUES ('2', '0', '注册用户', null, '97', '无人', '15888888888', null, '2015-04-28 22:39:34', '1', '2015-04-28 22:39:34', '1'); +INSERT INTO `sys_department` VALUES ('3', '0', '第三方用户', null, '90', '无人', '15888888888', null, '2015-06-01 12:39:41', '1', '2015-06-01 12:39:41', '1'); +INSERT INTO `sys_department` VALUES ('4', '0', 'FLY的狐狸', 'ABC000', '100', null, null, null, '2016-07-31 18:12:30', '1', '2016-07-31 18:12:30', '1'); +INSERT INTO `sys_department` VALUES ('5', '4', '开发部', 'ABC001', '101', null, null, null, '2016-07-31 18:15:29', '1', '2016-07-31 18:15:29', '1'); +INSERT INTO `sys_department` VALUES ('6', '4', '财务部', 'ABC003', '103', null, null, null, '2016-07-31 18:16:06', '1', '2016-07-31 18:16:06', '1'); +INSERT INTO `sys_department` VALUES ('7', '4', '人事部', 'ABC004', '104', null, null, null, '2016-07-31 18:16:30', '1', '2016-07-31 18:16:30', '1'); +INSERT INTO `sys_department` VALUES ('8', '5', '测试部', 'ABC0011', '101', null, null, null, '2016-07-31 18:16:52', '1', '2016-07-31 18:16:52', '1'); + +-- ---------------------------- +-- Table structure for sys_dict +-- ---------------------------- +DROP TABLE IF EXISTS `sys_dict`; +CREATE TABLE `sys_dict` ( + `dict_id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', + `dict_name` varchar(256) NOT NULL COMMENT '名称', + `dict_type` varchar(64) NOT NULL COMMENT '类型', + `dict_remark` varchar(256) DEFAULT NULL COMMENT '备注', + PRIMARY KEY (`dict_id`), + UNIQUE KEY `UK_SYS_DICT_TYPE` (`dict_type`) +) ENGINE=InnoDB AUTO_INCREMENT=103 DEFAULT CHARSET=utf8 COMMENT='数据字典主表'; + +-- ---------------------------- +-- Records of sys_dict +-- ---------------------------- +INSERT INTO `sys_dict` VALUES ('1', '日志配置', 'systemLog', null); +INSERT INTO `sys_dict` VALUES ('2', '目录类型', 'articleType', null); +INSERT INTO `sys_dict` VALUES ('11', '目录类型', 'folderType', null); +INSERT INTO `sys_dict` VALUES ('100', '系统参数', 'systemParam', null); +INSERT INTO `sys_dict` VALUES ('101', '友情链接类型', 'friendlyLinkType', null); +INSERT INTO `sys_dict` VALUES ('102', '栏目类型', 'materialType', null); + +-- ---------------------------- +-- Table structure for sys_dict_detail +-- ---------------------------- +DROP TABLE IF EXISTS `sys_dict_detail`; +CREATE TABLE `sys_dict_detail` ( + `detail_id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', + `dict_type` varchar(64) NOT NULL COMMENT '数据字典类型', + `detail_name` varchar(256) DEFAULT NULL COMMENT '名称', + `detail_code` varchar(32) DEFAULT NULL COMMENT '代码', + `detail_sort` varchar(32) DEFAULT NULL COMMENT '排序号', + `detail_type` varchar(32) DEFAULT NULL COMMENT '类型', + `detail_state` varchar(32) DEFAULT NULL COMMENT '状态', + `detail_content` varchar(256) DEFAULT NULL COMMENT '内容', + `detail_remark` varchar(256) DEFAULT NULL COMMENT '备注', + `create_time` varchar(64) DEFAULT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者', + PRIMARY KEY (`detail_id`) +) ENGINE=InnoDB AUTO_INCREMENT=108 DEFAULT CHARSET=utf8 COMMENT='数据字典'; + +-- ---------------------------- +-- Records of sys_dict_detail +-- ---------------------------- +INSERT INTO `sys_dict_detail` VALUES ('1', 'folderType', '目录', '1', '1', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('2', 'folderType', 'a标签', '2', '2', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('3', 'folderType', 'a标签target', '3', '3', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('4', 'folderType', 'html标签', '4', '4', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('11', 'articleType', '正常', '1', '1', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('12', 'articleType', '预览', '2', '2', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('13', 'articleType', '程序', '3', '3', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('21', 'friendlyLinkType', '友情链接', null, '1', null, null, null, null, '2015-05-06 15:18:59', '1'); +INSERT INTO `sys_dict_detail` VALUES ('22', 'friendlyLinkType', '关于我们', null, '2', null, null, null, null, '2015-05-06 15:19:20', '1'); +INSERT INTO `sys_dict_detail` VALUES ('51', 'systemLog', 'sys_dict', '数据字典主表', '1', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('52', 'systemLog', 'sys_dict_detail', '数据字典', '2', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('53', 'systemLog', 'sys_menu', '菜单管理', '3', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('54', 'systemLog', 'sys_department', '组织机构', '4', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('55', 'systemLog', 'sys_user', '用户管理', '5', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('56', 'systemLog', 'sys_user_role', '用户角色授权', '6', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('57', 'systemLog', 'sys_role', '角色管理', '7', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('58', 'systemLog', 'sys_role_folder', '角色目录授权', '8', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('59', 'systemLog', 'sys_role_menu', '角色菜单授权', '9', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('60', 'systemLog', 'tb_folder', '目录管理', '10', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('61', 'systemLog', 'tb_article', '文章管理', '11', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('62', 'systemLog', 'tb_articlelike', '喜欢的文章管理', '12', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('63', 'systemLog', 'tb_comment', '评论管理', '13', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('64', 'systemLog', 'tb_tags', '标签管理', '14', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('65', 'systemLog', 'tb_contact', '联系人', '15', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('66', 'systemLog', 'tb_error', '错误管理', '16', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('67', 'systemLog', 'tb_friendlylink', '友情链接', '17', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('68', 'systemLog', 'tb_pageview', '访问量统计', '18', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('101', 'systemParam', '门头沟信息网', '1', '1', null, null, null, null, '2015-01-30', '1'); +INSERT INTO `sys_dict_detail` VALUES ('102', 'materialType', '文章', '1', '1', null, null, null, null, '2016-03-31 22:35:05', '1'); +INSERT INTO `sys_dict_detail` VALUES ('103', 'materialType', '图片', '2', '2', null, null, null, null, '2016-03-31 22:35:17', '1'); +INSERT INTO `sys_dict_detail` VALUES ('104', 'materialType', '视频', '3', '3', null, null, null, null, '2016-03-31 22:35:28', '1'); +INSERT INTO `sys_dict_detail` VALUES ('105', 'materialType', '其他', '9', '9', null, null, null, null, '2016-03-31 22:35:39', '1'); +INSERT INTO `sys_dict_detail` VALUES ('106', 'materialType', '栏目', '6', '6', null, null, null, null, '2016-03-31 23:46:27', '1'); +INSERT INTO `sys_dict_detail` VALUES ('107', 'systemLog', 'tb_site', '站点管理', '19', null, null, null, null, '2016-04-14 00:02:45', '1'); + +-- ---------------------------- +-- Table structure for sys_file_upload +-- ---------------------------- +DROP TABLE IF EXISTS `sys_file_upload`; +CREATE TABLE `sys_file_upload` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'id', + `name` varchar(256) NOT NULL DEFAULT '' COMMENT '名称', + `path` varchar(512) NOT NULL DEFAULT '' COMMENT '文件路径', + `factpath` varchar(512) NOT NULL COMMENT '实际路径', + `ext` varchar(32) NOT NULL COMMENT '后缀', + `originalname` varchar(256) NOT NULL COMMENT '原名称', + `type` int(11) NOT NULL DEFAULT '9' COMMENT '类型', + `size` int(11) NOT NULL DEFAULT '0' COMMENT '大小', + `remark` varchar(256) DEFAULT NULL COMMENT '描述', + `business_type` int(11) NOT NULL DEFAULT '1' COMMENT '业务类型', + `update_time` varchar(64) DEFAULT NULL COMMENT '更新时间', + `update_id` int(11) DEFAULT '0' COMMENT '更新人', + `create_time` varchar(64) DEFAULT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COMMENT='文件上传记录'; + +-- ---------------------------- +-- Records of sys_file_upload +-- ---------------------------- +INSERT INTO `sys_file_upload` VALUES ('1', '20170420_224242_625109.jpg', '/jflyfox/website/article_image/20170420_224242_625109.jpg', '/home/umark/IdeaProjects/jfinal_cms/target/jfinal_cms/jflyfox/website/article_image/20170420_224242_625109.jpg', 'jpg', 'img1.jpg', '2', '90779', null, '1', '2017-04-20 22:42:42', '1', '2017-04-20 22:42:42', '1'); +INSERT INTO `sys_file_upload` VALUES ('2', '20170420_225715_597604.jpg', '/jflyfox/website/article_image/20170420_225715_597604.jpg', '/home/umark/IdeaProjects/jfinal_cms/target/jfinal_cms/jflyfox/website/article_image/20170420_225715_597604.jpg', 'jpg', 'yingxiongL.jpg', '2', '4546', null, '1', '2017-04-20 22:57:15', '1', '2017-04-20 22:57:15', '1'); + +-- ---------------------------- +-- Table structure for sys_log +-- ---------------------------- +DROP TABLE IF EXISTS `sys_log`; +CREATE TABLE `sys_log` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `log_type` int(11) NOT NULL COMMENT '类型', + `oper_object` varchar(64) DEFAULT NULL COMMENT '操作对象', + `oper_table` varchar(64) NOT NULL COMMENT '操作表', + `oper_id` int(11) DEFAULT '0' COMMENT '操作主键', + `oper_type` varchar(64) DEFAULT NULL COMMENT '操作类型', + `oper_remark` varchar(100) DEFAULT NULL COMMENT '操作备注', + `create_time` varchar(64) NOT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=28 DEFAULT CHARSET=utf8 COMMENT='日志'; + +-- ---------------------------- +-- Records of sys_log +-- ---------------------------- +INSERT INTO `sys_log` VALUES ('1', '1', '访问量统计', 'tb_pageview', '111', '添加', '', '2017-04-20 21:53:40', '0'); +INSERT INTO `sys_log` VALUES ('2', '2', '用户管理', 'sys_user', '1', '登入', '', '2017-04-20 22:25:39', '1'); +INSERT INTO `sys_log` VALUES ('3', '1', null, 'tb_image', '22', '更新', '', '2017-04-20 22:29:51', '1'); +INSERT INTO `sys_log` VALUES ('4', '1', null, 'tb_image', '22', '更新', '', '2017-04-20 22:31:53', '1'); +INSERT INTO `sys_log` VALUES ('5', '1', '文章管理', 'tb_article', '2414', '更新', '', '2017-04-20 22:35:36', '0'); +INSERT INTO `sys_log` VALUES ('6', '1', '文章管理', 'tb_article', '2408', '更新', '', '2017-04-20 22:36:37', '1'); +INSERT INTO `sys_log` VALUES ('7', '1', '文章管理', 'tb_article', '2409', '更新', '', '2017-04-20 22:38:45', '1'); +INSERT INTO `sys_log` VALUES ('8', '1', '文章管理', 'tb_article', '2410', '更新', '', '2017-04-20 22:39:43', '1'); +INSERT INTO `sys_log` VALUES ('9', '1', '文章管理', 'tb_article', '2410', '更新', '', '2017-04-20 22:41:20', '1'); +INSERT INTO `sys_log` VALUES ('10', '1', '文章管理', 'tb_article', '2409', '更新', '', '2017-04-20 22:41:26', '1'); +INSERT INTO `sys_log` VALUES ('11', '1', '文章管理', 'tb_article', '2408', '更新', '', '2017-04-20 22:41:52', '1'); +INSERT INTO `sys_log` VALUES ('12', '1', null, 'sys_file_upload', '1', '添加', '', '2017-04-20 22:42:42', '1'); +INSERT INTO `sys_log` VALUES ('13', '1', '文章管理', 'tb_article', '2408', '更新', '', '2017-04-20 22:42:42', '1'); +INSERT INTO `sys_log` VALUES ('14', '1', '文章管理', 'tb_article', '2408', '更新', '', '2017-04-20 22:43:25', '1'); +INSERT INTO `sys_log` VALUES ('15', '1', '文章管理', 'tb_article', '2411', '更新', '', '2017-04-20 22:43:57', '1'); +INSERT INTO `sys_log` VALUES ('16', '1', '文章管理', 'tb_article', '2410', '更新', '', '2017-04-20 22:44:26', '1'); +INSERT INTO `sys_log` VALUES ('17', '1', '文章管理', 'tb_article', '2409', '更新', '', '2017-04-20 22:44:56', '1'); +INSERT INTO `sys_log` VALUES ('18', '1', '文章管理', 'tb_article', '2412', '更新', '', '2017-04-20 22:45:29', '1'); +INSERT INTO `sys_log` VALUES ('19', '1', '文章管理', 'tb_article', '2413', '更新', '', '2017-04-20 22:46:01', '1'); +INSERT INTO `sys_log` VALUES ('20', '1', '文章管理', 'tb_article', '2353', '更新', '', '2017-04-20 22:48:20', '1'); +INSERT INTO `sys_log` VALUES ('21', '1', '文章管理', 'tb_article', '2353', '更新', '', '2017-04-20 22:49:25', '1'); +INSERT INTO `sys_log` VALUES ('22', '1', '文章管理', 'tb_article', '2414', '更新', '', '2017-04-20 22:49:45', '1'); +INSERT INTO `sys_log` VALUES ('23', '1', null, 'sys_file_upload', '2', '添加', '', '2017-04-20 22:57:15', '1'); +INSERT INTO `sys_log` VALUES ('24', '1', '文章管理', 'tb_article', '2301', '更新', '', '2017-04-20 22:57:15', '1'); +INSERT INTO `sys_log` VALUES ('25', '1', '文章管理', 'tb_article', '2301', '更新', '', '2017-04-20 22:57:21', '1'); +INSERT INTO `sys_log` VALUES ('26', '1', '文章管理', 'tb_article', '4248', '更新', '', '2017-04-20 23:45:06', '0'); +INSERT INTO `sys_log` VALUES ('27', '1', '访问量统计', 'tb_pageview', '112', '添加', '', '2017-04-21 00:01:15', '0'); + +-- ---------------------------- +-- Table structure for sys_menu +-- ---------------------------- +DROP TABLE IF EXISTS `sys_menu`; +CREATE TABLE `sys_menu` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'id', + `parentid` int(11) NOT NULL DEFAULT '0' COMMENT '父id', + `name` varchar(200) NOT NULL DEFAULT '' COMMENT '名称/11111', + `urlkey` varchar(256) DEFAULT NULL COMMENT '菜单key', + `url` varchar(256) DEFAULT NULL COMMENT '链接地址', + `status` int(11) DEFAULT '1' COMMENT '状态//radio/2,隐藏,1,显示', + `type` int(11) DEFAULT '1' COMMENT '类型//select/1,根目录,2,a标签,3,a标签_blank,4,外部url', + `sort` int(11) DEFAULT '1' COMMENT '排序', + `level` int(11) DEFAULT '1' COMMENT '级别', + `create_time` varchar(64) DEFAULT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=32 DEFAULT CHARSET=utf8 COMMENT='菜单'; + +-- ---------------------------- +-- Records of sys_menu +-- ---------------------------- +INSERT INTO `sys_menu` VALUES ('1', '0', '系统管理', 'system_root', null, '1', '1', '90', '1', '2015-04-27 17:28:06', '1'); +INSERT INTO `sys_menu` VALUES ('2', '1', '组织机构', 'department', 'system/department', '1', '1', '91', '2', '2015-04-27 17:28:25', '1'); +INSERT INTO `sys_menu` VALUES ('3', '1', '用户管理', 'user', 'system/user', '1', '1', '92', '2', '2015-04-27 17:28:46', '1'); +INSERT INTO `sys_menu` VALUES ('4', '1', '角色管理', 'role', 'system/role', '1', '1', '94', '2', '2015-04-27 17:29:13', '1'); +INSERT INTO `sys_menu` VALUES ('5', '1', '菜单管理', 'menu', 'system/menu', '1', '1', '96', '2', '2015-04-27 17:29:43', '1'); +INSERT INTO `sys_menu` VALUES ('6', '1', '数据字典', 'dict', 'system/dict', '1', '1', '97', '2', '2015-04-27 17:30:05', '1'); +INSERT INTO `sys_menu` VALUES ('7', '20', '联系人管理', 'contact', 'admin/contact/list', '1', '1', '38', '2', '2015-04-28 12:38:04', '1'); +INSERT INTO `sys_menu` VALUES ('8', '18', '栏目管理', 'folder', 'admin/folder/list', '1', '1', '11', '2', '2015-04-28 22:34:46', '1'); +INSERT INTO `sys_menu` VALUES ('9', '18', '文章管理', 'article', 'admin/article/list', '1', '1', '14', '2', '2015-04-28 22:35:24', '1'); +INSERT INTO `sys_menu` VALUES ('10', '20', '友情链接', 'friendlylink', 'admin/friendlylink/list', '1', '1', '32', '2', '2015-04-28 22:35:56', '1'); +INSERT INTO `sys_menu` VALUES ('11', '20', '访问量统计', 'pageview', 'admin/pageview', '1', '1', '33', '2', '2015-04-28 22:36:34', '1'); +INSERT INTO `sys_menu` VALUES ('12', '19', '回复管理', 'comment', 'admin/comment/list', '1', '1', '21', '2', '2015-05-06 09:40:46', '1'); +INSERT INTO `sys_menu` VALUES ('13', '20', '缓存更新', 'operation', 'admin/operation', '1', '1', '31', '2', '2015-05-06 11:41:33', '1'); +INSERT INTO `sys_menu` VALUES ('14', '1', '日志管理', 'log', 'system/log/list', '1', '1', '98', '2', '2016-01-03 18:09:18', '1'); +INSERT INTO `sys_menu` VALUES ('15', '19', '意见反馈', 'advicefeedback', 'admin/advicefeedback/list', '1', '1', '22', '2', '2016-01-29 01:06:46', '1'); +INSERT INTO `sys_menu` VALUES ('16', '18', '栏目公告', 'foldernotice', 'admin/foldernotice/list', '1', '1', '12', '2', '2016-01-29 01:07:35', '1'); +INSERT INTO `sys_menu` VALUES ('17', '18', '栏目滚动图片', 'folderrollpicture', 'admin/folderrollpicture/list', '1', '1', '13', '2', '2016-01-29 01:11:48', '1'); +INSERT INTO `sys_menu` VALUES ('18', '0', '内容管理', 'folder_root', null, '1', '1', '10', '1', '2016-01-29 04:24:45', '1'); +INSERT INTO `sys_menu` VALUES ('19', '0', '评论管理', 'comment_root', null, '1', '1', '20', '1', '2016-01-29 04:26:57', '1'); +INSERT INTO `sys_menu` VALUES ('20', '0', '其他管理', 'other_root', null, '1', '1', '30', '1', '2016-01-29 04:29:39', '1'); +INSERT INTO `sys_menu` VALUES ('21', '0', '首页', 'home', 'admin/home', '1', '1', '2', '1', '2015-04-27 17:28:06', '1'); +INSERT INTO `sys_menu` VALUES ('22', '0', '素材管理', 'material_root', null, '1', '1', '16', '1', '2016-02-05 11:15:25', '1'); +INSERT INTO `sys_menu` VALUES ('23', '22', '图片管理', 'image', 'admin/image/list', '1', '1', '18', '2', '2016-02-05 11:15:45', '1'); +INSERT INTO `sys_menu` VALUES ('24', '22', '相册管理', 'imagealbum', 'admin/imagealbum/list', '1', '1', '17', '2', '2016-02-05 11:17:57', '1'); +INSERT INTO `sys_menu` VALUES ('25', '22', '我的相册', 'imageshow', 'admin/imageshow/list', '1', '1', '16', '2', '2016-02-10 01:22:01', '1'); +INSERT INTO `sys_menu` VALUES ('26', '22', '视频专辑管理', 'videoalbum', 'admin/videoalbum/list', '1', '1', '19', '2', '2016-02-16 16:25:08', '1'); +INSERT INTO `sys_menu` VALUES ('27', '22', '视频管理', 'video', 'admin/video/list', '1', '1', '20', '2', '2016-02-16 16:25:37', '1'); +INSERT INTO `sys_menu` VALUES ('28', '0', '模板管理', 'filemanager', 'admin/filemanager/list', '1', '1', '60', '1', '2016-03-06 09:36:36', '1'); +INSERT INTO `sys_menu` VALUES ('29', '18', '文章审核', 'article_approve', 'admin/article/list_approve', '1', '1', '15', '2', '2016-03-16 00:21:12', '1'); +INSERT INTO `sys_menu` VALUES ('30', '20', '站点管理', 'site', 'admin/site/list', '1', '1', '31', '2', '2016-04-02 22:26:33', '1'); +INSERT INTO `sys_menu` VALUES ('31', '1', '参数配置', 'config', 'system/config', '1', '1', '97', '2', '2016-12-17 23:34:13', '1'); + +-- ---------------------------- +-- Table structure for sys_role +-- ---------------------------- +DROP TABLE IF EXISTS `sys_role`; +CREATE TABLE `sys_role` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'id', + `name` varchar(200) NOT NULL DEFAULT '' COMMENT '名称/11111/', + `status` int(11) DEFAULT '1' COMMENT '状态//radio/2,隐藏,1,显示', + `sort` int(11) DEFAULT '1' COMMENT '排序', + `remark` text COMMENT '说明//textarea', + `create_time` varchar(64) DEFAULT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COMMENT='角色'; + +-- ---------------------------- +-- Records of sys_role +-- ---------------------------- +INSERT INTO `sys_role` VALUES ('1', '测试角色', '1', '1', null, '2016-03-31 23:41:59', '1'); + +-- ---------------------------- +-- Table structure for sys_role_menu +-- ---------------------------- +DROP TABLE IF EXISTS `sys_role_menu`; +CREATE TABLE `sys_role_menu` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'id', + `roleid` int(11) NOT NULL COMMENT '角色id', + `menuid` int(11) NOT NULL COMMENT '菜单id', + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='角色和菜单关联'; + +-- ---------------------------- +-- Records of sys_role_menu +-- ---------------------------- + +-- ---------------------------- +-- Table structure for sys_user +-- ---------------------------- +DROP TABLE IF EXISTS `sys_user`; +CREATE TABLE `sys_user` ( + `userid` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', + `username` varchar(32) NOT NULL COMMENT '用户名/11111', + `password` varchar(32) NOT NULL COMMENT '密码', + `realname` varchar(32) DEFAULT NULL COMMENT '真实姓名', + `departid` int(11) DEFAULT '0' COMMENT '部门/11111/dict', + `usertype` int(11) DEFAULT '2' COMMENT '类型//select/1,管理员,2,普通用户,3,前台用户,4,第三方用户,5,API用户', + `state` int(11) DEFAULT '10' COMMENT '状态', + `thirdid` varchar(200) DEFAULT NULL COMMENT '第三方ID', + `endtime` varchar(32) DEFAULT NULL COMMENT '结束时间', + `email` varchar(64) DEFAULT NULL COMMENT 'email', + `tel` varchar(32) DEFAULT NULL COMMENT '手机号', + `address` varchar(32) DEFAULT NULL COMMENT '地址', + `title_url` varchar(200) DEFAULT NULL COMMENT '头像地址', + `remark` varchar(1000) DEFAULT NULL COMMENT '说明', + `theme` varchar(64) DEFAULT 'default' COMMENT '主题', + `back_site_id` int(11) DEFAULT '0' COMMENT '后台选择站点ID', + `create_site_id` int(11) DEFAULT '1' COMMENT '创建站点ID', + `create_time` varchar(64) DEFAULT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者', + PRIMARY KEY (`userid`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COMMENT='用户'; + +-- ---------------------------- +-- Records of sys_user +-- ---------------------------- +INSERT INTO `sys_user` VALUES ('1', 'admin', 'oQfY53QHKAAoq4iIME0pfQ==', '系统管理员', '1', '1', '10', null, null, 'zcool321@sina.com', '123', null, null, '时间是最好的老师,但遗憾的是——最后他把所有的学生都弄死了', 'inverse', '5', '1', '2016-06-06 06:06:06', '1'); +INSERT INTO `sys_user` VALUES ('2', 'testapi', 'ldKI9edsQVM=', 'api测试', '1', '5', '10', null, null, null, null, null, null, null, 'default', '0', '1', '2017-03-19 20:41:25', '1'); + +-- ---------------------------- +-- Table structure for sys_user_role +-- ---------------------------- +DROP TABLE IF EXISTS `sys_user_role`; +CREATE TABLE `sys_user_role` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'id', + `userid` int(11) NOT NULL COMMENT '用户id', + `roleid` int(11) NOT NULL COMMENT '角色id', + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户和角色关联'; + +-- ---------------------------- +-- Records of sys_user_role +-- ---------------------------- + +-- ---------------------------- +-- Table structure for tb_advice_feedback +-- ---------------------------- +DROP TABLE IF EXISTS `tb_advice_feedback`; +CREATE TABLE `tb_advice_feedback` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', + `userid` int(11) NOT NULL COMMENT '用户ID', + `username` varchar(32) NOT NULL COMMENT '用户名', + `qq` varchar(32) DEFAULT NULL COMMENT 'qq', + `email` varchar(64) DEFAULT NULL COMMENT 'email', + `telphone` varchar(32) DEFAULT NULL COMMENT '手机号', + `content` varchar(2000) DEFAULT NULL COMMENT '意见反馈内容', + `remark` varchar(2000) DEFAULT NULL COMMENT '备注', + `is_read` int(11) DEFAULT NULL COMMENT '是否已读', + `create_time` varchar(64) DEFAULT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8 COMMENT='意见反馈'; + +-- ---------------------------- +-- Records of tb_advice_feedback +-- ---------------------------- +INSERT INTO `tb_advice_feedback` VALUES ('1', '1', '系统管理员', '333', '333', '33', null, '333333333', null, '2016-01-29 04:39:43', '1'); +INSERT INTO `tb_advice_feedback` VALUES ('2', '1', '系统管理员', '330321321', '223@sina.com', '13983283282', null, '系统很不错~等待升级', null, '2016-01-29 04:41:27', '1'); +INSERT INTO `tb_advice_feedback` VALUES ('3', '1', '系统管理员', '123', '123', '123', null, '123', null, '2016-01-29 04:42:14', '1'); +INSERT INTO `tb_advice_feedback` VALUES ('4', '1', '系统管理员', '321', '2222', '2222', null, '222', null, '2016-01-29 04:42:59', '1'); +INSERT INTO `tb_advice_feedback` VALUES ('5', '1', '系统管理员', '33333333', '33333333333333333', '33333333333', null, '3333333333333333333333', null, '2016-01-29 04:43:51', '1'); +INSERT INTO `tb_advice_feedback` VALUES ('6', '1', '系统管理员', '111111111', '11111111111111', '1111111111111', null, '11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111', null, '2016-01-29 04:46:02', '1'); + +-- ---------------------------- +-- Table structure for tb_article +-- ---------------------------- +DROP TABLE IF EXISTS `tb_article`; +CREATE TABLE `tb_article` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'id', + `folder_id` int(11) DEFAULT '1' COMMENT '目录id', + `title` varchar(200) DEFAULT '' COMMENT '文章名称', + `content` longtext COMMENT '文件内容', + `count_view` int(11) DEFAULT '0' COMMENT '浏览数', + `count_comment` int(11) DEFAULT '0' COMMENT '评论数', + `type` int(11) DEFAULT '1' COMMENT '类型:1 正常 2 预览展示概述 3 程序调用处理', + `status` varchar(20) DEFAULT '1' COMMENT '状态//radio/2,隐藏,1,显示', + `is_comment` int(11) DEFAULT '1' COMMENT '是否评论:2 否 1 是', + `is_recommend` int(11) DEFAULT '2' COMMENT '是否推荐:2 否 1 是', + `sort` int(11) DEFAULT '1' COMMENT '排序', + `jump_url` varchar(256) DEFAULT NULL COMMENT '跳转地址', + `image_url` varchar(256) DEFAULT NULL COMMENT '图片路径', + `image_net_url` varchar(256) DEFAULT NULL COMMENT '网络图片路径', + `file_url` varchar(256) DEFAULT NULL, + `file_name` varchar(256) DEFAULT NULL, + `approve_status` int(11) DEFAULT NULL COMMENT '审核状态', + `publish_time` varchar(64) DEFAULT NULL COMMENT '发布时间', + `publish_user` varchar(64) DEFAULT '1' COMMENT '发布者', + `start_time` varchar(64) DEFAULT NULL COMMENT '开始时间', + `end_time` varchar(64) DEFAULT NULL COMMENT '结束时间', + `update_time` varchar(64) DEFAULT NULL COMMENT '更新时间', + `create_time` varchar(64) DEFAULT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=4253 DEFAULT CHARSET=utf8 COMMENT='文章'; + +-- ---------------------------- +-- Records of tb_article +-- ---------------------------- +INSERT INTO `tb_article` VALUES ('1', '1', '门头沟', '

门头沟

', '122', '123', '12', '2', '1', '1', '1', null, 'download/image_url/20150529_102007_298104.jpg', null, null, null, '10', '2014-03-05', '系统管理员', '2015-01-29', '2015-01-23', '2015-01-28 17:29:55', '2015-01-28', '1'); +INSERT INTO `tb_article` VALUES ('105', '2', '北京门头沟:持京卡10元游京西“三山一湖”', '

  中工网讯 近日,由北京市门头沟区总工会、区旅游委和灵山、百花山、妙峰山、珍珠湖景区合作主办的“走进门头沟——十元游京西山水启动仪式”在妙峰山景区举行。区总工会常务副主席杜军、区旅游委主任刘贵清、区总工会副主席郭燕等领导出席启动仪式,启动仪式上职工服务中心负责人与景区代表负责人签署了合作协议。

  10元就可以游京西灵山、百花山、妙峰山、珍珠湖。这是门头沟区总工会为本区工会会员提供的一项优惠活动。据介绍,此项活动开展时间为5月1日至10月7日。活动期间凭本区“京卡·互助服务卡”和预定门票不仅能够以最优惠的价格享受游览“三山一湖”的优质服务,更能够远离雾霾尽享门头沟区秀美风光。


', '21', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '1', '2015-04-30', '中工网', null, null, '2015-01-28 17:48:26', '2015-01-28', '1'); +INSERT INTO `tb_article` VALUES ('111', '2', '门头沟定都阁:看“3D北京”', '

\"\"

  这两天,许多市民驱车赶到门头沟定都阁欣赏初夏“3D北京”,大气磅礴的白云下,视野格外通透,人们肉眼可以清晰分辨数十公里外远的景致。定都阁位于门头沟区潭柘寺镇定都峰上,定都峰,海拔680米,位于门头沟区桑峪村东北狮山山顶,其位置正处在长安街向西的延长线上,是传说中“燕王喜登定都峰,刘伯温一夜建北京”的所在地。


', '27', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '1', '2015-02-04', '人民网', null, null, '2015-02-04 08:47:31', '2015-02-04', '1'); +INSERT INTO `tb_article` VALUES ('112', '2', 'S1线6号线西延 明年年底开通', '

  S1线预计明年年底将与6号线西延一起开通,同时长安街西延工程预计2017年12月全线通车。未来门头沟也将成为距离中心城区最近、交通最便利的新城。这是门头沟区区长王洪钟今天上午做客北京城市广播“市民对话一把手”栏目时透露的。

  S1线与六号线西延一起开通

  提到门头沟区的交通发展,王洪钟表示,S1线现在已经开工建设,将在明年年底和地铁6号线西延一起开通。据介绍,S1线磁悬浮铁路在门头沟设了6个站点,届时从门头沟石门营到苹果园仅需10分钟左右。

  另外长安街延长线从去年下半年也已经开工建设,预计将在2017年建成。据介绍,西延工程中还将架设永定河跨河大桥。在S1线和长安街延长线两条交通线建设完成后,门头沟区和市区的交通会更加便捷,这两条线也将与阜石路二期以及莲石路到潭柘寺的108国道、未来即将修建的109高速公路等形成一个总的大交通体系。

', '226', '3', '11', '1', '1', '1', '9', null, 'download/image_url/20150525_233451_151572.jpg', null, null, null, '10', '2015-04-20', '中新网', null, null, '2015-02-06 09:18:50', '2015-02-06', '1'); +INSERT INTO `tb_article` VALUES ('206', '2', '门头沟区召开“十三五”规划公共服务与社会治理专题研讨会', '

5月12日,门头沟区召开“十三五”规划公共服务与社会治理专题研讨会。


区领导韩子荣、罗斌、丁勇、郑伟革、冯飞、高连发,区相关部门负责同志,北京国际城市发展研究院、北京方迪经济发展研究院相关负责同志参加会议,听取区相关部门关于规划编制有关工作情况的汇报,并就相关问题进行研讨。


韩子荣要求:一是要深入研究门头沟区未来人口发展趋势,避免“城市病”的产生。一、区规划分局、国土分局要认真核算已通过审批项目的体量。二、要对我区南部新城、北部棚改7平方公里范围内的人口承载能力、产业配套设施等进行专项研究。三、要以门城地区22万人口为对象研究如何进一步提升公共服务与社会治理水平,同时要研究潭柘寺、军庄、斋堂的小城镇建设发展方向。二是要聚焦农村城市化进程,科学设计服务项目。一、要深入研究农村预留产业用地使用、新型市民培育、劳动力就业等问题。二、要围绕12类人群、农民及在岗职工需求编制项目,确保其享有便利的公共服务。三是要深入推进政府改革,打造服务型政府。一、要通过升级改造提升为民服务平台服务能力,采取APP等方式为群众提供更为便利的智能化公共服务。二、要强化社会组织的培育,通过多样化的社会组织最大程度地满足群众的个性化需求。三、要不断提升政府服务能力,进一步优化提升教育、商业等民生领域配套设施及布局,深入推进医疗领域改革,通过整合部门资源为群众、企业办事打造更加方便快捷的服务通道。四、要体系化研究政府未来发展方向,以综合审批、城市综合管理、综合执法三个体系为重点进行研究,通过体系化联动提升政府工作效率。


', '79', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2015-02-04', '系统管理员', null, null, '2015-02-26 09:14:47', '2015-02-26', '1'); +INSERT INTO `tb_article` VALUES ('314', '13', '爨底下', '

http://www.jflyfox.com/mtg/front/article/330.html

', '2', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150524_165122_812162.jpg', 'http://i1.tietuku.com/35171f11a5ec9c51.jpg', null, null, '10', '2015-05-24', '系统管理员', '', '', '2015-05-24 16:50:26', '2015-05-24 16:50:26', '1'); +INSERT INTO `tb_article` VALUES ('315', '13', '永定塔', '

http://www.jflyfox.com/mtg/front/article/406.html

', '2', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150524_165116_706479.jpg', 'http://i1.tietuku.com/fab40b501ece3fcf.jpg', null, null, '10', '2015-05-24', '系统管理员', '', '', '2015-05-24 16:50:34', '2015-05-24 16:50:34', '1'); +INSERT INTO `tb_article` VALUES ('316', '13', '美丽门城', '

#

', '1', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150524_165111_42992.jpg', 'http://i1.tietuku.com/6f139452bedaefed.jpg', null, null, '10', '2015-05-24', '系统管理员', '', '', '2015-05-24 16:50:42', '2015-05-24 16:50:42', '1'); +INSERT INTO `tb_article` VALUES ('317', '13', '百花山', '

http://www.jflyfox.com/mtg/front/article/329.html

', '6', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150524_165105_854676.jpg', 'http://i1.tietuku.com/3951e9cb262621b6.jpg', null, null, '10', '2015-05-24', '系统管理员', '', '', '2015-05-24 23:36:47', '2015-05-24 23:36:47', '1'); +INSERT INTO `tb_article` VALUES ('318', '2', '门头沟华润悦景湾30-100平2-3居总价100万起', '

华润悦景湾以LOFT产品为主,底商为辅。层高4.2米,最高21层,主要户型为30-100平米的两至三居,容积率4.0,地块规划1612户,共6栋楼,毛坯交房,总价100万起。

项目位于北京市城西,门头沟新城核心区(永定镇),长安街西延长线南侧。周边重点名校云集,内外部多重园林景观,多维交通,给予居住者真正轻松优享的生活品质。

', '1', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2015-05-06', '新浪房产', null, null, '2015-05-24 22:17:25', '2015-05-24 22:17:25', '1'); +INSERT INTO `tb_article` VALUES ('319', '2', ' 北京门头沟:首家非京籍未成年人观护基地成立', '

 5月19日,北京市门头沟区雁翅镇益农缘生态农业合作社里热闹非凡。这一天,该区检察院在这里举行“扬帆非京籍未成年人观护基地”正式成立仪式,数十名检察官、观护员、爱心人士都来看望在这里劳动、生活的4名失足未成年人。

  “这里是外地来京失足孩子的‘家’,是检察院帮助这些孩子悔过自新的‘家’,更是我们这个社会关爱、挽救涉罪未成年人的‘家’。”门头沟区检察院检察长杨淑雅介绍,作为北京市首家非京籍附条件不起诉未成年犯罪嫌疑人观护基地,主要解决在京无固定住所、无固定职业、无监护人的涉罪未成年人的观护帮教问题。

  记者了解到,门头沟区检察院一直在积极探索附条件不起诉观护帮教工作。2014年11月,门头沟区检察院联系到了北京市劳模、益农缘生态农业合作社董事长寇红艳。寇红艳义不容辞地担负起了观护责任,她把这些涉罪未成年人当成自己的孩子,教他们干家务活、参加农业劳动,带他们锻炼身体,辅导他们看书学习……孩子们亲切地叫她为“寇妈妈”。

  17岁的小宇从老家来到北京打工。年轻气盛的他为朋友打抱不平,误将他人打伤,涉嫌寻衅滋事罪,被移送到门头沟区检察院审查起诉。考虑到他是未成年人且真诚认罪悔罪,该院依法对其作出附条件不起诉决定,并送到益农缘生态农业合作社接受观护帮教。

  检察官和“寇妈妈”为出身农村家庭的小宇制定了专门观护帮教方案。几个月的时间里,小宇不仅学会了一些日常生活技能,掌握了相关农业技术,还学会了如何待人接物,整个人变得积极向上起来。

  对于这一点,小宇的父亲感触很深。他告诉记者:“小宇变得比以前懂事了,知道关心家人,能主动帮助做家务,我和他妈妈特别感谢检察院。”


', '1', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2015-05-08', '人民网', null, null, '2015-05-24 22:17:31', '2015-05-24 22:17:31', '1'); +INSERT INTO `tb_article` VALUES ('320', '2', '北京遭遇64年最冷5月 昨天门头沟下雪了', '

  人民网北京5月10日电 据京华时报微博报道,5月9日中午,北京门头沟灵山气温1℃,下雪了!由于灵山海拔高气温低,所以水蒸气直接凝结成了雪片儿。当北京别的地下雨时,灵山在下雪!今天最高气温12℃。


', '4', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2015-05-10', ' 人民网', null, null, '2015-05-24 22:17:38', '2015-05-24 22:17:38', '1'); +INSERT INTO `tb_article` VALUES ('321', '2', '北京门头沟区龙山家园安置房墙体多处开裂', '

  \"\"

  工人正在楼体旁进行施工。京华时报记者谭青摄

  \"\"

  楼体底部与地面之间的裂缝。京华时报记者谭青摄

  昨天,门头沟区龙山家园5区多名住户反映,他们居住的2号楼1单元定向安置房墙体出现多处裂缝。对此,棚改中心负责人张先生表示,由于室外地坪发生不均匀沉降,造成1单元北侧门厅墙体、室外残疾人坡道及散水开裂,南侧绿化地面沉降。他们已连夜展开施工,同时委托相关单位对该楼进行全面安全检测。对于事发楼居民住宿问题,他们将协调相关部门解决。      

  □举报

  墙体出现多处裂缝

  昨天,家住龙山家园5区2号楼1单元8层的刘女士反映,她们居住的2号楼为采空棚户区黑山定向安置房,房子装修完毕18日入住后,当时经过1单元北侧门厅时,就发现墙体有小裂缝,楼后也发现类似现象。刘女士称,当时她并没在意,咨询朋友后得知,一般情况下新楼盘经过下雨后都会有地基稍微下沉现象。

  “当时把我吓了一跳。”刘女士回忆,前天上午她回家时,突然发现门厅倾斜变形和楼后墙体裂缝变大,地基也出现大缝隙。多名住户表示,该楼之前已通过相关部门验收合格,他们才搬进去,有的还没来得及入住,就出现裂缝现象,实属不应该,他们担心存在安全隐患。

  昨天上午8点多,事发楼东侧用蓝色铁皮遮挡,门口一部挖掘机正在往车上转运土料,几名工人在门厅上方作业。楼前空地,多名住户在围观。

  据了解,该栋楼共28层高,涉及3个单元,385套住宅,有20多户已经入住。记者在楼前和楼后侧均发现,墙体与地面连接处出现多处裂缝,有的长达10米左右,宽约10厘米,能容下一个拳头大小。另外还有多处地坪有下沉现象。除此之外,旁边的1号楼前后也存在部分地坪沉降现象。

  记者看到,事发楼1单元门外墙上,贴着北京寓吉物业管理有限公司的紧急通知:因本单位供水管线突发故障,施工方需紧急施工进行工程抢修,施工期间将封闭单元门进出口,出单元门走旁边小门,施工期限预计10天。

  住户商女士提供的住宅工程质量分户验收表上显示,该栋楼建设单位是门头沟区采空棚户区改造建设中心。施工单位为山西建筑工程(集团)总公司。监理单位为北京园磊工程管理有限公司。开工日期为2012年10月12日。2014年12月23日,三方综合验收结论为验收合格。

  □回应

  将对该楼安全检测

  对此,棚改中心负责人张先生称,事发后棚改中心组织设计施工单位、建筑主体施工单位、室外施工单位、第三方检测单位第一时间进行现场勘察。初步判断为室外市政工程冬季回填土不实地坪沉降,对楼前消防管形成压迫,造成管线破裂,加重地坪沉降。目前,棚改中心已安排相关施工单位将沉降区域用围挡进行了封闭,并进行了抢修。

  张先生称,龙山家园A5地块2号楼为采空棚户区黑山定向安置房项目住宅标段之一。截至今年5月24日,已完成全部房屋分配工作,部分安置居民开始进行室内装修,其中22户居民已入住。

  对于事发楼处置方案,张先生称,由棚改中心组织施工单位对1单元北侧门厅进行拆除,进行消防管线抢修,沉降区域回填土重新回填,同时委托国家建设工程质量监督检验中心和沉积观测单位对该栋住宅楼进行全面安全检测,并出具相关检测报告。张先生表示,他们将对整个龙山家园每栋楼进行排查,关于2号楼居民提出的住宿问题由棚改中心负责解决,安排住宿地点,相关费用由政府协调支付。


', '25', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2015-05-23', '京华时报', null, null, '2015-05-24 22:17:47', '2015-05-24 22:17:47', '1'); +INSERT INTO `tb_article` VALUES ('322', '2', '长安街西延将直达门头沟', '

继游乐园大摩天轮之后,石景山又一地标性建筑—首钢厂东门将暂时离开公众视线。下周一,为让路长安街西延工程,这座屹立了23年的大门启动拆迁,最终会向西挪移一里地。迁建后的厂东门位于首钢北京园区L型景观带,将成为长安街西延长线上具有绿色生态示范展示和工业遗产转型升级特色的城市公共活动休闲区。


“这大门是首钢人的情结”


昨天上午,首钢厂东门前人流如织,不少首钢老职工和市民赶来“道别”。朱红色的大门,顶端镶嵌着绿色琉璃瓦,大门两侧悬挂着红底烫金的牌匾,这个1992年建成的仿古大门被一次次定格在了相机镜头里。


大门一侧,前来合影的全国劳模屠学信和几位同事拍了张“全家福”:“我来这工作33年了,大门建起后每天我都要从这里走上几个来回,厂东门见证了我的青春,说要拆迁,心里总不是滋味。”感到不舍的还有82岁的退休职工马立坤,他特意起了个大早赶到这儿,只为再凝望一眼曾经日夜陪伴的大门:“首钢人都对厂东门感情很深,进了这个门就感觉到家一样,厂东门就是首钢人的情结。”


特意提前两站下了公交车,市民佟先生夫妇和厂东门拍了最后一张合影。“无论是以前上学还是现在上班,听到公交车报站首钢厂东门到了,心里就暖暖的,因为就要到家了,总会望一眼车窗外的大门。”佟先生的妻子也打开了话匣子:“这个地标建筑见证了我们的生活变迁,要拆了还真是有点留恋”。


长安街西延预计后年开通


不过,首钢厂东门只是暂时告别。这个长56.28米、高12.85米的大门,将按1:1的比例迁建至长安街西延长线与晾水池(群明湖)东路交口的东北角。


作为长安街西延长线的重点工程之一,东门拆除时会保留门上须弥座和木屋顶,并保存到库房,让新的厂东门恢复原貌。记者从首钢园区开发部工程处了解到,建好后的长安街西延长线将把封闭的厂区一分为二,新的路面宽80米,采取先修路北,路南通车;再修路南,路北通车的方式。


而建成后的厂东门,将成为新首钢“五区两带”规划中长安街以北城市公共活动休闲带的南端起点,沿着厂东门的中心点一路向北将是新首钢工业资源景观的中轴线。这里交通便利,不但南面连接石景山直达永定河、门头沟的跨河大桥将建成,而且将有S1磁浮线路通过,直达新首钢北端后通过地下空间与东侧苹果园交通枢纽相连。“以后这儿也是西长安街,车能从这直接开到门头沟!”一名老职工指着厂东门的方向说道。


长安街西延项目是本市今年的重点工程,总投资达22亿元。项目西起门头沟区三石路,东至石景山区古城路口,全长约6.4公里,是城市主干道。根据市重大办公布的信息,项目计划2017年10月全线竣工,今年计划完成总工程的31%。该项目涉及首钢区域全长约2.6公里,其中厂东门以内约1.5公里,目前,首钢方面已完成红线范围内除厂东门、国旗杆外的全部拆除工作。


炼铁料场变身创意广场


长安街西延项目将成为新首钢高端产业综合服务区的支撑项目和交通干道。



作为本市加快西部地区转型的发展核心区,首钢园区的11个重点项目正在推进。其中,首钢利用工业建筑进行改造的首个项目—四十筒仓项目已经完成主体工程改造及部分配套工程和精装施工。据介绍,已改造完工的6个筒仓和1个料仓占地3万平方米,虽然表面分别还是水泥和钢铁色调,但已初步有了写字楼的模样。首钢园区开发部相关负责人表示,原本的“炼铁料场”变身风貌独特的“创意广场”,已具备客户入驻条件,目前共有几十家文创企业有意入驻。


另外,位于新首钢高端产业综合服务区南侧的首钢二型材厂,项目定位于为互联网金融、IT产业等企业提供办公及配套服务场所,项目已于今年3月开工,预计2017年建成。


', '2', '0', '11', '1', '1', '1', '10', null, null, null, null, null, '10', '2015-05-24', ' 北京日报', null, null, '2015-05-24 22:17:53', '2015-05-24 22:17:53', '1'); +INSERT INTO `tb_article` VALUES ('323', '2', '门头沟新城:品牌房企“向前冲', '

随着京西区域的发展和交通环境的改善,原本属于北京远郊的门头沟区域也开始被房企纳入视线。近几年,已经有融创、电建、华润等多个品牌开发商进入这一区域拿地,而从今年开始,电建·泷悦长安、融创西长安壹号、华润悦景湾等项目的集中入市,也使得门头沟这一京西市场成为业界所关注的焦点。


  交通改善推升门头沟区域价值


  从北京远郊区到房价推升到3万元/平方米级别的京西新城,门头沟的区域价值在近几年来有着明显增长,而其中最重要的一点在于门头沟区域的交通环境改善。多位业内人士告诉记者,交通改善可以说是目前门头沟区域最大的利好。


  随着长安街西延线以及地铁S1号线在今明两年相继贯通,位于门头沟新城的项目也已经开始陆续入市。记者近日实地走访了解到,虽然目前还没有最终确定价格,但是西长安壹号、华润悦景湾等即将开盘的项目,售价普遍在3万-3.5万元/平方米之间。


  泷悦长安项目负责人介绍,现在来门头沟置业的人群多元化,也是看到了未来的发展规划。尤其是工作和生活都在西部的购房者,对门头沟地域的距离能够接受。而在西长安壹号的销售现场,项目销售人员也向记者表示:“随着区域价值的不断提升,项目价格预计在7月份还会上调,涨幅在10%左右。”


  亚豪机构市场总监郭毅也认为,门头沟虽然看起来距离比较远,但是相对于大兴、通州、房山、昌平等区域内到三环的通行时间是最短的。“以前大家会感觉门头沟的位置相对来说离北京市区没有那么近,但是过去了就会感受到其交通条件真是周边几个行政区里面相对最好的。从阜石路可以直接开到门头沟,而且这条路基本不会出现拥堵。”


  商住、别墅各占半壁江山


  值得注意的是,在门头沟区域这一批入市的新盘当中,主要以小户型商住类产品和别墅类产品为主。吸引的人群呈现出首次置业的年轻人和高端改善型人群二元化趋势。


  “由于这边的房地产开发比较晚,所以这个区域的居住人口密度没有那么高。首钢搬迁之后,门头沟自身的生态优势被更大地放大出来。因此门头沟的一些项目就是依托这样的山景做出了一些高品质的住宅。购房者也比较认可这个区域。”郭毅表示。


  区域内一央企人士则告诉记者,造成这一现象的原因主要还是和此前的土地出让及门头沟区域的大环境有关。“门头沟之所以定位较高,一个因素是环境好,另一个因素则是因为土地资源比较稀缺。”她向记者表示,门头沟区域平原面积只占1.5%,山地面积98.5%,适合进行房地产开发的土地稀缺,使得这一区域的地价也不算低。


  2013年底,融创、住总、骏洋三家房企组成的联合体以58.66亿元获取门头沟新城地块,成为当年的总价地王。去年10月,城建和保利在门头沟永定镇拿下的两宗地块,溢价率分别为40%和35%。“再加上当时出让的土地都配有相当数量的自住房及公租房配建,使得开发商可售部分房源的楼面价进一步提高。因此,开发别墅类产品无疑是一个比较好的选择。”该人士说。


  此外,位于规划中的WSD(西部服务区)区域内的土地则多为商业用地,除了商住产品和写字楼之外,房企也没有打造普通住宅项目的选项。


  ■ 新盘探访


  电建·泷悦长安


  边户别墅受青睐八九月推高层住宅


  电建·泷悦长安是位于门头沟永定镇长安街西延线南侧的别墅项目。本周二,记者来到项目销售现场,不过由于该区域并不处于传统的豪宅区,项目周边配套尚未成型,售楼处内也没有购房者前来咨询。不过,门头沟新城良好的生态环境可以说是这一项目最大的卖点。


  据电建·泷悦长安的销售人员介绍,目前大多来此置业的购房者主要是考虑到养老、休闲的需求。销售人员称:“门头沟的主要卖点是山水环境和未来新城区的发展。项目此次开盘共推出40套别墅,主打240平方米的联排别墅。现在已经有20多组排卡。边户别墅的花园面积较大,优惠后总价约1400万元/套。中户别墅花园面积较小,优惠后约1200万元/套。边户别墅卖得特别火,因为花园面积大,一共12套边户,现在只剩下4套。我们将在2017年交房,那时长安街西延长线会通车,周围相关的配套都将建好。”


  记者还了解到,电建·泷悦长安还将在今年8月、9月推出高层住宅,共有568套房源,涵盖120-170平方米的多种户型。不过目前价格还没有最终确定,但预计至少在3.5万/平方米以上。


  华润悦景湾


  低总价LOFT可定制家装


  华润悦景湾同样位于门头沟新城区域。记者驱车从西二环出发,仅需三十分钟左右就抵达华润悦景湾项目所在地。同去年来此地时相比,项目所在区域商业、交通等配套已经明显成熟。而相对于处于亦庄、房山等区域的同类型LOFT产品来说,这样的通勤时间对于在丰台、海淀等区工作的群体来说具有相当的吸引力。


  “由于低总价和不限购的特点,项目的定位本身就偏向于首次置业或者首次改善的年轻购房人群。”华润悦景湾项目负责人介绍,该项目将于近期入市,主要产品为33-70平方米的LOFT。“单价会比周边同类型产品低一些,预计会在3万-3.5万元/平方米之间,最低总价预计在100万元左右。”


  而针对年轻人追求个性的特点,华润悦景湾还联合小米家装,推出了定制化装修服务,客户可以根据自己喜好的风格定制精装产品。而这也成为了该项目的一大亮点,据该项目负责人介绍,虽然项目是毛坯交房,但是由于同小米爱空间方面已经达成了合作,所以业主可以在几种不同风格的装修套餐中选择一种自己最为中意的产品,其装修标准为988元/平方米。


  西长安壹号


  精装修LOFT 酝酿涨价


  预计本月底开盘的西长安壹号,也是位于门头沟新城的商住项目,但未来是精装修交房。本周二记者以购房者的身份探访了该项目,发现相对于周边同类型产品,融创旗下的西长安壹号的价格也要稍高一些。在售楼处现场,销售人员告诉记者:“项目位于WSD的核心区域,长安线西延线两侧没有住宅用地的规划,所以只能做成商住类项目。拿地时楼面价格是1.85万元/平方米,现在精装修卖3.4万元/平方米左右已是成本价。”


  据了解,西长安壹号预计将于月底开盘,共有200余套房源入市,目前已经进入排号阶段,而排号数也已超过200组。7月份,项目价格还会上调10%左右。


  “如果周边项目的价格达到4万元/平方米,那我们至少要卖到5万元/平方米,因为我们是在WSD的核心位置,项目旁边就是即将开通的地铁S1号线。”面对显得有些犹豫的记者,销售人员不断强调项目地段的优越性。


', '7', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-24 22:17:59', '2015-05-24 22:17:59', '1'); +INSERT INTO `tb_article` VALUES ('324', '2', '区城管局开展餐饮业燃气安全检查', '

日前区城管执法监察局各属地执法队走访辖区内各餐饮企业,开展餐饮业燃气安全检查。城管队员在检查中细致排查燃气安全隐患,重点检查餐饮企业是否安装燃气浓度监测装置,燃气管路是否老化,排风扇防爆灯是否安装到位等情况。检查中发现有部分餐饮企业燃气使用不规范燃气管存放不规范等问题。城管队员向餐饮企业下发整改通知书,督促被检查单位进行自查整改,落实企业燃气安全主体责任,切实消除燃气安全隐患。

', '17', '1', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2015-05-19', '系统管理员', null, null, '2015-05-24 22:18:07', '2015-05-24 22:18:07', '1'); +INSERT INTO `tb_article` VALUES ('325', '4', '定都阁', null, '0', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150524_224542_933745.jpg', null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 22:45:42', '2015-05-24 22:45:42', '1'); +INSERT INTO `tb_article` VALUES ('326', '4', '戒台寺', null, '0', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150524_224606_653614.jpg', null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 22:46:06', '2015-05-24 22:46:06', '1'); +INSERT INTO `tb_article` VALUES ('327', '4', '潭柘寺', null, '1', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150524_224618_396989.jpg', null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 22:46:18', '2015-05-24 22:46:18', '1'); +INSERT INTO `tb_article` VALUES ('328', '4', '双龙峡', '

双龙峡自然风景区是京西新开发的一个风景区,位于门头沟区斋堂镇火村南2.5公里的青山翠谷中。双龙峡自然风景区主体形象概括为六句话应该是:十里溪流 百潭瀑布 千亩红杏 万顷林海 青山翠谷 世外桃源 苍山如海,峰峦巍峨俊秀,被喻为“小九寨”、“百瀑布”。


可以欣赏的主要景点有:玉龙湖、清幽湖、坐听双琴、仙女湾、第一瀑布(高29.7米、宽5米)、千蛙 蜂、七音瀑、双龙入水、小九寨沟、琴玉潭、三百年野生猕猴桃、仙女湾、双龙戏龟、青蛙石、二百年野生猕猴桃仙聚柳、送仙松、第二瀑布(高30米、宽10米)、原始森林。第一 瀑布至第二瀑布山谷内,沿溪流、山径,藤蔓植物与灌木、乔木纠缠盘结,形成约五公里长的天然植物走廊,郁郁葱葱,号为“藤萝谷”,为双龙峡一大奇观。景区概括为:“十里溪流、百潭瀑布、千亩红杏、万顷林海。”真可谓青山翠谷,峰峦巍峨俊秀。到了夏季山花遍地,溪水潺潺好一派北国秀色,所以又有“小九寨”之称。


第一瀑布(日月潭)

双龙峡 (原名水湖子):在京西的景点中,还是第一次发现这样大瀑布,落差是 35 米,瀑宽 5 米。是名副其实的“京西第一瀑”。在远处看,像银河落地,如山风摧树,倒近处看到的是圆圆的太阳潭和半边下弦月,所以称之“北国日月潭”。还有一条绿色长龙,隐于潭壁上。似要出水之状,并且有曾经出水时走过的脚印。


青蛙石

双龙峡 牛公山、牛蛙山-话说此地有一个泉眼,千万蛙靠此生存,牛公山在此 放牧,牛马千头几乎天天在此集饮。忽然,一年夜间大雨从天而降,洪水顺山而流,眼看山中万物,顷刻间即殁 , 就连都会洗劫一空。恰逢卯日星君知晓,站在其山岭上猛叫三声,把牛群惊动,牛群用身体筑起防护墙,保护所有生灵跳散,青蛙逃上山坡了望,牛公撇下牛群逃到半坡之上幸免遇难。牛救了全部生灵牺牲了自己。所以自今上面为金鸡岭,下面为牛公坡。东坡上的每一个山包,都是一个青蛙头在睁大眼睛目视谷中。

谷中稀有植物上百种。有二级保护植物 200 年生野生猕猴桃,盘缠其间,摘一颗清喉醒脑 。碗口粗的野葡萄、灵绡树不分 你我的缠在一起,不情愿的给行人腾出了一条绿色胡同。不时葡萄株能伸到你的口边。


双龙峡

火村为门头沟区斋堂镇辖村。位于镇域东部,东南距区政府驻地 33 公里,西距镇驻地2公里,北邻高铺(新)村 1.5 公里,村域面积 14.56 平方公里。火村地势自南向北渐低,土壤为山地淋溶褐土。植被为低山(海拔 400 米)旱生山杏、荆条灌丛和人工林。

村域有南山溪流,注入清水河。东山有泉水供民饮用,村中地下水埋深 10 余米。村民多以农副业为计,种植玉米、谷子等作物 760 亩,年产粮 6.8 万公斤;栽植核桃、杏等干鲜果树,果品年产量 46.9 吨 . 火树红杏果质优异 , 闻名京西 . 火村在抗日战争期间 , 建立抗日革命根据地 , 与侵华日寇浴血奋战 , 先后被日寇烧村七次。





地址:北京市门头沟区斋堂镇火村双龙峡景区 

电话:(010)69819310


', '1', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150524_224630_442929.jpg', null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 22:46:30', '2015-05-24 22:46:30', '1'); +INSERT INTO `tb_article` VALUES ('329', '4', '百花山', '

百花山国家级自然保护区地处北京西部,位于北京市门头沟区清水镇境内,2008年经国务院批准在北京百花山自然保护区基础上晋升为国家级自然保护区。

保护区是以保护暖温带华北石质山地次生落叶阔叶林生态系统为主的自然保护区,总面积为21743.1公顷。

地址: 北京市门头沟区清水镇百花山林场(门头沟与房山交接处) 

电话: (010)60390257


', '8', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150524_224645_154137.jpg', null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 22:46:45', '2015-05-24 22:46:45', '1'); +INSERT INTO `tb_article` VALUES ('330', '4', '爨底下', '

爨底下村位于北京西郊门头沟区斋堂镇,川底下村,实名爨底下。因在明代“爨里安口”(当地人称爨头)下方得名。位于京西斋堂西北狭谷中部,解放前属宛平县八区,现属斋堂镇所辖。距京90公里,海拔650米,村域面积5.3平方公里,清水河流域,温带季风气候,年平均气温10.1℃,自然植被良好,适合养羊,养蜜蜂。爨底下是国家A级景区。

爨底下村人(户主及子女)全姓韩。相传是明代由山西洪洞县大槐树下移民而来,原村址在村西北老坟处,后因山洪暴发,将整个村庄摧毁。只有一对青年男女,外出幸免遇难。为延续韩族后代,二人以推磨为媒而成婚,并在现址立村,婚后所生三子,为:韩福金、韩福银、韩福苍。三子分三门,即:东门、中门、西门。始以福字为第一辈序排20辈:福景自守玉、有明万宏思、义巨晓怀孟、永茂广连文,至今已发展到17辈,茂,字辈。

还相传是因为爨被村民们编成了顺口溜:兴字头,林字腰,大字下面架火烧,大火烧林烧的兴,岂不很热?所以姓韩,谐音寒。

全村现有人口29户,93人,土地280亩全村院落74个,房屋689间。大部分为清后期所建(少量建于民国时期)的四合院、三合院。依山而建,依势而就,高低错落,以村后龙头为圆心,南北为轴线呈扇面形展于两侧。村上、村下被一条长200米,最高处20米的弧形大墙分开,村前又被一条长170米 

的弓形墙围绕,使全村形不散而神更聚,三条通道惯穿上下,而更具防洪、防匪之功能。

爨底下是国家3A级景区,市级文明单位,市级民俗旅游专业村,2003年被国家建设部,国家文物局评为首批中国历史文化名村,区级革命传统教育基地。著名的专家哲文先生讲:爨底下古山村是一颗中国古典建筑瑰宝的明珠,它蕴含着深厚的北方建筑文化内涵,就其历史,文化艺术价值来说,不仅在北京,就是在全国也属于珍贵之列,公之于世,功莫大焉。

\"爨底下村全景\"

村名

爨底下的“爨”字,共有三十笔,发cuàn音,为了方便记忆可拆开说:兴字头,林字腰、大字下面加火烧,大火烧林,越烧越兴,岂不很热,而爨底下人全姓韩,取谐音(寒)则为冷意,冷与热在五行之中可以互补,宇宙万物有天就有地,有日就有月,有男必然有女,有冷就得有热,故而爨底下村在历史上曾辉煌过。

“爨”字从字意解释为:家,永不分爨,即永不分家。为:灶,烧火煮饭。为:姓,陕西省歧山县有爨家庄,全村千口余人皆姓爨。此字难写难认,会写则成爨,不会写则成一片,故而用谐音“川”字代之,但仍发爨音。最早是在1942年为方便抗日干部特别是外地抗日干部通讯联系,将“爨”改成“川”,爨与川并用至五十年代末,基本就不用爨字了,1995年搞旅游开发后,爨字又大放熠彩。


地址: 北京市门头沟区爨底下景区内 

', '2', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150524_224700_823152.jpg', null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 22:47:00', '2015-05-24 22:47:00', '1'); +INSERT INTO `tb_article` VALUES ('331', '4', '灵山', '

    盛夏避暑的好去所。夏季,这里“丰草绿缛而争茂,佳木葱茏而可悦”,走在林中,让人备感舒适。自然山水自然景,自然空调自然风,凉风习习,心惬意,来到灵山方知城乡大不同。入夜,遥望星空,这里视野开阔,可以看到“天阶月色凉如水,卧看牵牛织女星”的美景。

    灵山自然风景区距京城122公里,其顶峰海拔2303米,是北京的第一峰。西与龙门森林公园毗邻;东与龙门涧景区相连;南与109国道相通。由于其海拔高度所致,使灵山在方圆25平方公里内形成北京地区集断层山、褶皱山为一体,奇峰峻俏、花卉无垠的自然风景区。

这里既有暖温带植被,又有西伯利亚寒冷地带亲缘植被。生长着杜鹃、丁香、白桦林和榛子、黄花、等植物,尤以高山草甸最为著名,因此,它是新疆细毛羊、伊犁马、青藏牦牛在北京唯一的天然繁衍养殖场,也是野生动物的乐园。

    灵山风景区内有旅游饭店3座,可同时接待就餐1200人,住宿500人以上。此外,村内有农家旅店,如有兴趣住进“山兄弟”、“山里人”,定能享受一下山里人的烤全羊、烤野兔和手扒羊肉等野味。

成人门票:35元

地址:门头沟区灵山景区管理处

公交车:乘坐公交汽车、电车到苹果园下车前200米转乘929支线至双塘涧(灵山脚下)每天四趟。


电话:010-61827994、61827028

门票:35元/人,老人、学生、残疾人士凭有效证件17.5元/人,军人凭有效证件免费。

地址:北京市门头沟区灵山景区

', '4', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150524_224714_571477.jpg', null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 22:47:14', '2015-05-24 22:47:14', '1'); +INSERT INTO `tb_article` VALUES ('332', '4', '龙门涧', '

    龙门涧位于门头沟区清水乡燕家台西北侧。有长江三峡之峻拔,桂林山水之秀美,又有匡庐之飞瀑,黄山之叠泉。因此人们以“燕京小三峡”、“京西小桂林”、“大自然中的山水盆景”等赞语赞美龙门涧。

    龙门涧分为东西两涧,各绵延十余里。由于这里聚集了我国几类著名风景区的景色,诸如“三峡之气势”、“桂林之秀美”、“匡庐之飞瀑”、“黄 山之叠泉”,都可以在这里看到缩影,因此,龙门涧得到了许多 如“燕京小三峡”,“京西小桂林”、“京西小黄山”等美誉。 进入龙门涧峡谷,两侧山峰对峙,高耸碧空,如斧劈成。涧内泉水涓涓,清澈碧透,溪水潺潺,奔腾飞溅。冬日崖挂冰凌,夏日绿枝俏控。还有将军石、一线天、试剑峰、黑龙潭、听音阁、祭天台等景观。半山腰上,在一簇簇鲜花掩映下,十几个巨大的石灰岩洞若隐若现,为游人增添了无穷乐趣。由于山高谷深,日照温度低,盛夏酷暑时节,涧内却凉爽宜人,是旅游度假的好去处。


地址:门头沟区西部清水镇燕家台村

电话:(010)61828185,(010)61828185

', '4', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150524_224755_937404.jpg', null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 22:47:55', '2015-05-24 22:47:55', '1'); +INSERT INTO `tb_article` VALUES ('333', '4', '妙峰山', '

  国家3A级旅游景区。位于北京市门头沟区妙峰山镇。109国道34公里处。距北京市区55公里,是集人文和自然风光于一体的自然风景旅游景区。妙峰山惠济祠等庙宇群始建于辽金时代,后经历次战争运动仅存少量遗址,成为北京红色景点之一。1986年由有关部门组织重建,1988年成立景区重新对游人开放。


山庙会

  北京的庙会起源于辽代,称“上巳春游”。元、明两代庙会进一步兴起。妙峰山庙会始于明代,每年农历四月初一至十八妙峰山开山半月余,日以万计的香客络绎于途,有的一步一揖,三步一扣首;有的竟以背鞍、滚砖、耳箭、悬灯等方式进香以示虔诚。各种民间香会边走边练,幡旗飘扬,鼓磬齐鸣,观者如潮。妙峰山庙会期,京都万人空巷,其规模堪称华北之首。

妙峰山传统庙会始于明代崇祯年间,距今已有300余年的历史。每年的农历四月初一至十五,来自全国各地数十万善男信女,几百档民间花会汇聚妙峰山,朝顶进香,酬山赛会,施粥布茶,场面之壮观,信众之虔诚实属罕见。清《燕京岁时记》载:“妙峰山每属四月,自初 一开庙半月,香火极盛,人烟幅辏,车马喧闹,夜间灯火之繁灿如列宿,香火实可甲于天下矣”。1925年,北京大学国学门研究所对妙峰山庙会进行了专门调查,出版了《妙峰山进香专号》,此次调查开创了我国民俗学田野调查的先河,妙峰山因此成为中国民俗文化的发祥地。

妙峰山庙会在文革和抗战期间中断了数十年,一九九零年京城老香会“秘密”到妙峰山朝顶进香,酬山赛会。一九九三年政府正式批准妙峰山举办首届春香庙会,古老的妙峰山庙会文化又焕发出新的生机。如今的妙峰山庙会除完整保留了明清时期香客朝顶,香会酬山,施粥、布茶、舍馒头等传统形式外,还增加了商品交易、民俗展示、文艺演出等新内容,形成京城独具魅力、积极健康的民俗活动。


山花会

  花会最早称香会,因解放后破出迷信,改香会为花会。花会属于民间组织,始见于明朝中叶,花会有“文会”和“武会”之分。“文会”:各种行业都有自己的会,如“粥茶会”、“面茶会”、“青菜会”、“献盐会”、“缝绽会”等几十种名目。“武会”:门内有杠箱会、狮子会、中幡会、杠子会、石锁会、双石会、吵子会、花坛会、花钹大鼓、开路会、五虎棍、秧歌会、太平会等十三种名目。门外有旱船、踏车、云车、小车等各名目。此外还有吏部杠子会、户部秧歌会、礼部大执事会、兵部杠箱会、刑部石锁会、工部石锁会、太子府花坛会、掌礼司太狮会、翰林院五虎棍会、雪池五虎打路会等十堂官会。

旧时花会献艺的场所主要是“三山”“五顶”。“三山”既平谷的丫髻山、门头沟的妙峰山、石景山的天台山。“五顶”既京城五座比较闻名的娘娘庙:东直门外的称东顶、海淀蓝靛厂的称西顶、永外大红门的称南顶、安定门外的称北顶、丰台草桥的称中顶。乾隆皇帝封妙峰山娘娘庙为金顶,地位在“五顶”之上。


花会表演

  清朝前妙峰山每年两次庙会,农历四月初一至十八的春香庙会和农历七月初一至十五的秋香庙会,庙会期间花会必来朝顶进香,各会以到妙峰山朝顶为荣,并规定“未到妙峰山朝顶的花会不为正宗会”,各会严格遵循“车笼自备,茶水不扰”的会规,提倡一秉虔心和无私奉献精神。

  妙峰山庙会兴盛时期花会多达几百档,自1990年恢复妙峰山庙会以来,已有130余档民间花会遵循传统会规到妙峰山朝顶献艺。


慈禧与娘娘庙

  北京西部的妙峰山,盛产玫瑰,据说是中国面积最大、品种最好的玫瑰养殖地;妙峰山的玫瑰虽好,但不如山上的娘娘庙名声大。每年农历的四月初一至十五,是妙峰山朝山之日,来自各地上百档花会云集,成千上万香客来往于香道之间,人山人海,蔚为壮观。民俗学家将妙峰山庙会誉为中国民俗文化研究的发祥地。老北京人甚至有“妙峰山的娘娘——照远不照近”歇后语。

  妙峰山娘娘庙肇始何年不详,笔者分析,至少在明代就已经存在。据清代史料记载,有相当一段时间,朝廷对妙峰山庙会是禁止的。妙峰山庙会在清代末期名声远播,影响华北乃至全国,是与西太后慈禧的影响不无关系。


慈禧与眺远斋

  在颐和园内谐趣园北侧,高台之上,有一座巍峨颐和园眺远斋的大殿,五楹卷棚歇山式,前廊后厦,颇为气派。坐在殿内,对颐和园外的景致一览无遗,这就是眺远斋,是专门为慈禧观看前往妙峰山进香花会修建的。

  却说这一年四月,春暖花开,慈禧来到谐趣园观花赏景,忽然听见园外锣鼓喧天,喝彩声不断,便问身边的李莲英:“园外这么热闹是干什么呢?”李莲英急忙差人出去察看,回来禀报:“是去妙峰山进香的走会。”

  慈禧一向喜欢热闹,便对李莲英说:“我想看看走会的。”李莲英哪敢答应,叩头回奏说:“老佛爷出园看走会事小,可惊了凤驾奴才担当不起。今年的香会说话就过完了,回头在这谐趣园内专修一座宝殿,供老佛爷赏花看会,岂不是两全其美。”慈禧点头应允。于是,谐趣园内大兴土木,赶在第二年的四月初一,眺远斋大功告成。慈禧每每登上大殿,观看各路香会表演,看得兴起,少不了发个懿旨,赏赐哪一个香会点什么物件。这一来,赴妙峰山的香会纷纷来到颐和园外,给老佛爷献上绝技,指望得到封号或者赏赐。

  妙峰山的香会分为“武会”和“文会”两种,并有“老会”和“圣会”之称。“老会”是百年以上的 

香会,而“圣会”则不到百年。据《京都风物志》载:“城内诸般歌舞之会,必于此月登山酬赛,谓之‘朝顶进香’。如开路(要耍三股叉)、秧歌、挎鼓、高跷、太少师、五虎棍、扛箱会”等。“武会”大多从京城菜市口的山西洪洞会馆、白纸坊纸业公会、德胜门外松林闸三处出发,途中,锣鼓齐奏,每到茶棚,都要表演,“观者如堵,使进香沿途十分热闹壮观”。“文会”又为“善会”,是北京、天津地区百姓自发组织起来为进香人服务的慈善组织,如“茶棚老会”(供茶)、“施粥老会”(供粥)、“献盐老会”(供盐)、“拜席老会”(供席棚)、“燃灯老会”(供灯火)等。

  据说,自打慈禧在眺远斋观赏香会以后,便有了“皇会”之说,也就是得到慈禧赏赐的香会有了可以炫耀的新旗号。


慈禧与“金阶”

  去妙峰山进香的路,原为崎岖小径,陡峭艰险。清同治年间,慈禧太后提出,准备去妙峰山进香。太监刘诚印闻言,便以素云道人名义,会同大太监安德海出资重修香道。将山道拓宽7尺,选取天然青石板,一层层铺砌,绵延数里。工程浩大,完全凭借人力,加之工期紧,气候恶劣,造价昂贵。据说每铺一级石阶,造价就是一两白银,因而得“金阶”之名。


慈禧与“头炷香”

  到妙峰山娘娘庙进香,过去讲究抢烧头一炷香。据说,谁得以烧得四月初一头炷香,便会“如愿以偿“。于是香客们千方百计纷纷争先,早早上山,争抢头柱香。

  身居紫禁城皇宫内的娘娘们也相信头炷香的魅力,于是,在一个

善来金阶时期,头炷香便成了皇室的“专利”。到了清同治、光绪年间,慈禧也要去妙峰山进香,这头炷香便被慈禧垄断了。她曾下懿旨:“先期预诏庙祝,必须宫中进香后,始行开庙,谓之头香。”有宫词云:“昨夜慈宁亲诏下,妙高峰里进头香。”(故宫里的慈宁宫,是太后居住的地方。这里指慈禧。)

慈禧手书匾额

  妙峰山娘娘庙正殿是灵感宫,有正殿三间,供奉“天仙圣母碧霞元君”。门檐原来悬挂三块匾额,分别是“慈光普照”、“功侔富媪”、“泰云垂荫”。据说原来均为慈禧所书,现已无存。


地址: 北京门头沟区妙峰山镇

电话:(010)61882936

', '13', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150524_224808_352554.jpg', null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 22:48:08', '2015-05-24 22:48:08', '1'); +INSERT INTO `tb_article` VALUES ('334', '3', '大鸭梨', '

地址:北京近郊门头沟区新桥南大街49号(月季园小区对面)

电话:(010)69834563

', '6', '0', '11', '1', '1', '1', '9', null, 'download/image_url/20150524_231027_730846.jpg', null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 23:04:05', '2015-05-24 23:04:05', '1'); +INSERT INTO `tb_article` VALUES ('335', '3', '福华肥牛', '

地址:北京近郊门头沟区新桥南大街49号(月季园小区对面)

电话:(010)69846725

', '30', '0', '11', '1', '1', '2', '8', null, 'download/image_url/20150524_231021_399721.jpg', null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 23:04:49', '2015-05-24 23:04:49', '1'); +INSERT INTO `tb_article` VALUES ('336', '3', '京西晨光饭店餐厅', '

地址: 门头沟区双峪路1号京西晨光饭...

电话:(010)69858383


', '3', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150526_161401_987099.jpg', null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 23:06:33', '2015-05-24 23:06:33', '1'); +INSERT INTO `tb_article` VALUES ('337', '3', '潭柘嘉福饭店', '

地址:北京海淀区门头沟区潭柘寺门口

电话:(010)60863587,(010)60862781


安英客栈位于京城门头沟区西部。那里有许多独特的建筑、塔林。那里的大锅、巨钟、清泉、瓷器都有说不完的传奇故事。等待你去聆听。

登山,呼吸清新的空气,摆脱憋闷的北京城的繁重的紧张、压力。

周末,清晨在潭柘寺公园里溜溜早,看看青青的松,翠绿的竹,喝上一壶清茶。实在爽极了,美极了。

回程的路上逛逛戒台寺。看看那巨大的戒台,沧桑的松柏。找个石台坐坐,反思一下这喧嚣的、无味的生活,或许能获得些须灵感与思绪。给自己一个约会。

有的到潭柘寺为的是礼佛;有的是欣赏古老的建筑美;有的是呼吸新鲜的空气,强身健体。而我觉得她真正的美,需要你用心去衡量。不要匆匆的去,匆匆的回,那样你看到的只是空荡的,陈旧的外表。建议你,周末去,住上一宿,清晨的时候,走在那幽静的神秘的寺院里。感受心灵的洗礼。如果能带上几本书,那才是一次丰富的精神旅游。


', '2', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150526_161220_275205.jpg', null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 23:06:44', '2015-05-24 23:06:44', '1'); +INSERT INTO `tb_article` VALUES ('338', '3', '龙泉宾馆西餐厅', '

地址:水闸北路21号龙泉宾馆

电话:(010)69843366

', '0', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150526_160834_985862.jpg', null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 23:07:02', '2015-05-24 23:07:02', '1'); +INSERT INTO `tb_article` VALUES ('339', '3', '今天假日酒店', '

电话:010-69826822

地址:门头沟双峪路39号


', '0', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150526_160348_11856.jpg', null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 23:07:16', '2015-05-24 23:07:16', '1'); +INSERT INTO `tb_article` VALUES ('340', '3', '新新饭庄', '

地址:近郊门头沟区新桥大街49号(北京市门头沟区政府)

电话:(010)69862198


门头沟区政府对面,有一家新新饭庄,这里有我魂牵梦绕的肉包子。


', '2', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150526_155952_365641.jpg', null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 23:07:41', '2015-05-24 23:07:41', '1'); +INSERT INTO `tb_article` VALUES ('341', '3', '顶风针西饼店', '

地址: 冯村商业街2014号

电话:(010)60869774

顶风针食品有限公司创立于2005年9月10日,主要经营产 品包括生日蛋糕、面包、冷热饮品、中西式点心等。集“生产”“配送”“销售”为一体,以高品质的产品,高档次的装修,平民化的价格,亲切友善的服务,便利的连锁店铺,赢得了消费者的赞赏与好评! 

公司自成立以来一直坚持“立足以人本,以‘高效率、高标准、高品质'严格要求企业全体员工,力争为广大消费者提供最完善的产品与服务”。


', '3', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150526_145553_259711.jpg', null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 23:07:51', '2015-05-24 23:07:51', '1'); +INSERT INTO `tb_article` VALUES ('342', '3', '老家肉饼', '

地址:近郊门头沟区新桥南大街14号(近物美新隆店)

电话:(010)69842527

', '3', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 23:08:10', '2015-05-24 23:08:10', '1'); +INSERT INTO `tb_article` VALUES ('343', '5', '大峪中学', '

北京市大峪中学始建于1946年,1978年列为北京市重点中学,2004年进入北京市普通高中示范校行列。是一所校风优良、质量上乘的北京市重点中学,莘莘学子向往的京西名校。学校位于九龙山下,永定河畔,北京门头沟城镇中心的滨河德露苑18号,新的开发区内。


学校地址:门头沟区滨河德露苑18号

邮政编码:102300

联系电话:61864110

学校网址:http://www.dyzx-bj.com/

', '11', '0', '11', '1', '1', '2', '9', null, 'download/image_url/20150526_140229_544065.jpg', null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 23:22:24', '2015-05-24 23:22:24', '1'); +INSERT INTO `tb_article` VALUES ('344', '5', '育园中学', '

育园中学

', '0', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 23:22:50', '2015-05-24 23:22:50', '1'); +INSERT INTO `tb_article` VALUES ('345', '5', '首都师范大学附属中学永定分校', '

首都师范大学附属中学,永定中学

', '0', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 23:23:03', '2015-05-24 23:23:03', '1'); +INSERT INTO `tb_article` VALUES ('346', '5', '大峪中学分校', '

大峪中学分校

', '3', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 23:23:22', '2015-05-24 23:23:22', '1'); +INSERT INTO `tb_article` VALUES ('347', '5', '新桥路中学', '

新桥路中学

', '1', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 23:23:47', '2015-05-24 23:23:47', '1'); +INSERT INTO `tb_article` VALUES ('348', '5', '育新中学', '

育新中学

', '2', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 23:23:59', '2015-05-24 23:23:59', '1'); +INSERT INTO `tb_article` VALUES ('349', '5', '三家店铁路中学', '

三家店铁路中学

', '3', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 23:24:10', '2015-05-24 23:24:10', '1'); +INSERT INTO `tb_article` VALUES ('350', '5', '坡头中学', '

坡头中学

', '1', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 23:24:34', '2015-05-24 23:24:34', '1'); +INSERT INTO `tb_article` VALUES ('351', '90', '捐赠我们', '

支付宝捐赠二维码                         微信捐赠二维码

    




', '0', '0', '11', '1', '1', '2', '19', null, null, null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 10:39:11', '2015-05-26 10:39:11', '1'); +INSERT INTO `tb_article` VALUES ('352', '90', '关于我们', '

门头沟信息网(http://www.jflyfox.com/mtg以下简称“本网站”)是由个人承建的为人民服务的门头沟信息网站。

门头沟信息网主要提供了全面的生活,新闻,美食,旅游、教育等各个方面的关于门头沟的资讯。


可通过如下方式联系我们:

联系方式:qq(369191470)


', '1', '0', '11', '1', '1', '2', '13', null, null, null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 10:39:24', '2015-05-26 10:39:24', '1'); +INSERT INTO `tb_article` VALUES ('353', '90', '联系我们', '

地址:北京市门头沟

联系方式:qq(369191470)

', '0', '0', '11', '1', '1', '2', '15', null, null, null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 10:39:53', '2015-05-26 10:39:53', '1'); +INSERT INTO `tb_article` VALUES ('354', '90', '免责声明', '

门头沟信息网(http://www.jflyfox.com/mtg以下简称“本网站”)是由个人承建的为人民服务的门头沟信息网站。


门头沟信息网主要提供了全面的生活,新闻,美食,旅游、教育等各个方面的关于门头沟的资讯。


请用户使用本网站前仔细阅读本法律声明。您一旦使用本网站则表明您已明知并接受这些条款。用户必须按照法律法规的规定和本声明的要求使用本网站的信息和服务,否则本网站将依法追究有关当事人的法律责任。


一、知识产权

域名、标识及专有名称

本网站所使用的www.jflyfox.com、Logo等专有标识,未经网站所有者许可,任何人不得使用。


版权

本网站包含的所有内容(包括但不限于:文本、图形、图片、视像及声音内容、LOGO标识、版面设计、专栏目录与名称、内容分类)的所有权归网站承办人所有。


本网站的内容和软件均受《中华人民共和国著作权法》及其它相关法律的保护。任何单位或个人将本网站提供的内容与服务用于商业、盈利、广告性等目的时,需征得本网站承办人许可;将本网站提供的内容与服务用于非商业用途时,应遵守著作权法以及其他相关法律的规定,不得侵犯网站所有者及相关权利人的权益。


版权异议

如权利人认为本网站内容中所涉及的文字作品、图片和音视频资料(以下简称“作品”),侵犯其著作权的,请及时书面通知本网站,本网站将依法删除被指侵权的作品或断开相应的链接;但权利人不能出示有效身份证明、著作权权属证明及侵权情况证明的,视为未提出异议。因权利人的通知导致本网站错误删除作品,或者错误断开与作品的链接的,本网站不承担任何责任。


二、用户信息

信息采集

当用户浏览本网站时,本网站的系统将自动收集用户的IP地址及网站浏览信息。这些信息有助于我们在整体基础上评估我们的网站浏览者以及用户如何使用、浏览我们的网站,包括浏览者和用户对每一网页的访问次数、频率和浏览时间。通过收集上述信息,我们将进行流量统计,从而改进网站的管理和服务。


信息使用

用户向本网站提供的个人信息将可能用于下列用途:

(1)核实用户身份,并提供相应的服务;

(2)用于编制有关网站使用的流量统计数据;

(3)通过发送电子邮件或以其它方式,告知用户相关信息。


在未得到用户许可前,本网站不会将用户的任何个人信息提供给任何第三方,但发生以下事由的除外:

(1)按照本网站制订的规则和程序,本网站有充分的理由相信已经获得用户的授权;

(2)按照中华人民共和国的法律、法规、政策等规范性法律文件规定,要求本网站提供的;

(3)不能归咎于本网站的客观情势,所导致的个人资料的公开;

(4)因不可抗力,所导致的个人资料的公开;

(5)由于用户自身过错,而导致的个人资料的公开;

(6)超出本网站使用的硬件和软件的技术能力范围,所导致的个人资料的公开;

(7)紧急情况下为维护用户个人或社会大众的隐私和安全的;

(8)为维护本网站的所有权及相关权利的。


信息安全

本网站将对用户所提供的资料进行严格的管理及保护,并将使用相应的技术措施(例如设置服务器备份数据和对用户密码加密等),防止用户的个人资料丢失、被盗用或遭窜改。如因不可抗力或计算机病毒感染、黑客攻击等特殊原因,导致用户信息被破坏、泄密并受到损失的,本网站将采取必要措施尽力减少用户的损失,但本网站对此不承担任何责任。


用户权利

用户可通过本网站的相关网页查看、更新并修改提供给本网站的个人信息,也可以要求本网站删除该信息。


三、免责

本网站对本网站上所有由第三方提供的信息、内容和服务,不提供明示或暗示的担保。本网站对使用上述信息、内容和服务所造成的任何损失不承担责任,包括直接损失和间接损失。


', '0', '0', '11', '1', '1', '2', '20', null, null, null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 10:40:04', '2015-05-26 10:40:04', '1'); +INSERT INTO `tb_article` VALUES ('355', '90', '广告服务', '

广告服务请通过以下方式联系:

联系方式:qq(369191470)

', '0', '0', '11', '1', '1', '2', '17', null, null, null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 10:40:30', '2015-05-26 10:40:30', '1'); +INSERT INTO `tb_article` VALUES ('356', '10', '滨河公园', '

中文名称:滨河公园

面   积:48000平方米

建成时间:1988年

北京市门头沟区滨河公园建于1988年,建设前曾经是蚊蝇遍布的黑河污水沟河道。该公园总面积48000平方米,其中绿地面积36000平方米,南至双峪路环岛,北至河滩东路绿岛家园,南北长1610米,东西宽30米,贯穿6个居民小区,覆盖约2万人口,为开放性公园。

该公园以道路为中心,从南到北依次为自然景观、煤矿工人雕塑主题广场区、运动健身区、幼儿园、门球场和服务区,形成了“绿树成荫,鸟语花香,三季有花,四季常绿”的景观风貌。


', '0', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150526_133245_578545.jpg', null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 12:19:59', '2015-05-26 12:19:59', '1'); +INSERT INTO `tb_article` VALUES ('357', '10', '晨曦公园', '

中文名称:晨曦公园

地理位置:北京市门头沟区黑河沟畔

建地面积:0.45万平方米

绿地面积:0.35万平方米

晨曦公园位于北京市门头沟区黑河沟畔,为城子大街与河滩邮政局东侧的滨河带状绿地,总面积0.45万平方米,其中绿地面积0.35万平方米。

为与河道治理景观相互呼应,园内设置标志景观石一块,建有休闲长廊一座,栽植各类树木,设置景观栏杆等,使该公园成为连接河与岸的介质,展示区域形象的载体。

', '0', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150526_133239_940979.jpg', null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 12:20:21', '2015-05-26 12:20:21', '1'); +INSERT INTO `tb_article` VALUES ('358', '10', '东辛房公园', '

中文名称:东辛房公园

建  于:1954年

占地面积:17000平方米

地面铺装:1200平米

东辛房公园建于1954年,位于北京市门头沟区东辛房大街南侧,总占地面积17000平方米。原公园内只是简单的种植了一些树木,后又进行了造景、喷泉、广场、园路的建设,使其满足周边城市居民休闲娱乐的需求。

2010年,新建仿古亭一座,地面铺装1200平米,建管理用房一处,并增设座椅、石桌、小品等。极大改善了城市形象、提升了城市品位,为东辛房地区广大市民创建了更加优美舒适的生活、休闲和娱乐环境。


', '0', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150526_133231_831983.jpg', null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 12:20:39', '2015-05-26 12:20:39', '1'); +INSERT INTO `tb_article` VALUES ('359', '10', '福鼎公园', '

中文名称:福鼎公园

地理位置:北京市门头沟区

占地面积:21550平方米

建   于:2003年

福鼎公园位于北京市门头沟区门城新城北部城子大街和滨河路交汇处,西至城子大街,北至水闸公路桥,东至滨河路,南至铁路护坡,总面积3.3万平方米。公园种植各类苗木52000余株,绿化面积近1.2万平方米。园内主要以植物造景为主,小品景致有“福亭”、“福鼎”、“福桥”、健身广场、假山、喷泉、叠水、景观灯等。

公园里还有一处承载着历史印记的建筑——桥头碉堡,它见证了日本侵略中国的历史。该公园已与建于2003年占地21550平方米的在水一方公园连成一体。


', '0', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150526_133221_52915.jpg', null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 12:28:34', '2015-05-26 12:28:34', '1'); +INSERT INTO `tb_article` VALUES ('360', '10', '光荣园', '

光荣园位于门头沟区光荣院,北邻门头沟区档案馆,依山傍水、交通便利。公园修建于2010年10月,占地面积6500平方米,其中绿地面积3500平方米。

绿地内建花岗岩步道270平方米,景观石2块,修建京西革命光荣墙1面,缅怀门头沟区战争年代的革命先驱。

目前工程主体已全部完工,它在为广大市民提供良好城市居住环境的同时,承载着弘扬门头沟区革命老区光荣传统、记载京西革命文化的重要使命,是青少年爱国主义教育基地。光荣园的修建得到全区人民的大力拥护和社会各界的普遍关注,接受社会捐助500万元。

', '0', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150526_133213_637400.jpg', null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 12:28:42', '2015-05-26 12:28:42', '1'); +INSERT INTO `tb_article` VALUES ('361', '10', '黑山公园', '

中文名称:黑山公园

地理位置:中国北京

开放时间:6:00——8:30

景点级别:北京市精品公园

黑山公园历史上曾是清代葛布喇墓地,1956年辟为公园,是解放初期北京市修建的少数几个公园之一。公园北部为自然山丘,园内百年松柏苍劲,林木花疏扶摇,具备良好的园林基础。

多年来疏于管理,特别是“文化大革命”遭遇破坏,部分用地被挤占,园容每况逾下。上世纪90年代曾做小规模整修,2004年作为门头沟区重点工程全面改造。仅半年时间,公园完成了拆墙透绿、景区建设、平面布局和竖向的调整。增加了广场、园门、景亭、喷泉、健身及儿童游憩园地、园林服务设施等,同时对湖面、水榭、山体和洞门做了适度完善,使公园功能和景观都有了大幅度的提升。2004年被评为北京市精品公园。

地址:北京市门头沟区黑山大街12号


', '0', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150526_133202_670496.jpg', null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 12:28:49', '2015-05-26 12:28:49', '1'); +INSERT INTO `tb_article` VALUES ('362', '10', '京浪岛文化体育公园', '

中文名称:京浪岛文化体育公园

建造时间:2010年

占地面积:18.3万平方米

京浪岛文化体育公园建于2010年,位于门头沟区三家店水库上游,西临水担路,东邻109国道和北京六环路,总面积18.3万平方米,其中绿地面积12.16万平方米,绿地率达到95%以上。公园内建有棒球场、垒球场、羽毛球场、网球场和拉膜亭等体育休闲设施。公园的建设使该岛成为一个花团锦簇、四季常青的生态绿岛,对涵养水源、美化环境、提高居民生活质量起到巨大的提升作用。


', '1', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150526_133147_592081.jpg', null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 12:28:58', '2015-05-26 12:28:58', '1'); +INSERT INTO `tb_article` VALUES ('363', '10', '京门铁路遗址公园', '

中文名称:京门铁路遗址公园

地理位置:北京市

气候类型:温带季风气候

占地面积:1.2万平方米

京门铁路遗址公园位于北京市门头沟区城子大街北侧,北接京门铁路,南至排洪沟,东至城子大街,西至铁路挡墙,总面积1.2万平方米,其中绿地面积0.8万平方米。该公园以铁路建设为主题,采用现代与传统相结合的设计手法,设置了风车、火车头等标志性景观构筑,着力打造出了京西独具特色的公园景观,形成景观亮点,在充分融合京西生态环境特色的基础上,满足了游人赏景休憩的游园要求,营造出实用美观,舒适宜人的公园环境。


', '0', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150526_133135_163999.jpg', null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 12:29:06', '2015-05-26 12:29:06', '1'); +INSERT INTO `tb_article` VALUES ('364', '10', '立思辰公园', '

中文名:立思辰公园

总面积:0.5万平方米

绿地面积:0.35万平方米

立思辰公园位于北京市门头沟区德露苑小区南侧,属社会性捐助公园,公园西至滨河路,南至规划中门寺沟,北临区法院,总面积0.5万平方米,其中绿地面积0.35万平方米。

该公园周边多为居住区,公园设计上在延续场地绿地为主的现状布局下,将现代简约的设计元素融入场地。园区内设置了大象雕塑、健身器械、休闲广场等小品和设施,营造出风格简约、温馨舒适的社区公园环境。


', '0', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150526_133124_592594.jpg', null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 12:29:14', '2015-05-26 12:29:14', '1'); +INSERT INTO `tb_article` VALUES ('365', '10', '门矿遗址公园', '

中文名:门矿遗址公园

位  于:北京市门头沟区

总面积:约887亩

原  为:门头沟煤矿

门矿遗址公园位于北京市门头沟区门城新城龙泉镇西北部九龙山下,总面积887亩。园区主体原为门头沟煤矿、城子煤矿近百年堆积的300余万立方的三座煤矸石山。

多年来,煤矸石山裸露的山体,每遇刮风,黑色扬沙肆虐之极,对门城地区乃至北京城区都造成很大的空气污染,是一个巨大的污染源。遇到雨季,山洪冲刷下的煤矸石沫形成的污水更是严重影响着当地居民的正常生活。

为改善地区居民生活环境,打造宜居城市,工程已于2010年9月开始施工,先后完成了土方清运、管线铺设及苗木种植等。

工程还将规划设计健身、休闲、娱乐等基础设施,并计划把周边矿区纳入到改造范围,提升改建成集居民休闲、健身、娱乐、避险为一体的门矿遗址公园。


', '2', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 12:29:21', '2015-05-26 12:29:21', '1'); +INSERT INTO `tb_article` VALUES ('366', '10', '门头沟新城滨河森林公园', '

中文名:门头沟新城滨河森林公园

面   积:586.68万平方米

地理区域:北京市门头沟区新城南部规划绿线范围内

绿地面积:524.5万平方米

门头沟新城滨河森林公园,位于北京市门头沟区新城南部规划绿线范围内,总面积586.68万平方米,其中绿地面积524.5万平方米,已于2010年下半年开工,预计2012年6月建成投入使用。

该公园地处著名的永定镇“定都峰”山脚下,处于长安街西延长线终点,传说元末明初第一谋士——姚广孝曾登顶此山,勘测地形再建北京城,此后该山被称为定都峰。定都峰四周群山绵延逶迤,山峰上巨石嶙峋,有“京西观景第一峰”之称。

山下龙口水库目前仅有少量水面,通过改造水库、种植景观林,恢复生态景观,最终环绕水库形成万亩森林公园,将有效地改善门头沟新城的生态环境,带动周边地区休闲度假产业的发展。


', '0', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150526_133107_587987.jpg', null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 12:29:38', '2015-05-26 12:29:38', '1'); +INSERT INTO `tb_article` VALUES ('367', '10', '葡东公园', '

中文名:葡东公园

位  置:门头沟区葡萄嘴环岛东侧

占地面积:16000平方米

绿地面积:12500平方米

葡东公园位于门头沟区葡萄嘴环岛东侧,南至葡东小区入口,北与中门寺生态沟相连,是专供周边居民休闲、娱乐、健身的公共场所。公园占地面积16000平方米,其中绿地面积12500平方米。园内休闲步道3560平方米,人工地形设计精巧,大型景观灯亮丽多彩,整体突显绿色、舒适、健康的生活品质,令人流连忘返。


', '0', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150526_133054_81675.jpg', null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 12:29:45', '2015-05-26 12:29:45', '1'); +INSERT INTO `tb_article` VALUES ('368', '10', '葡山公园', '

中文名称:葡山公园

地理位置:北京市

占地面积:92000平方米

建立时间:2003年

葡山公园位于门头沟区南北城区交接处,紧邻葡萄嘴环岛,北倚美丽的京西葡山,建于2003年,占地面积92000平方米,其中绿地面积7万平方米。园内主要以植物造景为主,设有仿古牌楼、健身广场、观景亭、湖区、长廊、水榭等。公园周边绿山环绕,环境清幽,令人心旷神怡。


', '0', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150526_133014_302376.jpg', null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 12:29:53', '2015-05-26 12:29:53', '1'); +INSERT INTO `tb_article` VALUES ('369', '10', '石龙公园', '

中文名:龙公园

建设面积:2200平方米

地  点:北京市门头沟区石龙医院

特  点:为游人增添了游览情趣

石龙公园位于北京市门头沟区石龙医院院内南侧(原锅炉房拆除地块),建设面积2200平方米。

通过精心的规划设计和景观改造,公园内建有简洁的休闲广场、八角重檐亭、古建廊架和休憩小品,为游人增添了游览情趣。

场地绿化以乔、灌、草复层生态搭配种植。利用常绿和落叶植物相互搭配,形成四季有景,层次丰富的景观环境。植物造景以春花植物为主,利用丰富多变的植物颜色,为医院环境增添勃勃生机,愉悦病人身心。


', '0', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150526_133002_123029.jpg', null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 12:30:02', '2015-05-26 12:30:02', '1'); +INSERT INTO `tb_article` VALUES ('370', '10', '石门营公园', '

中文名称:石门营公园

地理位置:北京市

建   于:2008年

建设面积:56000平方米

石门营公园建于2008年7月,建设面积56000平方米,其中绿地面积51000平方米。地处北京市门头沟区永定镇南部,是展示门城面貌的“门城区级休闲公园”。全年免费对群众开放。

石门营公园地处北京市门头沟区永定镇南部,西邻石门营环岛,与采空棚户区改造石门营安置房社区仅一路之隔,是展示门城面貌的“门城区级休闲公园”,也是门头沟区承载群众休闲的重点公园,为改善棚户区改造安置房社区的居住环境发挥了重要作用。

在整体风格上,该公园强调场地脉落空间的延续,彰显总体自然和谐的视觉效果,突出石门营的“石”文化,以石溪、石雾、石门、石制小品等表现手法,强调质朴之感。


', '2', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150526_132552_746440.jpg', null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 12:30:08', '2015-05-26 12:30:08', '1'); +INSERT INTO `tb_article` VALUES ('371', '10', '西苑公园', '

西苑公园位于北京市门头沟区葡萄嘴环岛东南角,西至三石路,南邻路政局,总面积0.56万平方米,其中绿地面积0.4万平方米。

该公园为城市街旁绿地,选用多种乔灌木进行搭配,做到层次分明、错落有致、丰富多彩,形成三季有花、四季长青的景观效果。

公园设计建造的休闲文化亭廊和现代艺术景墙,体现了门头沟新时代的城市风貌,给人们提供了休闲散步、交往娱乐等公共活动的场所。

', '1', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150526_132320_829676.jpg', null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 12:30:15', '2015-05-26 12:30:15', '1'); +INSERT INTO `tb_article` VALUES ('372', '10', '新桥公园', '

新桥公园位于北京市门头沟区新桥家园北侧,占地3600平方米,公园紧邻新桥大街,周边遍布多个住宅区,地处闹市,乱中取静,精巧雅致。

2010年,对该公园进行了升级改造。通过种植景观林、草本花卉和铺装步道进一步改善园区周边环境。内部建有景观厅、喷泉水池、主题雕塑等小品,完善了休闲座椅、垃圾桶等基础设施,为当地居民提供休闲、娱乐、小憩等良好的健身场所。

', '0', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150526_132049_749662.jpg', null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 12:30:21', '2015-05-26 12:30:21', '1'); +INSERT INTO `tb_article` VALUES ('373', '10', '永定河公园', '

中文名称:永定河公园

地理位置:北京市门头沟区门城湖畔

占地面积:1.5万平方米

著名景点:母亲雕塑

永定河公园位于北京市门头沟区门城湖畔,西至滨河路,东临永定河,南至北京市永定河管理处,北至城子东街,总面积1.5万平方米,其中绿地面积0.96万平方米,总投资2180万元。园区内建有一座占地1128平方米、高6.5米的三层大型观景台和突出永定河厚重历史文化的母亲雕塑,既满足了周边居民的休闲健身需求,也实现了空间功能与审美需求的整合,是永定河绿色生态廊道城市段起点的滨河文化休闲公园,具有独特的地域性质文化内涵。


', '0', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150526_131826_480861.jpg', null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 12:30:32', '2015-05-26 12:30:32', '1'); +INSERT INTO `tb_article` VALUES ('374', '10', '永定河森林公园', '

中文名:永定河森林公园

免费开放:2013年4月28日

绿化面积:175万平方米

永定河森林公园位于门头沟区永定镇与石景山区、丰台区交界处,紧临108国道。这里经过几十年采挖砂石形成的深达42米的大砂坑曾是北京西部最大的沙尘污染源。为消除这一污染源,落实“生态发展涵养区”的功能定位,市、区政府加大投资力度,对这里实施生态修复工程。

永定河森林公园是北京市委、市政府关于永定河绿色生态发展带“五园一带”项目首个启动建设的公园,已于2013年4月28日向社会免费开放。公园将首钢钢渣铁路线改造为观光线路,引进观光小火车和铁路自行车,开创了北京市乘火车游公园之先河,市民可以乘小火车赏花、观湖、隔河远眺园博园,体验永定河文化。


截止2010年,累计完成投资1.1亿元,绿化面积达175万平方米。栽植乔、灌、花木40余个品种共计163万余株,种植地被植物98万平方米、水生植物1.5万平方米 。

通过大面积营造景观生态林,彻底改变了大沙坑的整体面貌,成为集观景、休憩健身、集雨、防风固沙等多项功能于一身的生态型公园。公园建成以来,党和国家领导人、共和国将军、部长都曾到此参加全民义务植树活动。

永定河休闲森林公园位于石景山西南部,永定河左岸南大荒滩地上,距市中心18公里。公园东邻五环,北接莲石西路,与园博园隔河相对。

根据2009年北京市委、市政府提出的《北京市永定河生态走廊建设规划》和《永定河绿色生态发展带“五园一带”项目规划方案》,本公园于2012年开始建设,2013年4月建成,是“五园一带”首个开放的公园。

公园占地121公顷,因地制宜,建成“两核”(主门区和永定河文化广场)、“一带”(滨河风景带)、“十大景点”(镇水牛、十八磴、海棠谷、桃李园等)的景观格局,将昔日黄沙漫天的荒滩地变为空气清新、鸟语花香的公园。

公园用雕塑、石碑、景墙、铺装等形式,将永定河文化的内涵点缀其中,在和谐、自然的休憩环境中融入文化的气息。

公园将首钢钢渣铁路线改造为观光车道,引进观光小火车和铁路自行车,供市民赏花、看湖、眺园博,体验永定河文化。

永定河休闲森林公园为公益性城市公园,面向社会免费开放,以其优美的环境为广大市民营造了一个愉悦身心、亲近自然的健身休闲活动场所


', '2', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150526_131132_167617.jpg', null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 12:30:39', '2015-05-26 12:30:39', '1'); +INSERT INTO `tb_article` VALUES ('375', '10', '永定河文化广场', '

中文名:永定河文化广场

建 于:1998年

总面积:34万平方米

原 则:因地制宜

北京市门头沟区永定河文化广场公园建于1998年,总面积34万平方米,是在挖沙形成的一处人工沙坑上建设而成的,是集绿化美化、休闲健身、节水环保、应急避险等多种功能于一体的城市精品公园。

公园建设遵循因地制宜的原则,园内种植的各类乔灌花草形成了明显色彩和季相变化;西南部有一处大型音乐喷泉;东南部为健身广场,设有儿童、青年、中老年健身区和乒乓球场、篮球场等;在沙坑中心区,通过收集雨水、保水的节水环保设施建设,形成了叠水景观;该公园为周边多个大型社区的两万多市民提供休闲娱乐健身的场地。

', '4', '0', '11', '1', '1', '2', '10', null, 'download/image_url/20150526_123423_350923.jpg', null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 12:30:46', '2015-05-26 12:30:46', '1'); +INSERT INTO `tb_article` VALUES ('376', '5', '大峪第一小学', null, '0', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 13:58:21', '2015-05-26 13:58:21', '1'); +INSERT INTO `tb_article` VALUES ('377', '5', '大峪第二小学', null, '0', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 13:58:32', '2015-05-26 13:58:32', '1'); +INSERT INTO `tb_article` VALUES ('378', '5', '城子小学', null, '2', '0', '11', '1', '1', '2', '10', null, null, 'http://i11.tietuku.cn/e91de2ba989474a1.jpg', null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 13:58:48', '2015-05-26 13:58:48', '1'); +INSERT INTO `tb_article` VALUES ('379', '4', '门头沟区博物馆', null, '0', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 15:49:35', '2015-05-21 15:49:35', '1'); +INSERT INTO `tb_article` VALUES ('381', '100', '我的博文', '

测试

', '0', '0', '11', '1', '1', '2', '20', null, null, null, null, null, '10', '2015-06-04', '系统管理员', null, null, null, '2015-06-17 22:23:52', '1'); +INSERT INTO `tb_article` VALUES ('382', '100', '测试博文', '

哈哈 我来了

', '15', '0', '11', '1', '1', '2', '20', null, null, null, null, null, '10', '2015-06-04', '系统管理员', null, null, null, '2015-06-17 22:27:55', '2'); +INSERT INTO `tb_article` VALUES ('2301', '230', '英雄联盟', '

内容管理平台

', '124', '123', '12', '2', '1', '1', '1', null, 'jflyfox/website/article_image/20170420_225715_597604.jpg', null, null, null, '10', '2014-03-05', '系统管理员', '2015-01-29', '2015-01-23', '2015-01-28 17:29:55', '2015-01-28', '1'); +INSERT INTO `tb_article` VALUES ('2351', '231', '捐赠我们', '

支付宝捐赠二维码                         微信捐赠二维码

    




', '0', '0', '11', '1', '1', '2', '19', null, null, null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 10:39:11', '2015-05-26 10:39:11', '1'); +INSERT INTO `tb_article` VALUES ('2352', '231', '关于我们', '

可通过如下方式联系我们:

联系方式:qq(369191470)


', '1', '0', '11', '1', '1', '2', '13', null, null, null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 10:39:24', '2015-05-26 10:39:24', '1'); +INSERT INTO `tb_article` VALUES ('2353', '231', '联系我们', '

地址:北京市

联系方式:qq(369191470)

', '0', '0', '11', '1', '1', '2', '15', null, null, 'http://ossweb-img.qq.com/images/lol/act/a20170420midseason/site/hero-backdrop.jpg', null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 10:39:53', '2015-05-26 10:39:53', '1'); +INSERT INTO `tb_article` VALUES ('2354', '231', '免责声明', '

本网站对本网站上所有由第三方提供的信息、内容和服务,不提供明示或暗示的担保。本网站对使用上述信息、内容和服务所造成的任何损失不承担责任,包括直接损失和间接损失。


', '0', '0', '11', '1', '1', '2', '20', null, null, null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 10:40:04', '2015-05-26 10:40:04', '1'); +INSERT INTO `tb_article` VALUES ('2355', '231', '广告服务', '

广告服务请通过以下方式联系:

联系方式:qq(369191470)

', '1', '0', '11', '1', '1', '2', '17', null, null, null, null, null, '10', '2015-05-26', '系统管理员', null, null, '2015-05-26 10:40:30', '2015-05-26 10:40:30', '1'); +INSERT INTO `tb_article` VALUES ('2408', '230', '英雄联盟', '

 

', '8', '0', '11', '1', '1', '2', '10', null, 'jflyfox/website/article_image/20170420_224242_625109.jpg', null, null, null, '10', '2016-01-20', '系统管理员', null, null, '2016-01-20 17:02:55', '2016-01-20 17:02:55', '1'); +INSERT INTO `tb_article` VALUES ('2409', '230', '德玛西亚皇子', '

德玛西亚皇子,别名四阿哥,周杰伦,嘉文四世。

E-Q技能的存在为嘉文带来了不错的机动性,还附带三种控制技能让他成为一个让人十分头疼的坦克,

你无法在第一时间秒掉他,却也无法忽视他的存在,是一个团队价值非常高的英雄。

', '3', '0', '11', '1', '1', '2', '11', null, null, 'http://ossweb-img.qq.com/images/lol/web201310/skin/big59000.jpg', null, null, '10', '2016-01-20', '系统管理员', null, null, '2016-01-20 17:04:15', '2016-01-20 17:04:15', '1'); +INSERT INTO `tb_article` VALUES ('2410', '230', '德邦总管', '

德邦总管,别名赵信,菊花信。

赵信很适合做团战发起人,第一时间冲锋加大招尽量多的造成伤害。

至少加1点战嚎来减少技能的冷却。对于赵信来说,攻速道具是收益最高的选择。缺点赵信是一个只进不退的英雄。

', '1', '0', '11', '1', '1', '2', '12', null, null, 'http://ossweb-img.qq.com/images/lol/web201310/skin/big5000.jpg', null, null, '10', '2016-01-20', '系统管理员', null, null, '2016-01-20 17:04:59', '2016-01-20 17:04:59', '1'); +INSERT INTO `tb_article` VALUES ('2411', '230', '黑暗之女', '

黑暗之女,别名火女,萝莉,安妮。

有着被动技能和Q技能的回蓝特效让安妮在对线期就能占尽优势,可以在前期保证自己的经济,

而技能本身的固定伤害让安妮在到达六级后就可以用一套连招给对方带来极大伤害甚至秒掉对手。

', '0', '0', '11', '1', '1', '2', '13', null, null, 'http://ossweb-img.qq.com/images/lol/web201310/skin/big1000.jpg', null, null, '10', '2016-01-20', '系统管理员', null, null, '2016-01-20 17:05:33', '2016-01-20 17:05:33', '1'); +INSERT INTO `tb_article` VALUES ('2412', '230', '皎月女神', '

皎月女神,别名皎月,黛安娜。

戴安娜作为一个近战法师,有着其他AP难以企及的爆发,同时还有突进、控制以及不错的生存能力。

但缺点也很明显,作为一个法师却是近战,而且又没有逃生技能,如果团战的时机切入时机错误,经常会有去无回。

', '2', '0', '11', '1', '1', '2', '14', null, null, 'http://ossweb-img.qq.com/images/lol/web201310/skin/big131000.jpg', null, null, '10', '2016-01-20', '系统管理员', null, null, '2016-01-20 17:05:59', '2016-01-20 17:05:59', '1'); +INSERT INTO `tb_article` VALUES ('2413', '230', '寒冰射手', '

寒冰射手,别名寒冰,艾希,爱射,冰弓,冰女。

寒冰射手艾希是一个能力全面的防守型ADCarry,她的W可以进攻性地推线,也是个配合她的Q进行风筝的强力技能。

', '0', '0', '11', '1', '1', '2', '15', null, null, 'http://ossweb-img.qq.com/images/lol/web201310/skin/big22000.jpg', null, null, '10', '2016-01-20', '系统管理员', null, null, '2016-01-20 17:06:31', '2016-01-20 17:06:31', '1'); +INSERT INTO `tb_article` VALUES ('2414', '230', '联系我们', '

作者:Fly的狐狸

QQ:330627517

', '2', '0', '11', '1', '1', '2', '16', null, null, 'http://ossweb-img.qq.com/images/lol/act/a20170420midseason/site/hero-backdrop.jpg', null, null, '10', '2016-01-20', '系统管理员', null, null, '2016-01-20 17:07:05', '2016-01-20 17:07:05', '1'); +INSERT INTO `tb_article` VALUES ('3001', '241', '个人介绍', '

    本人从事Java Web开发工作,有较丰富的4A、工资社保、军交运输(GIS)、短信平台项目开发经验;有丰富的linux、unix部署、调试经验;有独立开发设计项目的经验。

    经常通过开源中国(www.oschina.net)等网站学习新的技术,如Jfinal、beelt、fastjson、afinal等;曾阅读一些书籍和框架源码,如《Spring3.x企业应用开发实践》、《锋利的Jquery》、Jfinal源码、fastjson等;并在工作期间开发过安盟双因素认证,支付宝,微信自动回复、Oauth2、短信(cmpp、smgp、sgip)等外部接口。

', '1739', '25', '12', '1', '1', '2', '5', null, '20150520_113828_124810.jpg', null, null, null, '10', '2014-03-05', '系统管理员', '2015-01-29', '2015-01-23', '2015-01-28 17:29:55', '2015-01-28 17:29:55', '1'); +INSERT INTO `tb_article` VALUES ('3010', '248', 'Oauth2.0认证', '', '125', '0', '13', '1', '1', null, '10', null, null, null, null, null, '10', '2015-02-15', '系统管理员', null, null, '2015-02-15 14:11:45', '2015-02-15 14:11:45', '1'); +INSERT INTO `tb_article` VALUES ('3103', '243', '金钱管理 jfinal money', '

这是一个java开发的金钱管理软件,本着帮助新人以及为学习新技术的态度。

JFinal-Money采用了简洁强大的JFinal作为web框架,加入了代码自动生成功能。

模板引擎用:Beetl(从JSP迁移到Beetl)

数据库:sqlite3,mysql和postgre

前端框架:bootstrap3,移动端Jquery Mobile

运行效果:http://jmoney.sturgeon.mopaas.com/web

源码地址:http://git.oschina.net/flyfox/jmoney

感谢 孤独的√3 的帮助,以及开源Jfinal,Beelt

首页效果图如下:

', '575', '1', '12', '1', '1', null, '10', null, null, null, null, null, '10', '2014-06-05', '系统管理员', null, null, '2015-01-28 17:30:23', '2015-01-28 17:30:23', '1'); +INSERT INTO `tb_article` VALUES ('3105', '242', '基础单词', '

LOL


firstblood 第一滴血

An enemy has been slain 一个敌人被击杀

double kill 双杀

triple kill 三杀 

quadra kill 四杀 

penta kill 五杀 

killing spree 大杀特杀

rampage 暴走

unstoppable 无人可挡

dominating 主宰比赛

godlike 神一般

legendary 超神


星期   


星期一: Mon.=Monday

星期二: Tues.=Tuesday

星期三:Wed.=Wednesday

星期四: Thur.=Thursday

星期五: Fri.=Friday

星期六: Sat.=Saturday 

星期天: Sun.=Sunday


月份


一月份:Jan.=January

二月份:Feb.=February

三月份:Mar.=March 

四月份:Apr.=April 

五月份: May=May

六月份:Jun.=June

七月份:Jul.=July

八月份: Aug.=August 

九月份: Sept.=September

十月份:Oct.=October

十一月份:Nov.=November

十二月份:Dec.=December


', '226', '2', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-01-28', '系统管理员', null, null, '2015-01-28 17:48:26', '2015-01-28 17:48:26', '1'); +INSERT INTO `tb_article` VALUES ('3106', '245', '关于我们', '

作者:FLY的狐狸

地址:北京市

联系方式:qq(369191470),请注明来源和添加原因

', '414', '1', '12', '1', '1', '2', '11', null, 'jflyfox/blog/article_image/20160611_162651_964248.png', null, '', '', '10', '2015-01-29', '系统管理员', null, null, '2015-01-29 14:04:52', '2015-01-29 14:04:52', '1'); +INSERT INTO `tb_article` VALUES ('3107', '243', 'MP3音乐播放器FFPlayer', '

FFPlayer 是一个通过 JavaFX 实现的MP3音乐播放器。

功能列表如下


  1. 支持播放、暂停、上一首、下一首,时间轨,播放模式,音量调节;

  2. 播放列表暂时只支持拖拽添加,右键可以删除列表音乐;

  3. 歌词展示通过网络获取,自动展示,但是由于许多MP3不是标准格式无法获取歌曲信息的会导致下载歌词失败。


源码地址:http://git.oschina.net/flyfox/FFPlayer

界面如下图:


', '317', '1', '12', '1', '1', null, '10', null, null, null, null, null, '10', '2014-11-24', '系统管理员', null, null, '2015-01-30 17:15:46', '2015-01-30 17:15:46', '1'); +INSERT INTO `tb_article` VALUES ('3108', '243', 'JavaFX游戏 贪吃蛇Snake', '

JavaFX Snake是一个通过JavaFX实现的贪吃蛇游戏,游戏比较简单就不用再介绍了。

源码地址:http://git.oschina.net/flyfox/GameSnake

界面比较简陋凑合看吧,如下图:


', '422', '0', '12', '1', '1', null, '19', null, null, null, null, null, '10', '2014-11-04', '系统管理员', null, null, '2015-01-30 17:18:27', '2015-01-30 17:18:27', '1'); +INSERT INTO `tb_article` VALUES ('3109', '243', '个人博客jflyfox', '

这是一个简单不的不能再简单的Blog软件,本着提高自己,帮助新人的态度。刚刚开始做,还望大家多多包涵。

Jflyfox采用了简洁强大的JFinal作为web框架,模板引擎用的是beelt,数据库用mysql,前端bootstrap框架。

源码地址:http://git.oschina.net/flyfox/jflyfox

运行效果:http://jflyfox.oschina.mopaas.com/

首页效果图如下:

后台登陆:http://jflyfox.oschina.mopaas.com/admin

账号密码:admin/admin123,test/123456

后台页面页面效果图如下:

', '453', '4', '12', '1', '1', null, '10', null, null, null, null, null, '10', '2015-02-02', '系统管理员', null, null, '2015-02-02 14:25:10', '2015-02-02 14:25:10', '1'); +INSERT INTO `tb_article` VALUES ('3111', '242', '你很棒', '

You look gorgeous today. 你今天看起来棒极了。

You are someting else.你真是出类拔萃。

You 're looking sharp.你看上去很精神。

We're so proud of you.我们十分为你骄傲。

Thanks of for the compliments.感谢你的称赞。

i'm so flattered.我真是受宠若惊。

', '213', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-02-04', '系统管理员', null, null, '2015-02-04 08:47:31', '2015-02-04 08:47:31', '1'); +INSERT INTO `tb_article` VALUES ('3112', '242', '常用单词', '

酸甜苦辣

sour acid 酸的

sweet 甜的

bitter 苦的

spicy 辣的


饮料

apple 苹果 apple juice 苹果汁

banana 香蕉

orange 橘子  orange juice 橘汁

lemon 柠檬 lemonade 柠檬水


日常用品

pan 平底锅


', '254', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-02-06', '系统管理员', null, null, '2015-02-06 09:18:50', '2015-02-06 09:18:50', '1'); +INSERT INTO `tb_article` VALUES ('3114', '247', '怎样制作支付宝二维码?', '

转自:http://jingyan.baidu.com/article/a3a3f811e305258da3eb8a69.html

怎样制作透明底色的支付宝二维码收款大图?

方法/步骤

  1. 1

    登陆官方网站(https://qr.alipay.com),点击账户码,免费领取“向我付款”的二维码。

  2. 2

    避免广告嫌疑。截图中 二维码 已做涂抹。个性化设置可以自行上传头像照片,并设置收款人姓名

  3. 3

    选择另存到本地。共有3种样式供选择。全部是透明底色的PNG图片。

    大(150pixel)——应用于海报、户外广告等对印刷质量要求高的渠道。建议尺寸:584*584像素(即15*15厘米,150分辨率

    中(72pixel)——应用于宣传单页等具有一定图片质量需求的渠道。建议尺寸:292*292像素(即7*7厘米,72分辨率)

    小(50pixel)——应用于PC渠道。建议尺寸:175*175像素(即5*5厘米,50分辨率)


', '242', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-02-13', '系统管理员', null, null, '2015-02-13 09:06:52', '2015-02-13 09:06:52', '1'); +INSERT INTO `tb_article` VALUES ('3115', '243', 'JavaFX游戏 打砖块', '

今天学习了一下JavaFX游戏部分

参考博客:http://blog.csdn.net/ml3947

本人源码地址:http://git.oschina.net/flyfox/GameBrickBlock

里面有两种效果实现,一种是参考博客的Pane实现,一种是自己学习修改的Canvas实现。

效果图演示:


', '600', '0', '12', '1', '1', null, '20', null, null, null, null, null, '10', '2014-11-01', '系统管理员', null, null, '2015-02-13 11:20:15', '2015-02-13 11:20:15', '1'); +INSERT INTO `tb_article` VALUES ('3116', '243', '基础库封装', '


源码地址:http://git.oschina.net/flyfox/jflyfox_base

flyfox基础库(jflyfox_base)

作者:FLY的狐狸

功能:基础库。实现String、Number、Date、加密算法,序列化、缓存管理等封装。

', '544', '3', '11', '1', '1', null, '16', null, null, null, null, null, '10', '2014-01-01', '系统管理员', null, null, '2015-02-13 11:28:58', '2015-02-13 11:28:58', '1'); +INSERT INTO `tb_article` VALUES ('3117', '243', '基础库Jfinal封装', '

源码地址:http://git.oschina.net/flyfox/jflyfox_jfinal

jflyfox_jfinal是对Jfinal和beetl进行封装。

1. 包含controller,model,form,service基础类封装。

2. 对分页进行了后台和前台的实现。

3. 加入了自动扫描model和controller以及注解支持。

4. 实现了ueditor后台Controller代码。

5. 加入了页面增删改查代码自动生成功能,可通过beetl模板进行配置。

6. 实现了SessionAttrInterceptor、页面和手机设备判断拦截器以及BasePathHandler。

', '484', '0', '11', '1', '1', null, '17', null, null, null, null, null, '10', '2014-01-02', '系统管理员', null, null, '2015-02-13 11:42:33', '2015-02-13 11:42:33', '1'); +INSERT INTO `tb_article` VALUES ('3118', '243', '通过mina进行文件传输', '

FileSocket

通过mina进行文件传输

传入目录readfile

接收目录writefile

日志目录logs

配置文件config/config.properties


发送流程

1. 定时读取发送路径文件

2. 将文件名称加入.tmp后缀,进行流读取发送

3. 发送后将文件放入备份路径(backup)

4. 服务器端返回成功,放入成功路径(finished);返回失败,放入失败路径(failed)。


注:由于是个人项目未进行开源


', '390', '0', '11', '1', '1', null, '30', null, null, null, null, null, '10', '2014-11-25', '系统管理员', null, null, '2015-02-13 11:57:00', '2015-02-13 11:57:00', '1'); +INSERT INTO `tb_article` VALUES ('3119', '243', '财务管理 Android项目', '

DataAnalysis

主要是记录个人收入、支出,输出月报表,年报表。


界面如下:





注:由于是个人项目未进行开源

', '395', '0', '11', '1', '1', null, '31', null, null, null, null, null, '10', '2014-12-13', '系统管理员', null, null, '2015-02-13 12:00:07', '2015-02-13 12:00:07', '1'); +INSERT INTO `tb_article` VALUES ('3121', '245', '捐赠我们', '

支付宝捐赠二维码                         微信捐赠二维码

    



', '830', '1', '12', '1', '1', null, '12', null, null, null, null, null, '10', '2015-02-13', '系统管理员', null, null, '2015-02-13 12:23:37', '2015-02-13 12:23:37', '1'); +INSERT INTO `tb_article` VALUES ('3206', '242', '人的器官', '

鼻子 nose

脸 face

嘴 mouth

眼睛 eye

耳朵 ear

手 head

腿 leg

脚 foot

手指 finger

拳头 fist

屁股 behind

', '236', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-02-26', '系统管理员', null, null, '2015-02-26 09:14:47', '2015-02-26 09:14:47', '1'); +INSERT INTO `tb_article` VALUES ('3207', '247', '离职理由', '
  • 目前公司决策上太过拖沓,工作太清闲,不够饱和,对个人成长不利,所以考虑换份工作

  • 对目前公司的技术框架比较熟悉,希望能接触更多的有挑战性的开发工作,所以考虑新的机会。

  • 目前的工作内容跟我个人的期望有差距,与个人职业发展不符,所以考虑换家公司。

  • 目前公司是家创业公司,在经营方面出了些问题,导致公司发展停滞,不得不另谋出路,寻求更好的发展机会。

  • 目前公司管理混乱,做事效率低,资金链断裂导致项目终止,所以希望找份新工作。

  • 身处二线城市,互联网环境较差,缺乏技术提升和与同行交流的大环境,所以考虑来上海发展。

  • 公司业务调整,目前所负责的项目被边缘化,以后不做新功能开发只做维护,个人希望逐步向技术管理方向发展,但在公司内部缺乏提升的空间,所以考虑换个环境。

  • 领导对业务没有长远规划,加上领导层频繁变动,故考虑新的机会。

  • 公司业务调整,我所负责的项目被叫停了,在公司没有太多事情做,所以希望换个环境。

  • 公司调整管理风格改变,和我期望的互联网文化大相径庭,所以考虑新的工作机会。

  • 目前在朋友公司帮忙,现技术框架已经相对固定,后续的工作主要是系统维护和优化,没有太多事情做,所以考虑合适的工作机会。

  • 在目前公司工作了多年,发展到了瓶颈,希望换个环境。

  • 在目前公司工作不饱和,内部缺乏职位和待遇提升空间,所以考虑新的工作机会。

  • 公司开发项目及架构搭建已全部完成,后续的工作主要是系统维护和优化,工作不饱和,缺乏挑战性,故考虑新的工作机会。

  • 公司高层频繁变动,发展不稳定,希望看看新的机会。

  • 目前公司是家传统行业公司,技术研发只是给主营业务提供IT支撑,公司对技术不够重视,不利于我在技术研发领域深入钻研,所以考虑换个环境。

  • 家在北方,希望离家近一点,所以决定回北京发展。

  • 目前负责的项目侧重内部业务支撑,个人更希望做一些C端用户类产品方面的开发,所以考虑新的工作机会。

  • 目前所负责的项目并非领导的关注重点,目前进展不太顺利,可能会被叫停,我在公司内缺乏提升空间,所以考虑换个环境。


', '267', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-03-06', '系统管理员', null, null, '2015-03-06 09:19:58', '2015-03-06 09:19:58', '1'); +INSERT INTO `tb_article` VALUES ('3209', '241', '三种人', '

人的一生总是要学习各种知识。人人都在学习,但学习方法却各有不同。

1 绝大多数人是闭门学习受填鸭式学习教育遗毒影响,独自一个人挑灯苦灯,学习吸收各种知识。
这种学习方式比较枯燥,需要比较好的耐力,毅力。
2 一部分重视通过交流学习现在网络比较发达了,许多人自觉不自觉得把自己的学习心得记录下来,并发表在网上。
3 也有人通过启发别人来启发自己其中的哲学原理,按古代说法是天人合一,物我同体;按现代说法是信息相通,沟通无极限。

通过帮助别人来帮助自己。通过启发别人来启发自己。凡有所得,必须分享。只有分享了的知识,才是真正的知识。

上面三种人,对于知识而言,
第一种人是只进不出,只是获取别人总结的知识,而基本不去帮助别人获取知识
第二种人是多进少出,在学习知识的同时,也把自己的一些心得分享出来
第三种人趋于得失平衡,认为只有分享的知识才是真正的知识,只有帮助别人也掌握的知识才是真正的知识

', '645', '13', '12', '1', '1', '2', '9', null, null, null, null, null, '10', '2015-03-13', '系统管理员', null, null, '2015-03-13 09:14:47', '2015-03-13 09:14:47', '1'); +INSERT INTO `tb_article` VALUES ('3210', '249', 'wireshark抓包分析', '
  •  抓包

命令:tcpdump tcp -s 0 port 8888 -w test.cap 

linux上通过tcpdump命令进行数据报抓取,tcp协议,-s 0 抓取完整包(默认大小68字节),监控888端口,保存成test.cap文件

tcpdump命令详解:http://www.cnblogs.com/ggjucheng/archive/2012/01/14/2322659.html

  • 文件分析

通过wireshark打开test.cap文件,就可以进行分析了。

首先对连接和断开进行分析,看是否有异常情况。

网上找了个链接和断开的图片,不是很清楚凑合看。

上面图可以看出连接是syn标示,断开是fin标示,通过 tcp.flags.fin == 1 || tcp.flags.syn== 1 可以进行过滤找出,断开和连接的数据包。可以查看里面的时间点和stream index数据。

通过时间点或者tcp.stream == 7过滤进行会话跟踪,查看附近相关数据包,从而进行异常数据排查。

数据分析

我们发送的数据自己对协议都应该比较了解,tcp.len == 140对数据包进行过滤,查看具体协议内容,找出异常信息。

wireshark过滤语法:http://www.cnblogs.com/wangkangluo1/archive/2011/12/19/2293750.html


抓包:tcpdump  -i eth1 -s 0 tcp port 80 -w   loghttp.cap 


', '209', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-03-13', '系统管理员', null, null, '2015-03-13 09:25:05', '2015-03-13 09:25:05', '1'); +INSERT INTO `tb_article` VALUES ('3211', '249', '各大音乐社区api接口(MP3&LRC)', '

百度:
sound:
http://box.zhangmen.baidu.com/x?op=12&count=1&title=不得不爱$$潘玮柏$$$$
lrc:
http://box.zhangmen.baidu.com/bdlrc/86/8654.lrc
这个地址解析下: 
http://box.zhangmen.baidu.com/bdlrc/ 这个是百度lrc歌词存放地址,后面的496是一个的不定的,民就是说歌曲不同那个目录名也不同,它的算法是拿歌词文件名(也就是上面说的 8654) 除以一百,然后取小于等于其结果的最大整数,如上面的:8654/100 =86.54取小于等于86.54 的最大整数就是86,于是这首歌完整的歌词地址:http://box.zhangmen.baidu.com/bdlrc/86/8654.lrc

QQ音乐:
sound:
http://qqmusic.qq.com/fcgi-bin/qm_getLyricId.fcg?name=不得不爱&singer=潘玮柏&from=qqplayer
lrc:
http://music.qq.com/miniportal/static/lyric/90/95690.xml

 

说明:lrc的歌词地址 lyric/90/95690.xm 其中的90是上面sound中出来的id95690的最后面两位数字、。
 
搜搜音乐:
sound:
http://cgi.music.soso.com/fcgi-bin/m.q?w=不得不爱&p=1&t=0
格式: 1-全部 0-MP3 1-RM ,2-WMA
lrc:(注意!歌曲名和歌手名字一定要准确)
http://cgi.music.soso.com/fcgi-bin/fcg_download_lrc.q?song=不得不爱&singer=潘玮柏%26弦子&down=1

 
8BOX
sound:
http://api.8box.com/get/search/song?api_key={api_key}&title={歌曲名(URL16进制加密)}&artist={歌手(URL16进制加密)}
    
 lrc:(2010年8月19日更新)
http://www.8box.com/feed/radio/s?type=widget&param={歌曲ID(数字)}
http://www.8box.com/pictures/lyrics/83/591383.lrc


', '210', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-03-13', '系统管理员', null, null, '2015-03-13 09:26:25', '2015-03-13 09:26:25', '1'); +INSERT INTO `tb_article` VALUES ('3213', '242', '英语学习', '

学习记录

你的爱好是什么?

what do you like to do for fun?

what do you do in your free time?

what are your hobbies?


Comedies喜剧片、dramas剧情片和thrillers惊险片


很高兴我们有一些共同点

It's nice that we have something in common


口语常用语句


1.Absolutely.                                                                   

  (用于答话)是这样;当然是;正是如此;绝对如此。                                    


2.Absolutely  impossible!                                                       

  绝对不可能的!                                                                  


3.All I have to do is learn English.                                            

  我所要做的就是学英语。                                                          


4.Are you free tomorrow?                                                        

  你明天有空吗?                                                                   


5.Are you married?                                                              

  你结婚了吗?                                                                    


6.Are you used to the food here?                                                

  你习惯吃这儿的饭菜吗?                                                          


7.Be careful.                                                                   

  小心/注意。                                                                    


8.Be my guest.                                                                  

  请便/别客气。                                                                  


9.Better late than never.                                                       

  迟到总比不到好。                                                                


10.Better luck next time.                                                       

   祝你下一次好运。                                                                


11.Better safe than sorry.                                                      

   小心不出大错。                                                                  


12.Can I have a day off?                                                        

   我能请一天假吗?                                                                


13.Can I help?                                                                  

   要我帮忙吗?                                                                    


14.Can I take a message?                                                        

   要我传话吗?                                                                    


15.Can I take a rain check?                                                     

   你能改天再请我吗?                                                              


16.Can I take your order?                                                       

   您要点菜吗?                                                                    


17.Can you give me a wake-up call?                                              

   你能打电话叫醒我吗?                                                            


18.Can you give me some feedback?                                               

   你能给我一些建议吗?                                                            


19.Can you make it?                                                            

   你能来吗?                                                                      


20.Can I have a word with you?                                                  

   我能跟你谈一谈吗?                                                              


21.Cath me later.                                                               

   过会儿再来找我。                                                                


22.Cheer up!                                                                    

   高兴起来!振作起来!                                                            


23.Come in and make yourself at home.                                           

   请进,别客气。                                                                  


24.Could I have the bill,please?                                                

   请把账单给我好吗?                                                              


25.Could you drop me off at the airport?                                        

   你能载我到飞机场吗?                                                            


26.Could you speak slower?                                                      

   你能说得慢一点吗?                                                              


27.Could you take a picture for me?                                             

   你能帮我拍照吗?                                                                


28.Did you enjoy your flight?                                                   

   你的飞行旅途愉快吗?                                                            


29.Did you have a good day today?                                               

   你今天过得好吗?                                                                 


30.Did you have a nice holiday?                                                 

   你假期过得愉快吗?                                                              


31.Did you have fun?                                                           

   你玩得开心吗?                                                                  


32.Dinner is on me.                                                             

   晚饭我请客。                                                                    


33.Do you have a room available?                                                

   你们有空房间吗?                                                                


34.Do you have any hobbies?                                                     

   你有什么爱好?                                                                  


35.Do you have some change?                                                     

   你有零钱吗?                                                                    


36.Do you mind my smoking?                                                     

   你介意我抽烟吗?                                                                


37.Do you often work out?                                                      

   你经常锻炼身体吗?                                                              


38.Do you speak English?                                                        

    你会说英语吗?                                                                  


39.Don't be so modest.                                                          

   别这么谦虚。                                                                    


40.Don't bother.                                                                

   不用麻烦了。                                                                    


41.Don't get me wrong.                                                          

   别误会我。                                                                      


42.Don't give up.                                                               

   别放弃。                                                                        


43.Don't jump to conclusions.                                                   

   不要急于下结论。                                                                


44.Don't let me down.                                                           

   别让我失望。                                                                    


45.Don't make any mistakes.                                                     

   别出差错。                                                                      


46.Don't mention it.                                                            

   不必客气。                                                                      


47.Don't miss the boat.                                                         

   不要坐失良机。                                                                  


48.Don't take any chances.                                                      

   不要心存侥幸。                                                                  


49.Don't take it for granted.                                                   

   不要想当然。                                                                    


50.Don't worry about it.                                                        

   别担心。                                                                        


51.Easy come,easy go.                                                           

   来得容易,去得快。                                                              


52.Enjoy your meal.                                                             

   请慢慢享用吧。                                                                  


53.Easier said than done.                                                       

   说是容易做时难。                                                                


54.First come,first served.                                                     

   捷足先登。                                                                      


55.For here or to go?                                                           

   再这儿吃还是带走?                                                              


56.Forget it.                                                                   

   算了吧。                                                                        


57.Forgive me.                                                                  

   请原谅我。                                                                      


58.Give me a call.                                                              

   给我打电话。                                                                    


59.Give my best to your family.                                                 

   代我向你们全家问好。                                                            


60.Have him return my call.                                                     

   让他给我回电话。                                                                


61.Have you ever been to Japan?                                                

   你去过日本吗?                                                                  


62.Have you finished yet?                                                       

   你做完了吗?                                                                    


63.Have you got anything larger?                                                

   有大一点儿的吗?                                                                


64.Have you got that?                                                           

   你明白我的意思吗?                                                              


65.Have you heard from Mary?                                                    

   你收到玛丽的来信吗?                                                            


66.He is in conference.                                                         

   他正在开会。                                                                    


67.Help yourself,please.                                                        

   请自己用。                                                                      


68.Hold your horses.                                                            

   耐心点儿。                                                                      


69.How can I get in touch with you?                                             

   我怎样能跟你联络上?                                                            


70.How do I look?                                                               

   我看上去怎么样?                                                                


71.How is it going?                                                             

   情况怎么样?                                                                    


72.How late are you open?                                                       

   你们营业到几点?                                                                


73.How long did it last?                                                        

   持续了多久?                                                                    


74.How long will it take me to get there?                                       

   到那儿要多长时间?                                                              


75.How much is it?                                                              

   多少钱?                                                                        


76.How often do you eat out?                                                    

   你个多就在外面吃一次饭?                                                        


77.I apologize.                                                                 

   我很抱歉。                                                                      


78.I appreciate your invitation.                                                

   感谢你的邀请。                                                                  


79.I assure you.                                                                

   我向你保证。                                                                    


80.I bet you can.                                                               

   我确信你能做到。                                                                


81.I can manage.                                                                

   我自己可以应付。                                                                


82.I can't afford it.                                                           

   我买不起。                                                                      


83.I can't believe it.                                                          

   我简直不敢相信。                                                                


84.I can't resist the temptation.                                               

   我不能抵挡诱惑。                                                                


85.I can't stand it.                                                            

   我受不了。                                                                      


86.I can't tell.                                                                

   我说不准。                                                                      


87.I couldn't agree more.                                                       

   我完全同意。                                                                    


88.I couldn't get through.                                                      

   我打不通电话。                                                                  


89.I couldn't help it.                                                          

   我没有办法。                                                                    


90.I didn't mean to.                                                            

   我不是故意的。                                                                  


91.I don't know for sure.                                                       

   我不能肯定。                                                                    


92.I enjoy your company.                                                        

   我喜欢有你做伴。                                                                


93.I enjoyed it very much.                                                      

   我非常喜欢。                                                                    


94.I envy you.                                                                  

   我羡慕你。                                                                      


95.I feel like having some dumplings.                                           

   我很想吃饺子。                                                                  


96.I feel terrible about it.                                                    

   太对不起了。                                                                    


97.I feel the same way.                                                         

   我也有同感。                                                                    


98.I have a complaint.                                                          

   我要投诉。                                                                      


99.I have nothing to do with it.                                                

   那与我无关。                                                                    


100.I haven't the slightest idea.                                               

    我一点儿都不知道。                                                              


101.I hope you'll forgive me.                                                   

    我希望你能原谅我。                                                              


102.I know the feeling.                                                         

    我知道那种感觉。                                                                


103.I mean what I say.                                                          

    我说话算数。                                                                    


104.I owe you one.                                                              

    我欠你一个人情。                                                                


105.I really regret it.                                                         

    我真的非常后悔。                                                                


106.I suppose so.                                                               

    我想是这样。                                                                    


107.I thought so, too.                                                          

    我也这样以为。                                                                  


108.I understand completely.                                                    

    我完全明白。                                                                    


109.I want to report a theft.                                                   

    我要报一宗盗窃案。                                                              


110.I want to reserve a room.                                                   

    我想预定一个房间。                                                              


111.I was just about to call you.                                               

    我正准备打电话给你。                                                            


112.I was moved.= I was touched.                                                

    我很受感动。                                                                    


113.I wasn't aware of that.                                                     

    我没有意识到。                                                                  


114.I wasn't born yesterday.                                                    

    我又不是三岁小孩。                                                              


115.I wish I could.                                                             

    但愿我能。                                                                      


116.I wouldn't worry about it, if I were you.                                   

    如果我是你,我就不会担心。                                                      


117.I'd like a refund.                                                          

    我想要退款。                                                                    


118.I'd like to deposit some money.                                             

    我想存点儿钱。                                                                  


119.I'd like to make a reservation.                                             

    我想订票。                                                                      


120.I'll be right with you.                                                     

    我马上就来。                                                                    


121.I'll check it.                                                              

    我去查一下。                                                                    


122.I'll do my best.                                                            

    我将会尽我最大努力。                                                            


123.I'll get it.                                                                

    我去接电话。                                                                    


124.I'll give you a hand.                                                       

    我来帮助你。                                                                    


125.I'll have to see about that.                                                

    这事儿我得想一想再定。                                                          


126.I'll keep my eyes open.                                                     

    我会留意的。                                                                    


127.I'll keep that in mind.                                                     

    我会记住的。                                                                    


128.I'll pick up the tab.                                                       

    我来付帐。                                                                      


129.I'll play it by ear.                                                        

    我将随兴而定。                                                                  


130.I'll see what I can do.                                                     

    我看一看能怎么办。                                                              


131.I'll show you.                                                              

    我指给你看。                                                                    


132.I'll take care of it.                                                       

    我来办这件事。                                                                  


133.I'll take it.                                                               

    我要了。                                                                        


134.I'll take your advice.                                                      

    我接受你的忠告。                                                                


135.I'll think it over.                                                         

    我仔细考虑一下。                                                                


136.I'll treat you to diner.                                                    

    我想请你吃晚饭。                                                                


137.I'll walk you to the door.                                                  

    我送你到门口。                                                                  


138.I'm broke.                                                                  

    我身无分文。                                                                    


139.I'm crazy about English.                                                    

    我非常喜欢英语。                                                                


140.I'm easy to please.                                                         

    我很随和。                                                                      


141.I'm glad to hear that.                                                      

    听到这消息我很高兴。                                                            


142.I'm glad you enjoyed it.                                                    

    你喜欢我就高兴。                                                                


143.I'm good at it.                                                             

    我做这个很在行。                                                                


144.I'm in a good mood.                                                         

    我现在心情很好。                                                                


145.I'm in good shape.                                                          

    我的身体状况很好。                                                              


146.I'm just having a look.                                                     

    我只是随便看看。                                                                


147.I'm looking for a part-time job.                                            

    我正在找兼职工作。                                                              


148.I'm looking forward to it.                                                  

    我盼望着这件事。                                                                


149.I'm lost.                                                                   

    我给搞糊涂了。                                                                  


150.I'm not feeling well.                                                       

    我感觉不舒服。                                                                  


151.I'm not myself today.                                                       

    我今天心神不宁。                                                                


152.I'm not really sure.                                                        

    我不太清楚。                                                                    


153.I'm on a diet.                                                              

    我正在节食。                                                                    


154.I'm on my way.                                                              

    我这就上路。                                                                    


155.I'm pressed for time.                                                       

    我赶时间。                                                                      


156.I'm sorry I'm late.                                                         

    对不起,我迟到了。                                                              


157.I'm sorry to hear that.                                                     

    听到这个消息我感到很遗憾。                                                      


158.I'm under a lot of pressure.                                                

    我的压力很大。                                                                  


159.I'm working on it.                                                          

    我正在努力。                                                                    


160.I've changed my mind.                                                       

    我已经改变主意。                                                                


161.I've got a headache.                                                        

    我头痛。                                                                        


162.I've got my hands full.                                                     

    我手头正忙。                                                                    


163.I've got news for you.                                                      

    我要告诉你一个好消息。                                                          


164.I've got no idea.                                                           

    我不知道。                                                                      


165.I've had enough.                                                            

    我已经吃饱了。                                                                  


166.If I were in your shoes.                                                    

    如果我站在你的立场上。                                                          


167.Is that OK?                                                                 

    这样可以吗?                                                                    


168.Is this seat taken?                                                         

    这位子有人坐吗?                                                                


169.It all depends.                                                             

    视情形而定。                                                                    


170.It can happen to anyone.                                                    

    这事可能发生在任何人身上。                                                      


171.It doesn't make any difference.                                             

    都一样。                                                                        


172.It doesn't matter to me.                                                    

    这对我来说无所谓。                                                              


173.It doesn't work.                                                            

    它出故障了。                                                                    


174.It drives me crazy.                                                         

    他使我快要发疯了。                                                              


175.It isn't much.                                                              

    这是微不足道的。                                                                


176.It really comes in handy.                                                   

    有了它真是方便。                                                                


177.It slipped my mind.                                                         

    我不留神忘了。                                                                  


178.It takes time.                                                              

    这需要时间。                                                                    


179.It will come to me.                                                         

    我会想起来的。                                                                  


180.It will do you good.                                                        

    这会对你有好处。                                                                


181.It won't happen again.                                                      

    下不为例。                                                                      


182.It won't take much time.                                                    

    不会发很多时间的。                                                              


183.It won't work.                                                              

    行不通。                                                                        


184.It's nice meeting you.                                                      

    很高兴认识你。                                                                  


185.It's a deal.                                                                

    一言为定。                                                                      


186.It's a long story.                                                          

    真是一言难尽。                                                                  


187.It's a nice day today.                                                      

    今天天气很好。                                                                  


188.It's a once in a lifetime chance.                                           

    这是一生难得的机会。                                                            


189.It's a pain in the neck.                                                    

    这真是苦不堪言。                                                                


190.It's a piece of cake.                                                       

    这很容易。                                                                      


191.It's a small world.                                                         

    这世界真小。                                                                    


192.It's a waste of time.                                                       

    这是浪费时间。                                                                  


193.It's about time.                                                            

    时间差不多了/是时候了。                                                        


194.It's all my fault.                                                          

    都是我的错。                                                                    


195.It's awesome.                                                               

    棒极了。                                                                        


196.It's awful.                                                                 

    真糟糕。                                                                        


197.It's been a long time.                                                      

    好久不见。                                                                      


198.It's better than nothing.                                                   

    总比没有好。                                                                    


199.It's essential.                                                             

    这是必要的。                                                                    


200.It's hard to say.                                                           

    很难说。                                                                        


201.It's incredible.                                                            

    令人难以置信/不可思议。                                                        


202.It's just what I had in mind.                                               

    这正是我想要的。                                                                


203.It's my pleasure.                                                           

    这是我的荣幸。                                                                  


204.It's no big deal.                                                           

    这没什么大不了的。                                                              


205.It's not your fault.                                                        

    不是你的错。                                                                    


206.It's nothing.                                                               

    小事情/不足挂齿。                                                              


207.It's only a matter of time.                                                 

    这只是时间问题。                                                                


208.It's out of the question.                                                   

    这是不可能的。                                                                  


209.It's time for dinner.                                                       

    该吃晚饭了。                                                                    


210.It's up in the air.                                                         

    尚未决定。                                                                      


211.It's up to date.                                                            

    这个很时兴。                                                                    


212.It's up to you.                                                             

    一切由你决定。                                                                  


213.It's very popular.                                                          

    他很受欢迎。                                                                    


214.It's worth seeing.                                                          

    它绝对值得一看。                                                                


215.Just let it be.                                                             

    就这样吧。                                                                      


216.Just to be on the safe side.                                                

    为安全起见。                                                                    


217.Keep the change.                                                            

    不用找了。                                                                      


218.Keep up the good work.                                                      

    再接再厉。                                                                      


219.Keep your fingers crossed.                                                  

    为成功祈祷吧。                                                                  


220.Kill two birds with one stone.                                              

    一举两得。                                                                      


221.Let me get back to you.                                                     

    我过一会儿打给你吧。                                                            


222.Let me guess.                                                               

    让我猜一猜。                                                                    


223.Let me put it this way.                                                     

    让我这么说吧。                                                                  


224.Let me see.                                                                 

    让我想一想。                                                                    


225.Let's call it a day.                                                        

    我们今天就到这儿吧。                                                            


226.Let's celebrate!                                                            

    让我们好好庆祝一下吧!                                                          


227.Let's find out.                                                             

    我们去问一下吧。                                                                


228.Let's get to the point.                                                     

    让我们言归正传。                                                                


229.Let's get together sometime.                                                

    有时间我们聚一下吧。                                                            


230.Let's hope for the best.                                                    

    让我们往好处想吧。                                                              


231.Let's keep in touch.                                                        

    让我们保持联系。                                                                


232.Let's make up.                                                              

    让我们言归于好吧。                                                              


233.Let's go visit them.                                                        

    让我们去拜访他们吧。                                                            


234.Let's talk over dinner.                                                     

    我们边吃边谈吧。                                                                


235.Long time no see.                                                           

    好久不见。                                                                      


236.Look before you leap.                                                       

    三思而后行。                                                                    


237.May I ask you a question?                                                   

    我可以问一个问题吗?                                                            


238.May I have a receipt?                                                       

    我可以要一张收据吗?                                                            


239.May I have your name,please?                                                

    请问你叫什么名字?                                                              


240.May I pay by credit card?                                                   

    我可以用信用卡付款吗?                                                          


241.May I try it on?                                                            

    我能试穿一下吗?                                                                


242.Maybe it will work.                                                         

    也许这个办法会有效。                                                            


243.Maybe some other time.                                                      

    也许下一次吧。                                                                  


244.My mouth is watering.                                                       

    我在流口水了。                                                                  


245.My phone was out of order.                                                  

    我的电话坏了。                                                                  


246.No pain,no gain.                                                            

    不劳则无获。                                                                    


247.No problem.                                                                 

    没问题。                                                                        


248.Nothing is impossible to a willing heart.                                   

    心之所愿,无事不成。                                                            


249.Pain past is pleasure.                                                      

    过去的痛苦即是快乐。                                                            


250.Please accept my apology.                                                   

    请接受我的道歉。                                                                


251.Please don't blame yourself.                                                

    请不要责怪你自己。                                                              


252.Please leave me alone.                                                      

    请别打扰我。                                                                    


253.Please let me know.                                                         

    请告诉我一声。                                                                  


254.Please make yourself at home.                                               

    请别客气。                                                                      


255.Please show me the menu.                                                    

    请把菜单给我。                                                                  


256.Probably.                                                                   

    可能吧。                                                                        


257.So far ,so good.                                                            

    到目前为止还好。                                                                


258.Something must be done about it.                                            

    必须得想个办法。                                                                


259.Something's come up.                                                        

    发生了一些事。                                                                  


260.Storms make trees take deeper roots.                                        

    风暴使树木深深扎根。                                                            


261.Suit yourself.                                                              

    随你便。                                                                        


262.Take care.                                                                  

    请多保重。                                                                      


263.Take it or leave it.                                                        

    要不要由你。                                                                    


264.Take my word for it.                                                        

    相信我的话。                                                                    


265.Take your time.                                                             

    慢慢来。                                                                        


266.Thank you all the same.                                                     

    不管怎样还是要谢谢你。                                                          


267.Thank you for everything.                                                   

    感谢你做的一切。                                                                


268.Thanks a million.                                                           

    非常感谢。                                                                      


269.Thanks for the warning.                                                     

    谢谢你的提醒。                                                                  


270.Thanks for your cooperation.                                                

    多谢合作。                                                                      


271.That couldn't be better.                                                    

    那再好不过了。                                                                  


272.That depends.                                                               

    看情况。                                                                        


273.That makes sense.                                                           

    那可以理解。                                                                    


274.That reminds me.                                                            

    那可提醒我了。                                                                  


275.That rings a bell.                                                          

    我总算想起来了。                                                                


276.That sounds like a good idea.                                               

    那听上去是个好主意。                                                            


277.That's all right.                                                           

    没关系。                                                                        


278.That's disgusting.                                                          

    真讨厌。                                                                        


279.That's fair.                                                                

    那样公平。                                                                      


280.That's for sure.                                                            

    那是肯定的。                                                                    


281.That's good to know.                                                        

    幸好知道了这件事。                                                              


282.That's just what I was thinking.                                            

    我也是这么想的。                                                                


283.That's life.                                                                

    这就是生活。                                                                    


284.That's more like it.                                                        

    那样才像话。                                                                    


285.That's not a problem.                                                       

    那没问题。                                                                      


286.That's not true.                                                            

    那是不对的。                                                                    


287.That's OK.                                                                  

    可以。                                                                          


288.That's ridiculous.                                                          

    那太荒唐了。                                                                    


289.That's the way I look at it,too.                                            

    我也是这么想。                                                                  


290.That's the way it is.                                                       

    就是这么回事。                                                                  


291.That's worthwhile.                                                          

    那是值得的。                                                                    


292.The same to you.                                                            

    你也一样。                                                                      


293.The shortest answer is doing.                                               

    最简短的回答是干。                                                              


294.The sooner,the better.                                                      

    愈快愈好。                                                                      


295.There is a call for you.                                                    

    有你的电话。                                                                    


296.There is no doubt about it.                                                 

    那是毫无疑问的。                                                                


297.There is nothing I can do.                                                  

    我无能为力。                                                                    


298.There's a possibility.                                                      

    有这个可能。                                                                    


299.These things happen all the time.                                           

    这是常有的事。                                                                  


300.This soup tastes great.                                                     

    这个汤非常美味。                                                                


301.Time is money.                                                              

    时间就是金钱。                                                                  


302.Tomorrow never comes.                                                       

    莫依赖明天。                                                                    


303.Two heads are better than one.                                              

    人多智广。                                                                      


304.We are in the sme boat.                                                     

    我们的处境相同。                                                                


305.We can get by.                                                              

    我们过得去。                                                                    


306.We can work it out.                                                         

    我们可以解决这个问题。                                                          


307.We have a lot in common.                                                    

    我们有很多相同之处。                                                            


308.We'll see.                                                                  

    再说吧。                                                                        


309.What a coincidence!                                                         

    真是太巧了!                                                                    


310.What a shame!                                                               

    真是遗憾!                                                                      


311.What are you up to?                                                         

    你在忙什么呢?                                                                  


312.What are you talking about?                                                 

    你在说什么?                                                                     


313.What are your plans for the weekend?                                        

    你周末计划做什么?                                                              


314.What can I do for you?                                                      

    要我帮忙吗?                                                                    


315.What do you do for relaxation?                                              

    你做什么消遣?                                                                  


316.What do you recommend?                                                      

    你推荐什么?                                                                    


317.What do you think of my new car?                                            

    你觉得我的新车怎么样?                                                          


318.What do you think of it?                                                    

    你觉得怎么样?                                                                  


319.What is it about?                                                           

    这是关于什么的?                                                                


320.What is it like there?                                                      

    那儿怎么样?                                                                    


321.What makes you say so?                                                      

    你怎么这么说?                                                                  


322.What's going on?                                                            

    发生什么事了?                                                                  


323.What's on your mind?                                                        

    你在想什么呢?                                                                  


324.What's the deadline?                                                        

    截止到什么时候?                                                                


325.What's the matter with you?                                                

    你怎么啦?                                                                      


326.What's the purpose of your visit?                                          

    你来访的目的是什么?                                                            


327.What's the weather like?                                                    

    天气怎么样?                                                                    


328.What's your favorite food?                                                  

    你最喜欢的食物是什么?                                                          


329.What's your job?                                                            

    你做什么工作?                                                                  


330.Whatever you think is fine with me.                                         

    我随你。                                                                        


331.When is the most convenient time for you?                                   

    你什么时候最方便?                                                              


332.When will it be ready?                                                      

    什么时候能准备好?                                                              


333.Where are you going?                                                        

    你去哪儿?                                                                      


334.Where can I check in?                                                       

    在那儿办理登记手续?                                                             


335.Where can I go for help?                                                    

    我该怎么办?                                                                    


336.Where do you live?                                                          

    你住在哪儿?                                                                    


337.Where have you been?                                                        

    你去哪儿了?                                                                    


338.Where is the rest room,please?                                              

    请问洗手间在哪儿?                                                              


339.Where were we?                                                              

    我们说到哪儿了?                                                                


340.Who is in charge here?                                                      

    这里谁负责?                                                                    


341.Would you care for a drink?                                                 

    你要不要来点儿喝的?                                                            


342.Would you do me a favor?                                                    

    你能帮我一个忙吗?                                                              


343.You are just saying that.                                                   

    你只是说说而已。                                                                


344.You are kidding.                                                            

    你开玩笑吧。                                                                    


345.You are so considerate.                                                     

    你真有心。                                                                      


346.You can count on me.                                                        

    你可以指望我。                                                                  


347.You can say that again.                                                     

    我同意。                                                                        


348.You can't complain.                                                         

    你该知足了。                                                                    


349.You deserve it.                                                             

    这是你应得的。                                                                  


350.You did a good job.                                                         

    你干得很好。                                                                    


351.You get what you pay for.                                                   

    一分钱一分货。                                                                  


352.You got a good deal.                                                        

    你买得真便宜。                                                                  


353.You need a vacation.                                                        

    你需要休息。                                                                    


354.You never know.                                                             

    世事难料。                                                                      


355.You said it.                                                                

    你算说对了。                                                                    


356.You should give it a try.                                                   

    你应该试一试。                                                                  


357.You should take advantage of it.                                            

    你应该好好利用这个机会。                                                        


358.You will be better off.                                                     

    你的状况会好起来的。                                                            


359.You will have to wait and see.                                              

    你得等一等看。                                                                  


360.You'll get used to it.                                                      

    你会习惯的。                                                                    


361.You've dialed the wrong number.                                             

    你拨错电话号码了。                                                              


362.You've got  a point there.                                                  

    你说的有道理。                                                                  


363.You've got it.                                                              

    你明白了。                                                                      


364.You've made a good choice.                                                  

    你的眼力不错。                                                                  


365.Your satisfaction is guaranteed.                                            

    包你满意


', '205', '4', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-03-23', '系统管理员', null, null, '2015-03-23 17:23:21', '2015-03-23 17:23:21', '1'); +INSERT INTO `tb_article` VALUES ('3215', '249', '【问底】徐汉彬:Web系统大规模并发——电商秒杀与抢购', '

转自:http://www.csdn.net/article/2014-11-28/2822858

【导读】徐汉彬曾在阿里巴巴和腾讯从事4年多的技术研发工作,负责过日请求量过亿的Web系统升级与重构,目前在小满科技创业,从事SaaS服务技术建设。 

\"\" 

电商的秒杀和抢购,对我们来说,都不是一个陌生的东西。然而,从技术的角度来说,这对于Web系统是一个巨大的考验。当一个Web系统,在一秒钟内收到数以万计甚至更多请求时,系统的优化和稳定至关重要。这次我们会关注秒杀和抢购的技术实现和优化,同时,从技术层面揭开,为什么我们总是不容易抢到火车票的原因? 

一、大规模并发带来的挑战 

在过去的工作中,我曾经面对过5w每秒的高并发秒杀功能,在这个过程中,整个Web系统遇到了很多的问题和挑战。如果Web系统不做针对性的优化,会轻而易举地陷入到异常状态。我们现在一起来讨论下,优化的思路和方法哈。 

1. 请求接口的合理设计

一个秒杀或者抢购页面,通常分为2个部分,一个是静态的HTML等内容,另一个就是参与秒杀的Web后台请求接口。

通常静态HTML等内容,是通过CDN的部署,一般压力不大,核心瓶颈实际上在后台请求接口上。这个后端接口,必须能够支持高并发请求,同时,非常重要的一点,必须尽可能“快”,在最短的时间里返回用户的请求结果。为了实现尽可能快这一点,接口的后端存储使用内存级别的操作会更好一点。仍然直接面向MySQL之类的存储是不合适的,如果有这种复杂业务的需求,都建议采用异步写入。

 

当然,也有一些秒杀和抢购采用“滞后反馈”,就是说秒杀当下不知道结果,一段时间后才可以从页面中看到用户是否秒杀成功。但是,这种属于“偷懒”行为,同时给用户的体验也不好,容易被用户认为是“暗箱操作”。

2. 高并发的挑战:一定要“快”

我们通常衡量一个Web系统的吞吐率的指标是QPS(Query Per Second,每秒处理请求数),解决每秒数万次的高并发场景,这个指标非常关键。举个例子,我们假设处理一个业务请求平均响应时间为100ms,同时,系统内有20台Apache的Web服务器,配置MaxClients为500个(表示Apache的最大连接数目)。

那么,我们的Web系统的理论峰值QPS为(理想化的计算方式):

20*500/0.1 = 100000 (10万QPS)

咦?我们的系统似乎很强大,1秒钟可以处理完10万的请求,5w/s的秒杀似乎是“纸老虎”哈。实际情况,当然没有这么理想。在高并发的实际场景下,机器都处于高负载的状态,在这个时候平均响应时间会被大大增加。

就Web服务器而言,Apache打开了越多的连接进程,CPU需要处理的上下文切换也越多,额外增加了CPU的消耗,然后就直接导致平均响应时间增加。因此上述的MaxClient数目,要根据CPU、内存等硬件因素综合考虑,绝对不是越多越好。可以通过Apache自带的abench来测试一下,取一个合适的值。然后,我们选择内存操作级别的存储的Redis,在高并发的状态下,存储的响应时间至关重要。网络带宽虽然也是一个因素,不过,这种请求数据包一般比较小,一般很少成为请求的瓶颈。负载均衡成为系统瓶颈的情况比较少,在这里不做讨论哈。

那么问题来了,假设我们的系统,在5w/s的高并发状态下,平均响应时间从100ms变为250ms(实际情况,甚至更多):

20*500/0.25 = 40000 (4万QPS)

于是,我们的系统剩下了4w的QPS,面对5w每秒的请求,中间相差了1w。

然后,这才是真正的恶梦开始。举个例子,高速路口,1秒钟来5部车,每秒通过5部车,高速路口运作正常。突然,这个路口1秒钟只能通过4部车,车流量仍然依旧,结果必定出现大塞车。(5条车道忽然变成4条车道的感觉)

同理,某一个秒内,20*500个可用连接进程都在满负荷工作中,却仍然有1万个新来请求,没有连接进程可用,系统陷入到异常状态也是预期之内。

 

其实在正常的非高并发的业务场景中,也有类似的情况出现,某个业务请求接口出现问题,响应时间极慢,将整个Web请求响应时间拉得很长,逐渐将Web服务器的可用连接数占满,其他正常的业务请求,无连接进程可用。

更可怕的问题是,是用户的行为特点,系统越是不可用,用户的点击越频繁,恶性循环最终导致“雪崩”(其中一台Web机器挂了,导致流量分散到其他正常工作的机器上,再导致正常的机器也挂,然后恶性循环),将整个Web系统拖垮。

3. 重启与过载保护

如果系统发生“雪崩”,贸然重启服务,是无法解决问题的。最常见的现象是,启动起来后,立刻挂掉。这个时候,最好在入口层将流量拒绝,然后再将重启。如果是redis/memcache这种服务也挂了,重启的时候需要注意“预热”,并且很可能需要比较长的时间。

秒杀和抢购的场景,流量往往是超乎我们系统的准备和想象的。这个时候,过载保护是必要的。如果检测到系统满负载状态,拒绝请求也是一种保护措施。在前端设置过滤是最简单的方式,但是,这种做法是被用户“千夫所指”的行为。更合适一点的是,将过载保护设置在CGI入口层,快速将客户的直接请求返回。

二、作弊的手段:进攻与防守

秒杀和抢购收到了“海量”的请求,实际上里面的水分是很大的。不少用户,为了“抢“到商品,会使用“刷票工具”等类型的辅助工具,帮助他们发送尽可能多的请求到服务器。还有一部分高级用户,制作强大的自动请求脚本。这种做法的理由也很简单,就是在参与秒杀和抢购的请求中,自己的请求数目占比越多,成功的概率越高。

这些都是属于“作弊的手段”,不过,有“进攻”就有“防守”,这是一场没有硝烟的战斗哈。

1. 同一个账号,一次性发出多个请求

部分用户通过浏览器的插件或者其他工具,在秒杀开始的时间里,以自己的账号,一次发送上百甚至更多的请求。实际上,这样的用户破坏了秒杀和抢购的公平性。

这种请求在某些没有做数据安全处理的系统里,也可能造成另外一种破坏,导致某些判断条件被绕过。例如一个简单的领取逻辑,先判断用户是否有参与记录,如果没有则领取成功,最后写入到参与记录中。这是个非常简单的逻辑,但是,在高并发的场景下,存在深深的漏洞。多个并发请求通过负载均衡服务器,分配到内网的多台Web服务器,它们首先向存储发送查询请求,然后,在某个请求成功写入参与记录的时间差内,其他的请求获查询到的结果都是“没有参与记录”。这里,就存在逻辑判断被绕过的风险。

 


应对方案:

在程序入口处,一个账号只允许接受1个请求,其他请求过滤。不仅解决了同一个账号,发送N个请求的问题,还保证了后续的逻辑流程的安全。实现方案,可以通过Redis这种内存缓存服务,写入一个标志位(只允许1个请求写成功,结合watch的乐观锁的特性),成功写入的则可以继续参加。

 

或者,自己实现一个服务,将同一个账号的请求放入一个队列中,处理完一个,再处理下一个。

2. 多个账号,一次性发送多个请求

很多公司的账号注册功能,在发展早期几乎是没有限制的,很容易就可以注册很多个账号。因此,也导致了出现了一些特殊的工作室,通过编写自动注册脚本,积累了一大批“僵尸账号”,数量庞大,几万甚至几十万的账号不等,专门做各种刷的行为(这就是微博中的“僵尸粉“的来源)。举个例子,例如微博中有转发抽奖的活动,如果我们使用几万个“僵尸号”去混进去转发,这样就可以大大提升我们中奖的概率。

这种账号,使用在秒杀和抢购里,也是同一个道理。例如,iPhone官网的抢购,火车票黄牛党。

 

应对方案:

这种场景,可以通过检测指定机器IP请求频率就可以解决,如果发现某个IP请求频率很高,可以给它弹出一个验证码或者直接禁止它的请求:

  1. 弹出验证码,最核心的追求,就是分辨出真实用户。因此,大家可能经常发现,网站弹出的验证码,有些是“鬼神乱舞”的样子,有时让我们根本无法看清。他们这样做的原因,其实也是为了让验证码的图片不被轻易识别,因为强大的“自动脚本”可以通过图片识别里面的字符,然后让脚本自动填写验证码。实际上,有一些非常创新的验证码,效果会比较好,例如给你一个简单问题让你回答,或者让你完成某些简单操作(例如百度贴吧的验证码)。
  2. 直接禁止IP,实际上是有些粗暴的,因为有些真实用户的网络场景恰好是同一出口IP的,可能会有“误伤“。但是这一个做法简单高效,根据实际场景使用可以获得很好的效果。

3. 多个账号,不同IP发送不同请求

所谓道高一尺,魔高一丈。有进攻,就会有防守,永不休止。这些“工作室”,发现你对单机IP请求频率有控制之后,他们也针对这种场景,想出了他们的“新进攻方案”,就是不断改变IP。

 

有同学会好奇,这些随机IP服务怎么来的。有一些是某些机构自己占据一批独立IP,然后做成一个随机代理IP的服务,有偿提供给这些“工作室”使用。还有一些更为黑暗一点的,就是通过木马黑掉普通用户的电脑,这个木马也不破坏用户电脑的正常运作,只做一件事情,就是转发IP包,普通用户的电脑被变成了IP代理出口。通过这种做法,黑客就拿到了大量的独立IP,然后搭建为随机IP服务,就是为了挣钱。

应对方案:

说实话,这种场景下的请求,和真实用户的行为,已经基本相同了,想做分辨很困难。再做进一步的限制很容易“误伤“真实用户,这个时候,通常只能通过设置业务门槛高来限制这种请求了,或者通过账号行为的”数据挖掘“来提前清理掉它们。

僵尸账号也还是有一些共同特征的,例如账号很可能属于同一个号码段甚至是连号的,活跃度不高,等级低,资料不全等等。根据这些特点,适当设置参与门槛,例如限制参与秒杀的账号等级。通过这些业务手段,也是可以过滤掉一些僵尸号。

4. 火车票的抢购

看到这里,同学们是否明白你为什么抢不到火车票?如果你只是老老实实地去抢票,真的很难。通过多账号的方式,火车票的黄牛将很多车票的名额占据,部分强大的黄牛,在处理验证码方面,更是“技高一筹“。

高级的黄牛刷票时,在识别验证码的时候使用真实的人,中间搭建一个展示验证码图片的中转软件服务,真人浏览图片并填写下真实验证码,返回给中转软件。对于这种方式,验证码的保护限制作用被废除了,目前也没有很好的解决方案。

 

因为火车票是根据身份证实名制的,这里还有一个火车票的转让操作方式。大致的操作方式,是先用买家的身份证开启一个抢票工具,持续发送请求,黄牛账号选择退票,然后黄牛买家成功通过自己的身份证购票成功。当一列车厢没有票了的时候,是没有很多人盯着看的,况且黄牛们的抢票工具也很强大,即使让我们看见有退票,我们也不一定能抢得过他们哈。 

 

最终,黄牛顺利将火车票转移到买家的身份证下。

解决方案:

并没有很好的解决方案,唯一可以动心思的也许是对账号数据进行“数据挖掘”,这些黄牛账号也是有一些共同特征的,例如经常抢票和退票,节假日异常活跃等等。将它们分析出来,再做进一步处理和甄别。

三、高并发下的数据安全

我们知道在多线程写入同一个文件的时候,会存现“线程安全”的问题(多个线程同时运行同一段代码,如果每次运行结果和单线程运行的结果是一样的,结果和预期相同,就是线程安全的)。如果是MySQL数据库,可以使用它自带的锁机制很好的解决问题,但是,在大规模并发的场景中,是不推荐使用MySQL的。秒杀和抢购的场景中,还有另外一个问题,就是“超发”,如果在这方面控制不慎,会产生发送过多的情况。我们也曾经听说过,某些电商搞抢购活动,买家成功拍下后,商家却不承认订单有效,拒绝发货。这里的问题,也许并不一定是商家奸诈,而是系统技术层面存在超发风险导致的。

1. 超发的原因

假设某个抢购场景中,我们一共只有100个商品,在最后一刻,我们已经消耗了99个商品,仅剩最后一个。这个时候,系统发来多个并发请求,这批请求读取到的商品余量都是99个,然后都通过了这一个余量判断,最终导致超发。(同文章前面说的场景)

 

在上面的这个图中,就导致了并发用户B也“抢购成功”,多让一个人获得了商品。这种场景,在高并发的情况下非常容易出现。

2. 悲观锁思路

解决线程安全的思路很多,可以从“悲观锁”的方向开始讨论。

悲观锁,也就是在修改数据的时候,采用锁定状态,排斥外部请求的修改。遇到加锁的状态,就必须等待。

 

虽然上述的方案的确解决了线程安全的问题,但是,别忘记,我们的场景是“高并发”。也就是说,会很多这样的修改请求,每个请求都需要等待“锁”,某些线程可能永远都没有机会抢到这个“锁”,这种请求就会死在那里。同时,这种请求会很多,瞬间增大系统的平均响应时间,结果是可用连接数被耗尽,系统陷入异常。

3. FIFO队列思路

那好,那么我们稍微修改一下上面的场景,我们直接将请求放入队列中的,采用FIFO(First Input First Output,先进先出),这样的话,我们就不会导致某些请求永远获取不到锁。看到这里,是不是有点强行将多线程变成单线程的感觉哈。

\"\" 

然后,我们现在解决了锁的问题,全部请求采用“先进先出”的队列方式来处理。那么新的问题来了,高并发的场景下,因为请求很多,很可能一瞬间将队列内存“撑爆”,然后系统又陷入到了异常状态。或者设计一个极大的内存队列,也是一种方案,但是,系统处理完一个队列内请求的速度根本无法和疯狂涌入队列中的数目相比。也就是说,队列内的请求会越积累越多,最终Web系统平均响应时候还是会大幅下降,系统还是陷入异常。

4. 乐观锁思路

这个时候,我们就可以讨论一下“乐观锁”的思路了。乐观锁,是相对于“悲观锁”采用更为宽松的加锁机制,大都是采用带版本号(Version)更新。实现就是,这个数据所有请求都有资格去修改,但会获得一个该数据的版本号,只有版本号符合的才能更新成功,其他的返回抢购失败。这样的话,我们就不需要考虑队列的问题,不过,它会增大CPU的计算开销。但是,综合来说,这是一个比较好的解决方案。

 

有很多软件和服务都“乐观锁”功能的支持,例如Redis中的watch就是其中之一。通过这个实现,我们保证了数据的安全。

四、小结

互联网正在高速发展,使用互联网服务的用户越多,高并发的场景也变得越来越多。电商秒杀和抢购,是两个比较典型的互联网高并发场景。虽然我们解决问题的具体技术方案可能千差万别,但是遇到的挑战却是相似的,因此解决问题的思路也异曲同工。


', '197', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-03-25', '系统管理员', null, null, '2015-03-25 15:27:26', '2015-03-25 15:27:26', '1'); +INSERT INTO `tb_article` VALUES ('3216', '249', 'Oracle执行计划不走索引的原因总结', '

Oracled的索引介绍请参照:http://www.oschina.net/question/30362_4057

Oracle性能优化文档:http://wenku.baidu.com/view/b2aaba3887c24028915fc337.html


不走索引大体有以下几个原因:

  • 你在Instance级别所用的是all_rows的方式
  • 你的表的统计信息(最可能的原因)
  • 你的表很小,上文提到过的,Oracle的优化器认为不值得走索引。

解决方法:

可以修改init.ora中的OPTIMIZER_MODE这个参数,把它改为Rule或Choose,重起数据库。也可以使用4中所提的Hint。

不走索引的其它原因:

1、建立组合索引,但查询谓词并未使用组合索引的第一列,此处有一个INDEX SKIP SCAN概念。

2、在包含有null值的table列上建立索引,当时使用select count(*) from table时不会使用索引。

3、在索引列上使用函数时不会使用索引,如果一定要使用索引只能建立函数索引。

4、当被索引的列进行隐式的类型转换时不会使用索引。如:select * from t where indexed_column = 5,而indexed_column列建立索引但类型是字符型,这时Oracle会产生隐式的类型转换,转换后的语句类似于select * from t where to_number(indexed_column) = 5,此时不走索引的情况类似于case3。日期转换也有类似问题,如: select * from t where trunc(date_col) = trunc(sysdate)其中date_col为索引列,这样写不会走索引(becausetrunc(date_col)--- >隐式的类型转换),可改写成select * from t where date_col >= trunc(sysdate) and date_col < trunc(sysdate+1),此查询会走索引。

5、并不是所有情况使用索引都会加快查询速度,full scan table 有时会更快,尤其是当查询的数据量占整个表的比重较大时,因为full scan table采用的是多块读,当Oracle优化器没有选择使用索引时不要立即强制使用,要充分证明使用索引确实查询更快时再使用强制索引。

6、<>

7、like’%dd’百分号在前。

关于Oracle执行计划不走索引的原因的相关知识的总结就介绍到这里了,希望本次的介绍能够对您有所收获!


', '233', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-03-25', '系统管理员', null, null, '2015-03-25 15:32:26', '2015-03-25 15:32:26', '1'); +INSERT INTO `tb_article` VALUES ('3217', '249', 'order by与索引', '

转自:http://zhuyuehua.iteye.com/blog/1128833


ORDER BY 通常会有两种实现方法,一个是利用有序索引自动实现,也就是说利用有序索引的有序性就不再另做排序操作了。另一个是把结果选好之后再排序。

用有序索引这种,当然是最快的,不过有一些限制条件,来看下面的测试。

 

测试数据:student表有两个字段id ,sid ,id是主键。一共有20W条记录,id从1到200000,sid也是从1到200000的数据。

 

第一种情况 :

 

order by的字段不在where条件也不在select中

 

select sid from zhuyuehua.student where sid < 50000 order by id;


\"\"

 

第二种情况 :

 

order by的字段不在where条件但在select中。

 

select id,sid from zhuyuehua.student where sid < 50000 order by id;


\"\"

 

第三种情况 :

 

order by的字段在where条件但不在select中。

 

select sid from zhuyuehua.student where sid < 50000 and id < 50000 order by id;


\"\"

 

 

第四种情况 :

 

order by的字段在where条件但不在select中。倒序排列

 

select sid from zhuyuehua.student where sid < 50000 and id < 50000 order by id desc;

 


\"\"

 

测试结果:

 

order by的字段不在where条件不在select中     有排序操作

 

order by的字段不在where条件但在select中     有排序操作

 

order by的字段在where条件但不在select中     无排序操作

 

order by的字段在where条件但不在select中(倒序)     无排序操作

 

结论:

 

当order by 字段出现在where条件中时,才会利用索引而无需排序操作。其他情况,order by不会出现排序操作。

 

分析:

 

为什么只有order by 字段出现在where条件中时,才会利用该字段的索引而避免排序。这要说到数据库如何取到我们需要的数据了。

一条SQL实际上可以分为三步。

1.得到数据

 

2.处理数据

 

3.返回处理后的数据

 

比如上面的这条语句select sid from zhuyuehua.student where sid < 50000 and id < 50000 order by id desc

第一步:根据where条件和统计信息生成执行计划,得到数据。

 

第二步:将得到的数据排序。

 

当执行处理数据(order by)时,数据库会先查看第一步的执行计划,看order by 的字段是否在执行计划中利用了索引。如果是,则可以利用索引顺序而直接取得已经排好序的数据。如果不是,则排序操作。

 

第三步:返回排序后的数据。

 

另外:

 

上面的5万的数据sort只用了25ms,也许大家觉得sort不怎么占用资源。可是,由于上面的表的数据是有序的,所以排序花费的时间较少。如果 是个比较无序的表,sort时间就会增加很多了。另外排序操作一般都是在内存里进行的,对于数据库来说是一种CPU的消耗,由于现在CPU的性能增强,对 于普通的几十条或上百条记录排序对系统的影响也不会很大。但是当你的记录集增加到上百万条以上时,你需要注意是否一定要这么做了,大记录集排序不仅增加了 CPU开销,而且可能会由于内存不足发生硬盘排序的现象,当发生硬盘排序时性能会急剧下降。

 

注:ORACLE或者DB2都有一个空间来供SORT操作使用(上面所说的内存排序),如ORACLE中是用户全局区(UGA),里面有SORT_AREA_SIZE等参数的设置。如果当排序的数据量大时,就会出现排序溢出(硬盘排序),这时的性能就会降低很多了。

 

总结:

 

当order by 中的字段出现在where条件中时,才会利用索引而不排序,更准确的说,order by 中的字段在执行计划中利用了索引时,不用排序操作。

 

这个结论不仅对order by有效,对其他需要排序的操作也有效。比如group by 、union 、distinct等。


', '181', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-03-25', '系统管理员', null, null, '2015-03-25 15:34:49', '2015-03-25 15:34:49', '1'); +INSERT INTO `tb_article` VALUES ('3218', '249', 'count(1)与count(*)比较', '

count(1)count(*)比较:

如果你的数据表没有主键,那么count(1)count(*)快 
如果有主键的话,那主键(联合主键)作为count的条件也比count(*)要快 
如果你的表只有一个字段的话那count(*)就是最快的啦 
count(*) count(1)
 两者比较。主要还是要count(1)所相对应的数据字段。 
如果count(1)是聚索引,id,那肯定是count(1)快。但是差的很小的。 
因为count(*),自动会优化指定到那一个字段。所以没必要去count(?),用count(*),sql会帮你完成优化的

count详解:

count(*)将返回表格中所有存在的行的总数包括值为null的行,然而count(列名)将返回表格中除去null以外的所有行的总数(有默认值的列也会被计入.
distinct
 列名,得到的结果将是除去值为null和重复数据后的结果

----------------------------------------------------------------------------------------------------------------
举例演示如下:


SQL> create table test
2 (
3 ename varchar2(10),
4 sal number(4)
5 );

表已创建。

SQL> insert into test values('fxe1',90);

已创建 1 行。

SQL> insert into test(ename) values('fxe2');

已创建 1 行。

SQL> insert into test(ename) values('fxe3');

已创建 1 行。

SQL> insert into test(ename) values('fxe4');

已创建 1 行。

SQL> insert into test values('fxe5',80);

已创建 1 行。

SQL> insert into test values('fxe6',80);

已创建 1 行。

SQL> select * from test;

ENAME SAL
---------- ----------
fxe1 90
fxe2
fxe3
fxe4
fxe5 80

fxe6 80

SQL> select count(*) from test;

COUNT(*)
----------
6

SQL> select count(sal) from test;

COUNT(SAL)
----------
3


SQL> select count(distinct sal) from test;

COUNT(DISTINCTSAL)
------------------
2

SQL> select distinct sal from test;

SAL
----------
80
90


', '270', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-03-25', '系统管理员', null, null, '2015-03-25 15:38:14', '2015-03-25 15:38:14', '1'); +INSERT INTO `tb_article` VALUES ('3219', '249', 'in与exist,not in 与not exist 的区别', '

in和exists
in 是把外表和内表作hash 连接,而exists是对外表作loop循环,每次loop循环再对内表进行查询。一直以来认为exists比in效率高的说法是不准确的。
如果查询的两个表大小相当,那么用in和exists差别不大。
如果两个表中一个较小,一个是大表,则子查询表大的用exists,子查询表小的用in:
例如:表A(小表),表B(大表)

1:select * from A where cc in (select cc from B)
效率低,用到了A表上cc列的索引;

select * from A where exists(select cc from B where cc=A.cc)
效率高,用到了B表上cc列的索引。
相反的2:

select * from B where cc in (select cc from A)
效率高,用到了B表上cc列的索引;

select * from B where exists(select cc from A where cc=B.cc)
效率低,用到了A表上cc列的索引。


not in 和not exists

如果查询语句使用了not in 那么内外表都进行全表扫描,没有用到索引;而not exists 的子查询依然能用到表上的索引。所以无论那个表大,用not exists都比not in要快。

 

not in 逻辑上不完全等同于not exists,如果你误用了not in,小心你的程序存在致命的BUG:

请看下面的例子:
create table t1 (c1 number,c2 number);
create table t2 (c1 number,c2 number);

insert into t1 values (1,2);
insert into t1 values (1,3);
insert into t2 values (1,2);
insert into t2 values (1,null);

select * from t1 where c2 not in (select c2 from t2);
no rows found
select * from t1 where not exists (select 1 from t2 where t1.c2=t2.c2);
c1 c2
1 3

正如所看到的,not in 出现了不期望的结果集,存在逻辑错误。如果看一下上述两个select语句的执行计划,也会不同。后者使用了hash_aj。
因此,请尽量不要使用not in(它会调用子查询),而尽量使用not exists(它会调用关联子查询)。如果子查询中返回的任意一条记录含有空值,则查询将不返回任何记录,正如上面例子所示。
除非子查询字段有非空限制,这时可以使用not in ,并且也可以通过提示让它使用hasg_aj或merge_aj连接。

 

------------------------------------------------------------------------------------------------------------

上例完全不能证明 not in 逻辑上不完全等同于not exists 因为not in子查询会涉及null的错误,notexists 也是如此的

子查询一样,结果是一样的。

select * from t1 where c2 not in (select c2 from t2);
no rows found

select * from t1 where not exists (select c2 from t2);
no rows found
因为子查询存在null,oracle server需要运算 t1.c2 <> t2.c2, 如果t2.c2存在null, 那么t1.c2 <> t2.c2 ==> null,即导致条件不满足,
所以no row selected

select * from t1 where c2 not in (select c2 from t2 where t1.c2=t2.c2);

c1 c2
1 3

select * from t1 where not exists (select c2 from t2 where t1.c2=t2.c2);
c1 c2
1 3

子查询不存在null,所以结果一样,因此俩者逻辑上我认为是一样的,只不过运行机制不同,效率不同。

----------------------------------------------------------------------------- 

in适合内外表都很大的情况,exists适合外表结果集很小的情况。
exists 和 in 使用一例 
=========================================================== 
今天市场报告有个sql及慢,运行需要20多分钟,如下:
update p_container_decl cd
set cd.ANNUL_FLAG='0001',ANNUL_DATE = sysdate
where exists(
select 1
from (
select tc.decl_no,tc.goods_no
from p_transfer_cont tc,P_AFFIRM_DO ad
where tc.GOODS_DECL_NO = ad.DECL_NO
and ad.DECL_NO = 'sssssssssssssssss'
) a
where a.decl_no = cd.decl_no
and a.goods_no = cd.goods_no
)
上面涉及的3个表的记录数都不小,均在百万左右。根据这种情况,我想到了前不久看的tom的一篇文章,说的是exists和in的区别,
in 是把外表和内表作hash join,而exists是对外表作loop,每次loop再对内表进行查询。
这样的话,in适合内外表都很大的情况,exists适合外表结果集很小的情况。

而我目前的情况适合用in来作查询,于是我改写了sql,如下:
update p_container_decl cd
set cd.ANNUL_FLAG='0001',ANNUL_DATE = sysdate
where (decl_no,goods_no) in
(
select tc.decl_no,tc.goods_no
from p_transfer_cont tc,P_AFFIRM_DO ad
where tc.GOODS_DECL_NO = ad.DECL_NO
and ad.DECL_NO = ‘ssssssssssss’


让市场人员测试,结果运行时间在1分钟内。问题解决了,看来exists和in确实是要根据表的数据量来决定使用。


', '249', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-03-25', '系统管理员', null, null, '2015-03-25 15:40:16', '2015-03-25 15:40:16', '1'); +INSERT INTO `tb_article` VALUES ('3220', '247', '手机已成为我们之间最大的隔阂', '

转自:http://blog.0907.org/2013/08/29/896.html


无论走到哪,我们都时时刻刻的被手机所包围。我们的头永远低着,不带任何表情,所有的注意力都集中在那一块小小的电子屏幕上。就像这则视频中所展示的那样,我们的世界已经被手机所隔绝,与朋友们出游的夜晚,与我们的爱人躺在床上,为他人庆祝生日,我们总会将注意力放在小小的手机上,而忽视别人的感受。这 一切很让人难过,却同时又如此真实——而且这种情况看上去也不会停止。因为我们自己想继续沉溺在这块屏幕中。


这则视频的名字叫“I Forgot My Phone”(我忘了我的手机),展现了一个女生的周遭生活——虽然她并没有时刻把手机握在手中。但是她的朋友们,却永远注视着自己的手机。让我们感到难过的是,这则视频并没有夸大现实中的情况。如果在观看视频的时候你有那么一点点不舒服,那我想,唯一的原因就是你为自己相同的行径而感到难过。至少我是这样感觉的。

现在我们清楚的知道,如果我们长时间离开手机,整个人都会觉得不自在。即使不是手机,我们也同样会沉溺于电脑、平板、甚至是电视这些类似的电子设备。而我们似乎觉得手机还不够过瘾,于是像谷歌眼镜这样的产品也随之诞生了

===================================================

看一下这个公益广告吧, 不要让键盘毁了亲情


网络拉近了我们之间的距离 同时也疏远了身边周围的亲情 爱情

比起冰冷的键盘打字 更希望陪你出去玩玩

离今年三月份的三校生春季高考过去快6个月了  也就是说我在家也快6个月了

出去打工  也没人要 ╮(╯▽╰)╭

于是就在家一个人玩电脑

也快开学了 上课的时候要认真了  学的都是以后吃饭要的技能了 _(:з」∠)_

希望毕业能找个好工作 ↖( ̄▽ ̄”)

==================================================

最后总结:’你’要用互联网,而不是互联网用你

', '177', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-03-25', '系统管理员', null, null, '2015-03-25 16:20:10', '2015-03-25 16:20:10', '1'); +INSERT INTO `tb_article` VALUES ('3221', '249', 'Servlet生命周期', '

转自:http://sunnylocus.iteye.com/blog/342996


大多数程序员都知道Servlet的生命周期,简单的概括这就分为四步:servlet类加载--->实例化--->服务--->销毁。对这个过程只是肤浅了解下,对于servlet何时被销毁,还是不太情楚。下面我们描述一下Tomcat与Servlet是如何工作的,首先看下面的时序图.

\"\"

1、Web Client 向Servlet容器(Tomcat)发出Http请求

2、Servlet容器接收Web Client的请求

3、Servlet容器创建一个HttpRequest对象,将Web Client请求的信息封装到这个对象中

4、Servlet容器创建一个HttpResponse对象

5、Servlet容器调用HttpServlet对象的service方法,把HttpRequest对象与HttpResponse对象作为参数

     传给 HttpServlet对象

6、HttpServlet调用HttpRequest对象的有关方法,获取Http请求信息

7、HttpServlet调用HttpResponse对象的有关方法,生成响应数据

8、Servlet容器把HttpServlet的响应结果传给Web Client

 

对于Servlet容器(Tomcat)与HttpServlet是怎样进行交互的呢,看下类图

\"\"

Servlet的框架是由两个Java包组成的:javax.servlet与javax.servlet.http。在javax.servlet包中定义了所有的Servlet类都必须实现或者扩展的通用接口和类。在javax.servlet.http包中定义了采用Http协议通信的HttpServlet类。Servlet的框架的核心是javax.servlet.Servlet接口,所有的Servlet都必须实现这个接口。

在Servlet接口中定义了5个方法,

其中3个方法代表了Servlet的生命周期:

1、init方法:负责初始化Servlet对象。

2、service方法:负责响应客户的请求。

3、destroy方法:当Servlet对象退出生命周期时,负责释放占用的资源。

 

一、创建Servlet对象的时机

1、Servlet容器启动时:读取web.xml配置文件中的信息,构造指定的Servlet对象,创建ServletConfig对象,同时将ServletConfig对象作为参数来调用Servlet对象的init方法。

2、在Servlet容器启动后:客户首次向Servlet发出请求,Servlet容器会判断内存中是否存在指定的Servlet对象,如果没有则创建它,然后根据客户的请求创建HttpRequest、       HttpResponse对象,从而调用Servlet

     对象的service方法。

3、Servlet的类文件被更新后,重新创建Servlet

      Servlet容器在启动时自动创建Servlet,这是由在web.xml文件中为Servlet设置的<load-on-startup>属性决定

      的。从中我们也能看到同一个类型的Servlet对象在Servlet容器中以单例的形式存在。

二、销毁Servlet对象的时机

1、Servlet容器停止或者重新启动:Servlet容器调用Servlet对象的destroy方法来释放资源。以上所讲的就是Servlet对象的生命周期。那么Servlet容器如何知道创建哪一个Servlet对象?

Servlet对象如何配置?实际上这些信息是通过读取web.xml配置文件来实现的。

我们来看一下web.xml文件中的Servlet对象的配置节信息

-------------------------------------------

<servlet>

    <servlet-name>action<servlet-name>

    <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>

    <init-param>

        <param-name>config</param-name>

        <param-value>/WEB-INF/struts-config.xml</param-value>

    </init-param>

    <init-param>

        <param-name>detail</param-name>

        <param-value>2</param-value>

    </init-param>

    <init-param>

        <param-name>debug</param-name>

        <param-value>2</param-value>

    </init-param>

    <load-on-startup>2</load-on-startup>

</servlet>

<servlet-mapping>

    <servlet-name>action</servlet-name>

    <url-pattern>*.do</url-pattern>

</servlet-mapping>

--------------------------------------------

下面对上面的配置节信息进行解析

servlet-name:Servlet对象的名称

servlet-class:创建Servlet对象所要调用的类

param-name:参数名称

param-value:参数值

load-on-startup:Servlet容器启动时加载Servlet对象的顺序

servlet-mapping/servlet-name:要与servlet中的servlet-name配置节内容对应

url-pattern:客户访问的Servlet的相对URL路径

 

       当Servlet容器启动的时候读取<servlet>配置节信息,根据<servlet-class>配置节信息创建Servlet对象,同时根据<init-param>配置节信息创建HttpServletConfig对象,然后执行Servlet对象的init方法,并且根据<load-on-startup>配置节信息来决定创建Servlet对象的顺序,如果此配置节信息为负数或者没有配置,那么在Servlet容器启动时,将不加载此Servlet对象。当客户访问Servlet容器时,Servlet容器根据客户访问的URL地址,通过<servlet-mapping>配置节中的<url-pattern>配置节信息找到指定的Servlet对象,并调用此Servlet对象的service方法。

 

为了验证下,我新建了一个web app工程,新建一个Servlet,如下:

Java代码  \"收藏代码\"/
  1. package com.tdt.servlet;  
  2.   
  3. import java.io.IOException;  
  4. import java.io.PrintWriter;  
  5. import javax.servlet.ServletException;  
  6. import javax.servlet.http.HttpServlet;  
  7. import javax.servlet.http.HttpServletRequest;  
  8. import javax.servlet.http.HttpServletResponse;  
  9.   
  10. public class TestServlet extends HttpServlet {  
  11.     public void doGet(HttpServletRequest request, HttpServletResponse response)  
  12.             throws ServletException, IOException {  
  13.         this.doPost(request, response);  
  14.     }  
  15.     public void doPost(HttpServletRequest request, HttpServletResponse response)  
  16.             throws ServletException, IOException {  
  17.   
  18.         response.setContentType("text/html");  
  19.         PrintWriter out = response.getWriter();  
  20.         out.println("Hello,this is a test");  
  21.       
  22.         out.flush();  
  23.         out.close();  
  24.     }  
  25.   
  26.     public void destroy() {  
  27.         System.err.println(getServletName()+"生命周期结束");;  
  28.     }  
  29.       
  30.     public void init() throws ServletException {  
  31.         System.out.println(getServletName()+"执行初始化");  
  32.     }  
  33. }  

 当servlet被销毁时会在控制台上打印提示语句,不过我发现在tomcat中,只要不停止web容器,servlet是不会被销毁的。有没有什么方法,当service方法执行完毕就销毁这个servlet呢,我问了下老师,他说写一个监听器,不过我不知道怎么去实现它,如果有朋友知道实现的过程,还请赐教。


', '271', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-03-25', '系统管理员', null, null, '2015-03-25 16:32:07', '2015-03-25 16:32:07', '1'); +INSERT INTO `tb_article` VALUES ('3222', '249', '如何防止代码腐烂', '
摘要:很多团队都有这个问题,一个项目的代码本来开始设计得好好的,一段时间以后,代码就会变得难以理解,难以维护,难以修改。为什么?我一直在思考这个问题。

很多团队都有这个问题,一个项目的代码本来开始设计得好好的,一段时间以后,代码就会变得难以理解,难以维护,难以修改。为什么?我一直在思考这个问题。

我们先看一个人的情况。

1.程序员的成长

新手的代码

新手的代码没有经验,基本不考虑代码设计,代码规模稍稍大一点则自己就乱了。

\"如何防止代码腐烂\"

进阶者的代码

\"如何防止代码腐烂\"

小规模的时候

\"如何防止代码腐烂\"

大规模的时候

进阶者已经知道如何设计代码,懂得代码规则,但一般局限于一个模块。规模一大,模块间的调用就会比较混乱,难以维护。

有经验者的代码

\"\"

有经验者的代码,模块内部代码整洁,模块之间层次清晰,有设计模式,有成熟的体系。可以保持长期的代码整洁。

那么一个团队里面会出现什么情况呢?似乎,我们只要让一堆有经验的人来开发,那么代码必然不会出什么问题。可惜,事实不是这样。

2.背景

代码风格的多样性

有这样的。

 

\"如何防止代码腐烂\"

也有这样的

\"如何防止代码腐烂\"

放眼一看,会发现不同的代码风格,不同的设计思想,不同的设计理念。每个程序员都有自己的代码个性。

\"如何防止代码腐烂\"

团队层次的差异

一个团队内部有新人,有熟手,有牛人。一个设计好的架构可能会变坏。

\"如何防止代码腐烂\"

3.原因

风格的融合

当程序员A和程序员B在一起的时候,会有如下变化

\"如何防止代码腐烂\"

原本整洁的代码变得不整洁了。

进度的压力

进度导致了“飞线”的产生,未经设计的代码在时间的借口下产生了。

多个人修改一个模块

\"如何防止代码腐烂\"

4.本质

所有代码腐烂问题的本质是沟通问题。其表现又都可以统一为修改别人的代码。

当一个程序员在没有沟通的情况下,修改另一个程序员的模块的代码的时候,他可能不理解此模块的设计思路,代码结构,逻辑结构,于是按自己的想法去修改,虽然看起来解决了眼前的问题。但是留下了一个不稳定因素。此因素可以通过重构来解决。但是,大家都非常的“忙”,谁也没有空时间去 Review 代码,去沟通我改了你的哪里的代码。所以不稳定的因素越来越多,导致了代码的腐烂。

最快腐烂的代码,一定是很多人在修改的代码,相反,长期由一个人来维护的代码,就不会那么容易腐烂。因为一个人不存在沟通的问题,他修改代码的时候,明确的知道自己应该怎样去修改,怎样让代码更整洁。

5.解决

就一个办法,多沟通。

当你工作的时候需要修改别人的代码的时候,应该先找这个人沟通。说清楚需要改动的逻辑,然后尽量让他来修改。这样可以保证一块代码是由一个人维护,这样成本最少。

如果此人真的太忙,没有时间,那么你必须说明你的计划,让他做一个建议,最好能让他给你讲讲此模块的设计思路,代码设计,逻辑设计,现在的问题,以后的计划。保证你修改的代码都是合理的。

最理想的状态就是整个团队的思想是高度统一的,N个人可以像一个人那样去工作。这个需要团队长期的磨合。

你可以会想到,我们制定一个规范不就可以了么?纸面上的规范通常是不起作用的,成功团队的规范是在整个团队达到一个很高的水平以后总结的经验。与其说执行规范,不如说是学习经验。MFC的代码像是由一个人写出来的,Office所有产品都像是一个人做出来的。这就是高度的统一。我们把微软的规范搬过来,不一定就有效果。

代码的腐烂都是由于没有深入理解的情况下修改别人的代码导致的。

总结一下:

  • 解决的方法就是任何修改之前确保经过深入的沟通。
  • 简单的规则是一个模块仅允许一个人维护。
  • 理想的状态是整个团队思想高度统一。
', '240', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-03-25', '系统管理员', null, null, '2015-03-25 16:34:13', '2015-03-25 16:34:13', '1'); +INSERT INTO `tb_article` VALUES ('3223', '249', '单例模式的七种写法', '

转载请注明出处:http://cantellow.iteye.com/blog/838473

 

第一种(懒汉,线程不安全):

 

Java代码  \"收藏代码\"/

  1. public class Singleton {  
  2.     private static Singleton instance;  
  3.     private Singleton (){}  
  4.   
  5.     public static Singleton getInstance() {  
  6.     if (instance == null) {  
  7.         instance = new Singleton();  
  8.     }  
  9.     return instance;  
  10.     }  
  11. }  

 

 这种写法lazy loading很明显,但是致命的是在多线程不能正常工作。

第二种(懒汉,线程安全):

 

Java代码  \"收藏代码\"/

  1. public class Singleton {  
  2.     private static Singleton instance;  
  3.     private Singleton (){}  
  4.     public static synchronized Singleton getInstance() {  
  5.     if (instance == null) {  
  6.         instance = new Singleton();  
  7.     }  
  8.     return instance;  
  9.     }  
  10. }  

 

 这种写法能够在多线程中很好的工作,而且看起来它也具备很好的lazy loading,但是,遗憾的是,效率很低,99%情况下不需要同步。

第三种(饿汉):

 

Java代码  \"收藏代码\"/

  1. public class Singleton {  
  2.     private static Singleton instance = new Singleton();  
  3.     private Singleton (){}  
  4.     public static Singleton getInstance() {  
  5.     return instance;  
  6.     }  
  7. }  

 

 这种方式基于classloder机制避免了多线程的同步问题,不过,instance在类装载时就实例化,虽然导致类装载的原因有很多种,在单例模式中大多数都是调用getInstance方法, 但是也不能确定有其他的方式(或者其他的静态方法)导致类装载,这时候初始化instance显然没有达到lazy loading的效果。

第四种(饿汉,变种):

 

Java代码  \"收藏代码\"/

  1. public class Singleton {  
  2.     private Singleton instance = null;  
  3.     static {  
  4.     instance = new Singleton();  
  5.     }  
  6.     private Singleton (){}  
  7.     public static Singleton getInstance() {  
  8.     return this.instance;  
  9.     }  
  10. }  

 

 表面上看起来差别挺大,其实更第三种方式差不多,都是在类初始化即实例化instance。

第五种(静态内部类):

 

Java代码  \"收藏代码\"/

  1. public class Singleton {  
  2.     private static class SingletonHolder {  
  3.     private static final Singleton INSTANCE = new Singleton();  
  4.     }  
  5.     private Singleton (){}  
  6.     public static final Singleton getInstance() {  
  7.     return SingletonHolder.INSTANCE;  
  8.     }  
  9. }  

 

这种方式同样利用了classloder的机制来保证初始化instance时只有一个线程,它跟第三种和第四种方式不同的是(很细微的差别):第三种和第四种方式是只要Singleton类被装载了,那么instance就会被实例化(没有达到lazy loading效果),而这种方式是Singleton类被装载了,instance不一定被初始化。因为SingletonHolder类没有被主动使用,只有显示通过调用getInstance方法时,才会显示装载SingletonHolder类,从而实例化instance。想象一下,如果实例化instance很消耗资源,我想让他延迟加载,另外一方面,我不希望在Singleton类加载时就实例化,因为我不能确保Singleton类还可能在其他的地方被主动使用从而被加载,那么这个时候实例化instance显然是不合适的。这个时候,这种方式相比第三和第四种方式就显得很合理。

第六种(枚举):

 

Java代码  \"收藏代码\"/

  1. public enum Singleton {  
  2.     INSTANCE;  
  3.     public void whateverMethod() {  
  4.     }  
  5. }  

 

 这种方式是Effective Java作者Josh Bloch 提倡的方式,它不仅能避免多线程同步问题,而且还能防止反序列化重新创建新的对象,可谓是很坚强的壁垒啊,不过,个人认为由于1.5中才加入enum特性,用这种方式写不免让人感觉生疏,在实际工作中,我也很少看见有人这么写过。

第七种(双重校验锁):

Java代码  \"收藏代码\"/

  1. public class Singleton {  
  2.     private volatile static Singleton singleton;  
  3.     private Singleton (){}  
  4.     public static Singleton getSingleton() {  
  5.     if (singleton == null) {  
  6.         synchronized (Singleton.class) {  
  7.         if (singleton == null) {  
  8.             singleton = new Singleton();  
  9.         }  
  10.         }  
  11.     }  
  12.     return singleton;  
  13.     }  
  14. }  

 

 这个是第二种方式的升级版,俗称双重检查锁定,详细介绍请查看:http://www.ibm.com/developerworks/cn/java/j-dcl.html

在JDK1.5之后,双重检查锁定才能够正常达到单例效果。

 

总结

有两个问题需要注意:

1.如果单例由不同的类装载器装入,那便有可能存在多个单例类的实例。假定不是远端存取,例如一些servlet容器对每个servlet使用完全不同的类装载器,这样的话如果有两个servlet访问一个单例类,它们就都会有各自的实例。

2.如果Singleton实现了java.io.Serializable接口,那么这个类的实例就可能被序列化和复原。不管怎样,如果你序列化一个单例类的对象,接下来复原多个那个对象,那你就会有多个单例类的实例。

对第一个问题修复的办法是:

 

Java代码  \"收藏代码\"/

  1. private static Class getClass(String classname)      
  2.                                          throws ClassNotFoundException {     
  3.       ClassLoader classLoader = Thread.currentThread().getContextClassLoader();     
  4.       
  5.       if(classLoader == null)     
  6.          classLoader = Singleton.class.getClassLoader();     
  7.       
  8.       return (classLoader.loadClass(classname));     
  9.    }     
  10. }  

 对第二个问题修复的办法是:

 

Java代码  \"收藏代码\"/

  1. public class Singleton implements java.io.Serializable {     
  2.    public static Singleton INSTANCE = new Singleton();     
  3.       
  4.    protected Singleton() {     
  5.         
  6.    }     
  7.    private Object readResolve() {     
  8.             return INSTANCE;     
  9.       }    
  10. }   

 

对我来说,我比较喜欢第三种和第五种方式,简单易懂,而且在JVM层实现了线程安全(如果不是多个类加载器环境),一般的情况下,我会使用第三种方式,只有在要明确实现lazy loading效果时才会使用第五种方式,另外,如果涉及到反序列化创建对象时我会试着使用枚举的方式来实现单例,不过,我一直会保证我的程序是线程安全的,而且我永远不会使用第一种和第二种方式,如果有其他特殊的需求,我可能会使用第七种方式,毕竟,JDK1.5已经没有双重检查锁定的问题了。

========================================================================

 superheizai同学总结的很到位:

 

不过一般来说,第一种不算单例,第四种和第三种就是一种,如果算的话,第五种也可以分开写了。所以说,一般单例都是五种写法。懒汉,恶汉,双重校验锁,枚举和静态内部类。

我很高兴有这样的读者,一起共勉。


', '221', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-03-25', '系统管理员', null, null, '2015-03-25 16:35:22', '2015-03-25 16:35:22', '1'); +INSERT INTO `tb_article` VALUES ('3224', '249', 'java反射详解', '

请参考:http://www.cnblogs.com/rollenholt/archive/2011/09/02/2163758.html

文章写的不错~!~

', '177', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-03-25', '系统管理员', null, null, '2015-03-25 16:36:35', '2015-03-25 16:36:35', '1'); +INSERT INTO `tb_article` VALUES ('3226', '249', '位操作也疯狂', '

参考地址:http://my.oschina.net/game007/blog/104123

', '225', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-03-25', '系统管理员', null, null, '2015-03-25 16:41:39', '2015-03-25 16:41:39', '1'); +INSERT INTO `tb_article` VALUES ('3227', '249', 'Java 中正确使用 hashCode 和 equals 方法', '

参考文章:http://www.oschina.net/question/82993_75533

', '210', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-03-25', '系统管理员', null, null, '2015-03-25 16:49:16', '2015-03-25 16:49:16', '1'); +INSERT INTO `tb_article` VALUES ('3228', '242', '英语学习网站', '

美国之音VOA:http://www.51voa.com/

BBC:http://www.bbc.com/

android 百词斩:http://www.baicizhan.com/login

android 流利英语说

', '238', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-03-25', '系统管理员', null, null, '2015-03-25 16:53:03', '2015-03-25 16:53:03', '1'); +INSERT INTO `tb_article` VALUES ('3229', '247', '装修查询网站', '

装修资料汇总贴,这个资料比较全:http://bbs.wzcbd.com/showtopic-1799176.aspx

这个帖子也很不错:http://bbs.glz8.com/read.php?tid-75.html

各种板材有什么用:http://bjc19870301.blog.sohu.com/146429673.html


', '166', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-03-25', '系统管理员', null, null, '2015-03-25 16:58:25', '2015-03-25 16:58:25', '1'); +INSERT INTO `tb_article` VALUES ('3230', '247', '悬疑电影汇总', '

先发两个汇总帖子:

http://tieba.baidu.com/p/2687960106

http://tieba.baidu.com/p/2779381230

这个帖子是一些不错的电影:

http://tieba.baidu.com/p/2250729136?pn=4


一些比较经典的:

《13骇人游戏》泰国游戏杀人

《天衣无缝/完美无瑕》 偷钻石

《惊险游戏》韩国换身体

《王牌对王牌》

《心理游戏》《玩命记忆》《逍遥法外》《狙击电话亭》

《罪与罚/杀人犯》《万能钥匙》

《一级恐惧》(爱德华·诺顿Edward Norton Jack Teller/Brian)

《大买卖》(罗伯特·德尼罗Robert De Niro Nick Wells、爱德华·诺顿Edward Norton Jack Teller/Brian)

《七宗罪》(凯文·史派西/Kevin Spacey、摩根·弗里曼 Morgan Freeman)

《1408_幻影凶间》(约翰·库萨克/John Cusack)

《哭泣杀狼》《搏击俱乐部》《十二宫》

《人骨拼图》《八面埋伏》《九人禁闭室》《寂静岭》

《第九道门》《蝴蝶效应》《记忆碎片》《小岛惊魂》

《异次元杀阵》《幽灵船》《睁开你的双眼》

《撞车》

《形影不离》港台(凯文·史派西/Kevin Spacey、吴彦祖)

《致命玩笑》

极限空间,肖申克的救赎,达芬奇密码,神秘代码,黑暗乡村,罗生门,妖野荒踪,内陆帝国,宿醉

异度空间

《破绽》

100部:

《控方证人》年份:1957

《电锯惊魂1》年份:2004

《记忆碎片》年份:2000

《禁闭岛》年份:2010

《第六感》年份:1999

《恐怖游轮》年份:2009

《蝴蝶效应》年份:2004

《非常嫌疑犯》年份:1995  审问犯罪嫌疑人,结果逆袭(凯文·史派西/Kevin Spacey)

《穆赫兰道》年份:2001

《小岛惊魂》年份:2001

《致命ID》年份:2003 (约翰·库萨克/John Cusack)旅店一群人被杀悬疑

《神探》年份:2007

《老男孩》年份:2003

《大卫戈尔的一生》年份:2003 主演:凯文史派西

《电锯惊魂2》年份:2005

《黑暗面》年份:2011

《惊魂记》年份:1960

《致命魔术》年份:2006 两个魔术大师

《一级恐惧》年份:1996

《心理游戏》年份:2005

《万能钥匙》年份:2005  宗教,逆袭

《捉迷藏》年份:2005

《天使与魔鬼》年份:2009

《最佳出价》年份:2013

《七宗罪》年份:1995

《告白》年份:2010

《异次元骇客》年份:1999

《全民目击》年份:2013 孙红雷父爱

《盗梦空间》年份:2010

《死神来了》年份:2000  经典血腥1-5

《生死停留》年份:2005

《恐怖直播》年份:2013

《杀人回忆》年份:2003

《十二只猴子》年份:1995

《机械师》年份:2004

《1408幻影凶间》年份:2007

《抓住那个家伙》年份:2013

《杀生》年份:2012

《死寂》年份:2007

《十二宫》年份:2007

《死亡幻觉》年份:2001

《搏击俱乐部》年份:1999

《K星异客》年份:2001

《换子疑云》年份:2008

《母亲》年份:2009

《源代码》年份:2011

《风声》年份:2009  国产电影

《11:14》年份:2003

《八面埋伏》年份:2004

《嫌疑人X的献身》年份:2012

《孤儿\\孤儿怨》年份:2009 小孩杀人

《狙击电话亭》年份:2002

《鬼影》年份:2004

《影子写手》年份:2010 政治片

《大侦探福尔摩斯》年份:2009

《豺狼计划》年份:2005

《谍影重重》年份:2002

《龙纹身的女孩》年份:2011

《东方快车谋杀案》年份:2010

《本能》年份:1992

《香草的天空》年份:2001

《死路》年份:2003

《洛城机密》年份:1997

《足迹 侦察 非常冲突》年份:2007 (迈克尔·凯恩 Michael Caine、爱德华·诺顿Edward Norton Jack Teller/Brian)

《斯托克》年份:2013

《玩命记忆》年份:2006

《香水》年份:2006

《锅匠裁缝士兵间谍》年份:2011

《魔术师》年份:2006

《寒战》年份:2012

《猜火车》年份:1996

《后窗》年份:1954

《闪灵》年份:1980

《移魂都市》年份:1998

《惊天魔盗团》年份:2013

《林中小屋》年份:2011

《金蝉脱壳》年份:2013

《不可饶恕》年份:2010

《红字》年份:2004

《恶魔的艺术2邪降》年份:2005

《低俗小说》年份:1994

《沉默的羔羊》年份:1991

《本杰明巴顿奇事》年份:2008

《天才瑞普利》年份:1999

《迷雾》年份:2007

《永无止境》年份:2011

《房客》年份:2009

《猫鼠游戏/逍遥法外》年份:2002

《活埋》年份:2010

《神秘拼图》年份:1999

《12怒汉:大审判12》年份:2007

《黄海》年份:2010

《心慌方》年份:1997

《黑洞频率》年份:2000

《水果硬糖》年份:2005

《伊甸湖》年份:2008

《逃离德黑兰》年份:2012

《火柴人》年份:2003

《王牌对王牌》年份:1998

《夺命手术》年份:2007

《云图》年份:2012

《假面》年份:2007

《吾栖之肤》年份:2011

《潜伏2》年份:2013

《惊险游戏》年份:2008

《无懈可击》年份:1999

《七天》年份:2007

《后备箱》年份:2004

《时空罪恶》年份:2007

《记忆裂痕》年份:2003

《捕蝇纸》年份:2011

《罗生门》年份:1950

《破绽》年份:2007

《狩猎》年份:2012

《少数派报告》年份:2002

《宿醉》年份:2009

《蔷花红莲》年份:2003

《囚徒》年份:2013

《未麻的部屋》年份:1998

《无声言证》年份:1994

《美国骗局》年份:2013

《冒充者》年份:2012

《副作用》年份:2013

《千钧一发》年份:1997

《这个男人来自地球》年份:2007

《高度怀疑》年份:2009

《有关时间旅行的热门问题》年份:2009

《八美图》年份:2002

《不道德的审判》年份:1994

《战栗空间》年份:2002

《旧日噩梦》年份:2007

《虐童疑云》年份:2008

《追随》年份:1998

《登堂入室》年份:2012

《焦土之城》年份:2010

《野东西》(玩尽杀绝)年份:1998

《惊声尖叫》(夺命狂呼)年份:1996

《催眠大师》(催眠档案之彻夜未眠)年份:2014

《诈欺游戏 电影版》(诈欺游戏:最后的舞台)年份:2010

《嫌疑人X的献身》(容疑者X的献身)年份:2008

《骗中骗》(老千计状元才)年份:1973

《孩子们》(青蛙少年失踪事件)年份:2011

《无间道》(Infernal Affairs)年份:2002

《枪火》(The Mission)年份:1999

《迷幻》(恍惚)年份:2013

《失眠症》(白夜追凶)年份:2002


教育类:这些电影也真心不错

《贫民窟的百万富翁》

《美丽心灵》

《肖申克的救赎》(摩根·弗里曼 Morgan Freeman)

《当幸福来敲门》 

《这个杀手不太冷》

《阿甘正传》

《墨斗先生》

动作:

《暗花》《锦衣卫》《死囚大逃杀》

《教父2》(罗伯特·德尼罗Robert De Niro Nick Wells)

NICE:十一、十二、十三罗汉

--------------------------------------------------------------------------------------------------------------

《达芬奇密码》,《刺杀肯尼迪》,《沉默的羔羊》

《阳光下的罪恶》,《东方快车杀人案》,《尼罗河惨案》

《无人生还》,

魔术师  《通缉犯》,《死亡笔记》(前篇、后篇)

《切肤之爱》,

《鬼肢解》,《灵异第六感》,《穆荷兰大道》,

《亡命天涯》《灵异23》《返老还童》

书《欺骗的艺术》

异教徒

灵异拼图,是讲一个阴谋,中间过程还比较精彩。 

捉迷藏,是讲人格分裂的,结局意外。

死亡幻觉

血色月亮

鬼肢解 

小岛惊魂 

机械师 

迷雾 


夺命追击 动作  (迈克尔·凯恩 Michael Caine)

《偷天换日》(爱德华·诺顿Edward Norton Jack Teller/Brian)

《愤怒的公牛》(罗伯特·德尼罗Robert De Niro Nick Wells)

《出租车司机》(罗伯特·德尼罗Robert De Niro Nick Wells)

《美国往事》(罗伯特·德尼罗Robert De Niro Nick Wells)

《死亡直播》(罗伯特·德尼罗Robert De Niro Nick Wells)

《绝密圈套》(罗伯特·德尼罗Robert De Niro Nick Wells)

《即时发生》(罗伯特·德尼罗Robert De Niro Nick Wells)

电视剧《纸牌屋》(凯文·史派西/Kevin Spacey)

《王牌罪犯》(凯文·史派西/Kevin 

《失控的陪审团》(约翰·库萨克/John Cusack)

《绑架悬案》(约翰·库萨克/John Cusack)

《影与雾》(约翰·库萨克/John Cusack)



演员:凯文·史派西/Kevin Spacey

--------------------------------------------------------------------------------------------------------------

#恐怖

《人皮客栈1》,《人皮客栈2》,《人皮客栈3》

《狼溪》

《尸骨无存》

《吸血莱恩》

《黑夜传说2:进化》

《变异》

《夜魔(09版)》

《断头气》

《短柄斧》

《地心骇客》

《饥饿难耐》

《劫梦惊魂(埋得最深的)》

《时空罪恶(埋得最深的)》

《黑暗乡村》

《暗夜列车》

《记忆的倒影》

《地下九英里》

《隔山有眼》系列

《失真的画》



', '264', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-03-25', '系统管理员', null, null, '2015-03-25 17:01:16', '2015-03-25 17:01:16', '1'); +INSERT INTO `tb_article` VALUES ('3231', '249', 'Java常用命令', '

生成Javadoc:javadoc -d . -sourcepath . -encoding UTF-8 -subpackages com.test

', '197', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-03-26', '系统管理员', null, null, '2015-03-26 11:28:48', '2015-03-26 11:28:48', '1'); +INSERT INTO `tb_article` VALUES ('3234', '249', 'Maven命令使用', '

maven中央库注册地址:https://issues.sonatype.org/secure/Signup!default.jspa

maven创建Issue地址:https://issues.sonatype.org/secure/CreateIssue.jspa?issuetype=21&pid=10134

maven中央库发布,查询地址:https://oss.sonatype.org/


tomcat插件运行:tomcat:run

创建引用依赖包:dependency:copy-dependencies

清空maven构建:maven clean

构建maven项目:maven install

生成源码包:maven source:jar

查看maven依赖结构:dependency:tree

', '207', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2015-04-02', '系统管理员', null, null, '2015-04-02 09:51:49', '2015-04-02 09:51:49', '1'); +INSERT INTO `tb_article` VALUES ('3235', '249', 'SpringMVC+Spring4.0+Hibernate 简单的整合', '

学习的初始 一个 Hello World。

1、搭建好环境

工欲善其事,必先利其

这是需要的jar

简单的说下 :

  standard.jar  这个jar包是我们在jsp中使用JSTL标签的时候用到的。你也可以使用SpringEL 。

   servlet-api.jar  这是你在SpringMvc中 用到HttpServletRequest 等这些类。


导入的包都OK了,上传下载的包我没有导。现在就应该到配置文件了。  

2、配置文件

 2.1web.xml  

   项目使用了什么框架。看这个配置就知道了。

 <listener>

        <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>

    </listener>

    <!-- 配置Spring的用于初始化容器对象的监听器 -->

    <listener>

        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

    </listener>

    <context-param>

        <param-name>contextConfigLocation</param-name>

          <!--  注意我的applicationContext.xml  和下面的springmvc的配置文件都是放在src下的-->

        <param-value>classpath:applicationContext*.xml</param-value>

    </context-param>

    <!-- 中央控制器  -->

    <servlet>

        <servlet-name>springmvc</servlet-name>

        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>

        <init-param>

            <param-name>contextConfigLocation</param-name>

            <param-value>classpath*:springmvc-servlet.xml</param-value>

        </init-param>


        <load-on-startup>1</load-on-startup>

    </servlet>

    <servlet-mapping>

        <servlet-name>springmvc</servlet-name>

        <!-- struts习惯使用/*,在springmvc不管用 -->

  <url-pattern>*.do</url-pattern>

        </servlet-mapping>


2.2 applicationContext.xml 的配置

 我的数据库连接使用的是spirng进行连接。然后使用了 mysql.properties 配置的文件解耦。

注意如果你的spring、hibernate 的版本和我的不一样。你修改下面绿色字体版本号。

<!-- 自动扫描与装配bean -->

<context:component-scan base-package="org.pk.ssh"></context:component-scan>

<!-- 导入外部的properties文件 -->

<context:property-placeholder location="classpath:mysql.properties"/>

<!-- 配置SessionFactory -->

<bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">

<!-- 指定hibernate的配置文件位置 -->

<property name="configLocation" value="classpath:hibernate.cfg.xml"></property>

<!-- 配置c3p0数据库连接池 -->

<property name="dataSource">

<bean class="com.mchange.v2.c3p0.ComboPooledDataSource">

<!-- 数据连接信息 -->

<property name="jdbcUrl" value="${jdbcUrl}"></property>

<property name="driverClass" value="${driverClass}"></property>

<property name="user" value="${user}"></property>

<property name="password" value="${password}"></property>

<!-- 其他配置 -->

<!--初始化时获取三个连接,取值应在minPoolSize与maxPoolSize之间。Default: 3 -->

<property name="initialPoolSize" value="3"></property>

<!--连接池中保留的最小连接数。Default: 3 -->

<property name="minPoolSize" value="3"></property>

<!--连接池中保留的最大连接数。Default: 15 -->

<property name="maxPoolSize" value="5"></property>

<!--当连接池中的连接耗尽的时候c3p0一次同时获取的连接数。Default: 3 -->

<property name="acquireIncrement" value="3"></property>

<!-- 控制数据源内加载的PreparedStatements数量。如果maxStatements与maxStatementsPerConnection均为0,则缓存被关闭。Default: 0 -->

<property name="maxStatements" value="8"></property>

<!--maxStatementsPerConnection定义了连接池内单个连接所拥有的最大缓存statements数。Default: 0 -->

<property name="maxStatementsPerConnection" value="5"></property>

<!--最大空闲时间,1800秒内未使用则连接被丢弃。若为0则永不丢弃。Default: 0 -->

<property name="maxIdleTime" value="1800"></property>

</bean>

</property>

</bean>

<!-- 配置声明式事务管理(采用注解的方式) -->

<bean id="txManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager">

<property name="sessionFactory" ref="sessionFactory"></property>

</bean>

<tx:annotation-driven transaction-manager="txManager"/>


2.3 mysql.propertiese

#注意格式

jdbcUrl = jdbc:mysql:///spring

driverClass = com.mysql.jdbc.Driver

user = root

password = root


2.4 hibernate的配置

<!-- 1,数据库连接信息 -->

<property name="dialect">

org.hibernate.dialect.MySQL5InnoDBDialect

</property>

<!-- 2,其他配置 -->

<property name="show_sql">true</property>

<property name="hbm2ddl.auto">update</property>

<!-- 3,导入映射文件,我使用的的是hibernate的注解,如果你用到是配置文件 -->

                <!--   <mapping resource="org/pk/ssh/model/User" />  配置文件-->

<mapping class="org.pk.ssh.model.User" />

</session-factory>


2.5 SpringMvc的配置  springmvc-servlet.xm

<!-- mvc注解驱动 -->

<mvc:annotation-driven/> 

 <!-- 扫描器已经有了上面这个mvc注解驱动的功能了,所有不需要了 -->

 <context:component-scan base-package="org.pk.ssh.controller" />

 <!-- 前缀+ viewName +后缀 -->

<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">

<!-- webroot到某一指定的文件夹的路径 -->

<property name="prefix" value="/WEB-INF/jsp/"></property>

<!-- 视图名称的后缀 -->

<property name="suffix" value=".jsp"></property>

</bean> 


3、配置文件已经OK了,我主要是写个登录的HelloWorld

我都是居于注解的方式来实现的。

model :HelloWorld 类


dao和它的实现类,登录我就直接把用户名和密码存入到我的数据库中了。其实应该是注册。但是是个新手嘛。我就这样写了。嘿嘿。之后在慢慢的去改进它。

现在轮到controller 类隆重登场了。大家欢迎它

jsp界面的请求

在WEB-IN下建立jsp目录。 jsp界面都放这里。为什么要放在这里而不放在webroot呢?以下是网上的一些说法

http://blog.csdn.net/saygoodbyetoyou/article/details/9944773

http://uule.iteye.com/blog/1853531

上面这个就是我的登录的界面了。请求注意加    *.do  因为我的配置拦截就是这样的。

然后这个是在另外一个jsp界面中的输出,我使用的是JSTL进行输出的。

 <c:out value="${user.name}"/>



', '1098', '2', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-04-02', '系统管理员', null, null, '2015-04-02 11:36:24', '2015-04-02 11:36:24', '1'); +INSERT INTO `tb_article` VALUES ('3236', '249', 'Spring MVC数据绑定大全', '

转自:http://blog.csdn.net/lxf9601/article/details/5925810

刚开始用spring mvc 做web开发时,经常会不知道如何合适绑定页面数据.用惯struts2的朋友更认为spring mvc 绑定数据不如struts2方便(本人最开始也是这么认为),经过一段时间的应用和测试,总结出以下几种情况,希望对刚接触spring mvc 的朋友有所帮助.


示例程序下载


查看spring源码可以看出spring支持转换的数据类型已经很多了.


 


org.springframework.beans.PropertyEditorRegistrySupport.java


    /** 

     * Actually register the default editors for this registry instance. 

     */  

    private void doRegisterDefaultEditors() {  

        this.defaultEditors = new HashMap<Class, PropertyEditor>(64);  

        // Simple editors, without parameterization capabilities.  

        // The JDK does not contain a default editor for any of these target types.  

        this.defaultEditors.put(Charset.class, new CharsetEditor());  

        this.defaultEditors.put(Class.class, new ClassEditor());  

        this.defaultEditors.put(Class[].class, new ClassArrayEditor());  

        this.defaultEditors.put(Currency.class, new CurrencyEditor());  

        this.defaultEditors.put(File.class, new FileEditor());  

        this.defaultEditors.put(InputStream.class, new InputStreamEditor());  

        this.defaultEditors.put(Locale.class, new LocaleEditor());  

        this.defaultEditors.put(Pattern.class, new PatternEditor());  

        this.defaultEditors.put(Properties.class, new PropertiesEditor());  

        this.defaultEditors.put(Resource[].class, new ResourceArrayPropertyEditor());  

        this.defaultEditors.put(TimeZone.class, new TimeZoneEditor());  

        this.defaultEditors.put(URI.class, new URIEditor());  

        this.defaultEditors.put(URL.class, new URLEditor());  

        // Default instances of collection editors.  

        // Can be overridden by registering custom instances of those as custom editors.  

        this.defaultEditors.put(Collection.class, new CustomCollectionEditor(Collection.class));  

        this.defaultEditors.put(Set.class, new CustomCollectionEditor(Set.class));  

        this.defaultEditors.put(SortedSet.class, new CustomCollectionEditor(SortedSet.class));  

        this.defaultEditors.put(List.class, new CustomCollectionEditor(List.class));  

        this.defaultEditors.put(SortedMap.class, new CustomMapEditor(SortedMap.class));  

        // Default editors for primitive arrays.  

        this.defaultEditors.put(byte[].class, new ByteArrayPropertyEditor());  

        this.defaultEditors.put(char[].class, new CharArrayPropertyEditor());  

        // The JDK does not contain a default editor for char!  

        this.defaultEditors.put(char.class, new CharacterEditor(false));  

        this.defaultEditors.put(Character.class, new CharacterEditor(true));  

        // Spring's CustomBooleanEditor accepts more flag values than the JDK's default editor.  

        this.defaultEditors.put(boolean.class, new CustomBooleanEditor(false));  

        this.defaultEditors.put(Boolean.class, new CustomBooleanEditor(true));  

        // The JDK does not contain default editors for number wrapper types!  

        // Override JDK primitive number editors with our own CustomNumberEditor.  

        this.defaultEditors.put(byte.class, new CustomNumberEditor(Byte.class, false));  

        this.defaultEditors.put(Byte.class, new CustomNumberEditor(Byte.class, true));  

        this.defaultEditors.put(short.class, new CustomNumberEditor(Short.class, false));  

        this.defaultEditors.put(Short.class, new CustomNumberEditor(Short.class, true));  

        this.defaultEditors.put(int.class, new CustomNumberEditor(Integer.class, false));  

        this.defaultEditors.put(Integer.class, new CustomNumberEditor(Integer.class, true));  

        this.defaultEditors.put(long.class, new CustomNumberEditor(Long.class, false));  

        this.defaultEditors.put(Long.class, new CustomNumberEditor(Long.class, true));  

        this.defaultEditors.put(float.class, new CustomNumberEditor(Float.class, false));  

        this.defaultEditors.put(Float.class, new CustomNumberEditor(Float.class, true));  

        this.defaultEditors.put(double.class, new CustomNumberEditor(Double.class, false));  

        this.defaultEditors.put(Double.class, new CustomNumberEditor(Double.class, true));  

        this.defaultEditors.put(BigDecimal.class, new CustomNumberEditor(BigDecimal.class, true));  

        this.defaultEditors.put(BigInteger.class, new CustomNumberEditor(BigInteger.class, true));  

        // Only register config value editors if explicitly requested.  

        if (this.configValueEditorsActive) {  

            StringArrayPropertyEditor sae = new StringArrayPropertyEditor();  

            this.defaultEditors.put(String[].class, sae);  

            this.defaultEditors.put(short[].class, sae);  

            this.defaultEditors.put(int[].class, sae);  

            this.defaultEditors.put(long[].class, sae);  

        }  

    }  

 


 


1.基本数据类型


很简单,该怎么写就怎么写.


controller代码


@RequestMapping  

    public void test1(String name, Integer age, Double income, Boolean isMarried, String[] interests)  

    {  

        System.out.println("简单数据类型绑定=========");  

        System.out.println("名字:" + name);  

        System.out.println("年龄:" + age);  

        System.out.println("收入:" + income);  

        System.out.println("已结婚:" + isMarried);  

        System.out.println("兴趣:");  

        for (String interest : interests)  

        {  

            System.out.println(interest);  

        }  

        System.out.println("====================");  

    }  

 


jsp代码


<form action="test1.do" method="post">  

    <div class="f_left">姓名:</div>  

    <div class="f_left"><input name="name" value="张三"/></div>  

    <div class="clear"></div>  

    <div class="f_left">年龄:</div>  

    <div class="f_left"><input name="age" value="20"/></div>  

    <div class="clear"></div>  

    <div class="f_left">收入:</div>  

    <div class="f_left"><input name="income" value="100000"/></div>  

    <div class="clear"></div>  

    <div class="f_left">结婚:</div>  

    <div class="f_left">  

    <input type="radio" name="isMarried" value="true" checked="checked"/>是  

    <input type="radio" name="isMarried" value="false"/>否</div>  

    <div class="clear"></div>  

    <div class="f_left">兴趣:</div>  

    <div class="f_left">  

    <input type="checkbox" name="interests" value="听歌" checked="checked"/>听歌  

    <input type="checkbox" name="interests" value="书法" checked="checked"/>书法  

    <input type="checkbox" name="interests" value="看电影" checked="checked"/>看电影  

    </div>  

    <div class="clear"></div>  

    <div><input type="submit" value="提交表单"/></div>  

</form>  

 


 


2.简单对象类型


与基本类型相拟,只不过绑定到对象上更加简洁.(类拟struts的ActionForm)


controller代码


@RequestMapping  

    public void test2(User user)  

    {  

        System.out.println("简单对象类型绑定=========");  

        System.out.println("名字:" + user.getName());  

        System.out.println("年龄:" + user.getAge());  

        System.out.println("收入:" + user.getIncome());  

        System.out.println("已结婚:" + user.getIsMarried());  

        System.out.println("========================");  

    }  

 


user代码


public class User {  

    private String name;  

    private Integer age;  

    private Boolean isMarried;  

    private Double income;  

    private String[] interests;  

      

    public String getName() {  

        return name;  

    }  

    public void setName(String name) {  

        this.name = name;  

    }  

    public Integer getAge() {  

        return age;  

    }  

    public void setAge(Integer age) {  

        this.age = age;  

    }  

    public Boolean getIsMarried() {  

        return isMarried;  

    }  

    public void setIsMarried(Boolean isMarried) {  

        this.isMarried = isMarried;  

    }  

    public Double getIncome() {  

        return income;  

    }  

    public void setIncome(Double income) {  

        this.income = income;  

    }  

    public String[] getInterests() {  

        return interests;  

    }  

    public void setInterests(String[] interests) {  

        this.interests = interests;  

    }  

}  

 


jsp代码


<form action="test2.do" method="post">  

        <div class="f_left">姓名:</div>  

        <div class="f_left"><input name="name" value="lxf"/></div>  

        <div class="clear"></div>  

        <div class="f_left">年龄:</div>  

        <div class="f_left"><input name="age" value="20"/></div>  

        <div class="clear"></div>  

        <div class="f_left">收入:</div>  

        <div class="f_left"><input name="income" value="100000"/></div>  

        <div class="clear"></div>  

        <div class="f_left">结婚:</div>  

        <div class="f_left">  

        <input type="radio" name="isMarried" value="true" checked="checked"/>是  

        <input type="radio" name="isMarried" value="false"/>否</div>  

        <div class="clear"></div>  

        <div class="f_left">兴趣:</div>  

        <div class="f_left">  

        <input type="checkbox" name="interests" value="听歌" checked="checked"/>听歌  

        <input type="checkbox" name="interests" value="书法" checked="checked"/>书法  

        <input type="checkbox" name="interests" value="看电影" checked="checked"/>看电影  

        </div>  

        <div class="clear"></div>  

        <div><input type="submit" value="提交表单"/></div>  

    </form>  

 


 


3.List类型绑定


网上很多人都给不出答案,关键在于,List需要绑定在对象(ActionForm),直接写在request-mapping函数的参数是不行的,更重要的一点是要创建对象(ArrayList).


controller代码


@RequestMapping  

    public void test3(Club club)  

    {  

        System.out.println("list类型绑定=========");  

        System.out.println("会员:");  

        for (User user : club.getUsers())  

        {  

            System.out.println(user.getName());  

        }  

        System.out.println("========================");  

    }  

 


Club代码


public class Club {  

    private List<User> users = new ArrayList<User>();  

      

    public List<User> getUsers() {  

        return users;  

    }  

      

    public void setUsers(List<User> users) {  

        this.users = users;  

    }  

}  

 


jsp代码


<form action="test3.do" method="post">  

        <div class="f_left">会员1号:</div>  

        <div class="f_left">  

        <input name="users[0].name" value="张三"/>  

        </div>  

        <div class="clear"></div>  

        <div class="f_left">会员2号:</div>  

        <div class="f_left">  

        <input name="users[1].name" value="李四"/>  

        </div>  

        <div class="clear"></div>  

        <div class="f_left">会员3号:</div>  

        <div class="f_left">  

        <input name="users[2].name" value="王五"/>  

        </div>  

        <div class="clear"></div>  

        <div><input type="submit" value="提交表单"/></div>  

    </form>  

 


 


4.Set类型绑定


与List类型相似,经测试表明,绑定Set数据时,必须先在Set对象中Add相应的数量的模型对象.


controller代码


@RequestMapping  

    public void test4(Club2 club)  

    {  

        System.out.println("set类型绑定=========");  

        System.out.println("会员:");  

        for (User user : club.getUsers())  

        {  

            System.out.println(user.getName());  

        }  

        System.out.println("========================");  

    }  


Club2代码


 

public class Club2 {  

    private Set<User> users = new LinkedHashSet<User>();  

      

    public Club2() {  

        users.add(new User());  

        users.add(new User());  

        users.add(new User());  

    }  

      

    public Set<User> getUsers() {  

        return users;  

    }  

    public void setUsers(Set<User> users) {  

        this.users = users;  

    }  

}  

 


 


jsp代码


<form action="test4.do" method="post">  

        <div class="f_left">会员1号:</div>  

        <div class="f_left">  

        <input name="users[0].name" value="张三"/>  

        </div>  

        <div class="clear"></div>  

        <div class="f_left">会员2号:</div>  

        <div class="f_left">  

        <input name="users[1].name" value="李四"/>  

        </div>  

        <div class="clear"></div>  

        <div class="f_left">会员3号:</div>  

        <div class="f_left">  

        <input name="users[2].name" value="王五"/>  

        </div>  

        <div class="clear"></div>  

        <div><input type="submit" value="提交表单"/></div>  

    </form>  

 


 


5.Map类型绑定


最灵活的一种方式,可无限绑定未定义的参数,注意必须绑定在对象下(ActionForm).


controller代码


@RequestMapping  

    public void test5(UserForm userForm)  

    {  

        System.out.println("Map类型绑定=========");  

        System.out.println("名字:" + userForm.getUser().get("name"));  

        System.out.println("年龄:" + userForm.getUser().get("age"));  

        System.out.println("收入:" + userForm.getUser().get("income"));  

        System.out.println("已结婚:" + userForm.getUser().get("isMarried"));  

        System.out.println("========================");  

    }  

 


UserForm.java代码


public class UserForm {  

    private Map<String, String> userMap = new LinkedHashMap<String, String>();  

    private User user = new User();  

      

    public Map<String, String> getUserMap() {  

        return userMap;  

    }  

    public void setUserMap(Map<String, String> userMap) {  

        this.userMap = userMap;  

    }  

    public User getUser() {  

        return user;  

    }  

    public void setUser(User user) {  

        this.user = user;  

    }  

      

}  

 


jsp代码


<form action="test5.do" method="post">  

        <div class="f_left">姓名:</div>  

        <div class="f_left"><input name="user['name']" value="张三"/></div>  

        <div class="clear"></div>  

        <div class="f_left">年龄:</div>  

        <div class="f_left"><input name="user['age']" value="20"/></div>  

        <div class="clear"></div>  

        <div class="f_left">收入:</div>  

        <div class="f_left"><input name="user['income']" value="100000"/></div>  

        <div class="clear"></div>  

        <div class="f_left">结婚:</div>  

        <div class="f_left">  

        <input type="radio" name="user['isMarried']" value="true" checked="checked"/>是  

        <input type="radio" name="user['isMarried']" value="false"/>否</div>  

        <div class="clear"></div>  

        <div><input type="submit" value="提交表单"/></div>  

    </form>  

 


 


6.复合类型绑定


controller代码


@RequestMapping  

    public void test6(UserForm userForm)  

    {  

        System.out.println("复合类型绑定=========");  

        System.out.println("名字:" + userForm.getUser().getName());  

        System.out.println("年龄:" + userForm.getUser().getAge());  

        System.out.println("收入:" + userForm.getUser().getIncome());  

        System.out.println("已结婚:" + userForm.getUser().getIsMarried());  

        System.out.println("========================");  

    }  

 


UserForm代码


public class UserForm {  

    private Map<String, String> userMap = new LinkedHashMap<String, String>();  

    private User user = new User();  

      

    public Map<String, String> getUserMap() {  

        return userMap;  

    }  

    public void setUserMap(Map<String, String> userMap) {  

        this.userMap = userMap;  

    }  

    public User getUser() {  

        return user;  

    }  

    public void setUser(User user) {  

        this.user = user;  

    }  

      

}  

 


jsp代码


<form action="test6.do" method="post">  

    <div class="f_left">姓名:</div>  

    <div class="f_left"><input name="user.name" value="张三"/></div>  

    <div class="clear"></div>  

    <div class="f_left">年龄:</div>  

    <div class="f_left"><input name="user.age" value="20"/></div>  

    <div class="clear"></div>  

    <div class="f_left">收入:</div>  

    <div class="f_left"><input name="user.income" value="100000"/></div>  

    <div class="clear"></div>  

    <div class="f_left">结婚:</div>  

    <div class="f_left">  

    <input type="radio" name="user.isMarried" value="true" checked="checked"/>是  

    <input type="radio" name="user.isMarried" value="false"/>否</div>  

    <div class="clear"></div>  

    <div><input type="submit" value="提交表单"/></div>  

</form>  


', '415', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-04-03', '系统管理员', null, null, '2015-04-03 10:17:58', '2015-04-03 10:17:58', '1'); +INSERT INTO `tb_article` VALUES ('3239', '247', '美剧推荐,值得一看', '

最新看一些美剧~

《迷失lost》 飞机失事后的奇遇~太奇遇了~~~~

《致命毒师breaking bad》 老人制毒的故事,人性的释放~

《黑色孤儿orphanblack》 克隆人clones的故事

《冰与火之歌》 号称神剧~!~

《黑镜black mirror》 这个剧特别推荐,每集都是独立的,但是意义深刻。

以上看过的我都认为是超级推荐


《灭世Revolution》  只看了一季

《越狱Prison Break》 只看了一季

《罪恶黑名单The Blacklist》  只看了一季


之后打算看

黑道家族和广告狂人


吸血鬼日记

行尸走肉

汉尼拔 


', '287', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2015-04-11', '系统管理员', null, null, '2015-04-11 21:49:36', '2015-04-11 21:49:36', '1'); +INSERT INTO `tb_article` VALUES ('3240', '247', '新闻有一个开发死了~!~', '

http://gd.qq.com/a/20150407/007438.htm?qqcom_pgv_from=tips

', '208', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-04-12', '系统管理员', null, null, '2015-04-12 21:49:26', '2015-04-12 21:49:26', '1'); +INSERT INTO `tb_article` VALUES ('3241', '247', '孕妇水果篇', '

孕妇适合与不适合吃的水果如下:

1、吃柑橘猕猴桃等,这类水果富含维生素C,有利于铁的吸收。特别是猕猴桃,维生素含量又高又丰富。橘子孕妇不要多吃,否则易上火。

2、多吃黄色的水果,比如芒果桃子等,它们都含有大量的胡萝卜素,能补充孕妇每天的需要。

多吃橙子、香蕉等富含叶酸的水果,孕妇经常补充叶酸,可防止新生儿体重过轻、早产以及婴儿腭裂(兔唇)等先天性畸形。

3、每天坚持吃一个苹果。苹果含有微量元素锌、铁及维生素B1、维生素B2、维生素C和胡萝卜素果胶及纤维素等。既能补充孕妇每天的营养需要,还能治疗孕妇便秘。

4、梨:适当吃梨,可以熬成梨水喝,帮助孕妇润肺止咳。

5、荔枝、桂圆:从中医角度来说,妇女怀孕之后,体质一般偏热,阴血往往不足。此时,一些热性的水果如荔枝、桂圆等应适量食用,否则容易产生便秘、口舌生疮等上火症状,尤其是有先兆流产的孕妇更应谨慎,因为热性水果更易引起胎动不安。

6、山楂:活血化淤通经,对子宫有一定的收缩作用,在怀孕早期应注意要少量食用,有流产史、或有流产征兆的孕妇应忌吃,即使是山楂制品也不例外。

7、柑橘:柑橘品种繁多,有甜橙、南橘、无核蜜橘、柚子等。它们都具有营养丰富、通身是宝的共同优点。其汁富含柠檬酸、氨基酸、碳水化合物、脂肪、多种维生素、钙、磷、铁等营养成分,是孕妇喜欢吃的食品。但是,柑橘好吃,不可多食。因为柑橘性温味甘,补阳益气,过量反于身体无补,容易引起燥热而使人上火,发生口腔炎、牙周炎、咽喉炎等。孕妇每天吃柑橘不应该超过3只,总重量在250克以内。

8、猕猴桃:猕猴桃营养丰富,素有“果中之王”的美誉。爱美的孕妈咪们可多吃些猕猴桃,就不用担心怀孕后自己白皙的脸庞被黄褐斑“入侵”了。猕猴桃中含有丰富的维生素C使你的皮肤保持白皙。此外,猕猴桃虽好,但并非人人皆宜。由于猕猴桃性寒,故脾胃虚寒者应慎食,经常性腹泻和尿频者不宜食用。食用时间以饭后1-3个小时较为合适,不宜空腹吃。先兆性流产现象的孕妈咪千万别吃猕猴桃。

9、新鲜杨梅易引起胃酸过多,可以食用枣或梨缓减;

10、柿子易引起胃石,可以食用猕猴桃缓减;

11、木瓜瓜偏寒性,因此胃寒、体虚者不宜多吃,否则容易腹泻或胃寒。孕妇是不宜食用太过于寒性的食物的。

12、菠萝蜜、榴莲:易引起食欲不振,可以食用山楂片缓减;

13、西瓜、白兰瓜、哈密瓜、桃子:易引起腹泻,可以食用土豆、红薯缓减;

14、山楂山楂对子宫有—定的兴奋作用,可促使子宫收缩。如果孕妇大量食用山楂及其制品,容易导致流产。

15、橙子:可以适当吃,丰富的维C可以预防感冒并且宝宝更聪明,但吃太多,在怀孕初期对胃不好;

16、葡萄:要洗干净连皮和果核一起嚼烂吃下去,对宝宝和孕妇特好;

17、奇异果(弥猴桃):可以多吃,要连里面黑色的核一起吃,要细细的嚼烂,对宝宝和孕妇特好;

18、香蕉、西瓜:不能多吃,特别是怀孕初期,广东说法是太凉,吃多了会流产;

19、龙眼最好不要吃,太燥热,容易引起胎动。



此外孕妇每天水果食量不应超过5OO克,并且如香蕉、荔枝、葡萄等这些含糖量较高的水果尽量不要吃。如果孕妇贫血还应该少吃石榴和杏。

苹果可以适当吃,但吃太多会便秘;


注意事项:

l、忌吃水果不漱口:有些水果含有多种发酵糖类物质,对牙齿有较强的腐蚀性,食用后若不漱口,口腔中的水果残渣易造成龋齿。

2、忌食水果过多:把水果当饭吃,其实是不科学的。尽管水果营养丰富,但营养并不全面,尤其是蛋白质及脂肪相对较少,而这两种物质也是胎儿生长发育所不能缺少的。

3、忌饭后立即吃水果:饭后立即吃水果,会造成胀气和便秘。因此,吃水果宜在饭后2小时内或饭前1小时。

4、忌用菜刀削水果:因为菜刀常接触生肉、鱼、生蔬菜,会把寄生虫或寄生虫卵带到水果上。 


', '242', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-04-23', '系统管理员', null, null, '2015-04-23 09:10:56', '2015-04-23 09:10:56', '1'); +INSERT INTO `tb_article` VALUES ('3242', '247', '孕妇蔬菜篇', '

孕妇吃什么菜好

  韭菜:韭菜中含有对人体健康十分有益的植物性芳香挥发油、硫化物、纤维素等成分,具有促进食欲的作用,对老人、孩子、孕妇来说,多吃韭菜十分有益于健康。

  莴苣:又名莴笋,莴苣含叶酸丰富。孕妇怀孕早期常缺少叶酸,若不及时补充就会影响胎儿的大脑发育,严重者会造成胎儿无脑和因神经管不能闭合导致脊柱裂等先天性畸形。莴苣中的天然叶酸是最好的叶酸来源。

  马铃薯:马铃薯是一种营养非常全面且易消化的食物,有助于胎儿的发育,保护孕期健康。同时所含的粗纤维可促进胃肠蠕动和加速胆固醇在肠道内的代谢,具有降低胆固醇和通便的作用,对改善孕期便秘很有助益。

  玉米:玉米是粗粮中的保健佳品。其膳食纤维含量很高,能刺激胃肠蠕动,加速粪便排泄,对妊娠便秘大有好处。当然,其还具有利尿、降压、增强新陈代谢,细致皮肤等功效。

  生菜:生菜极富营养,含有多种维生素和丰富的矿物质。常食用,能改善胃肠血液循环,促进脂肪和蛋白质的消化和吸收,清除血液中的垃圾,排肠毒。


孕妇不能吃哪些蔬菜

  马齿苋:又称马齿菜。其性寒滑,故怀孕早期,尤其是有习惯性流产史者忌食之。马齿苋散血消肿,利肠滑胎。近代临床实践认为马齿苋能使子宫平滑肌收缩。所以,孕妇忌吃马齿苋。

  木耳菜:又称滑腹莱、落葵、西洋菜。性属寒滑,有滑利凉血之弊。如《南宁市药物志》中告诫:孕妇忌服。尤其是在怀孕早期以及有习惯性流产的孕妇,更应忌食之。

  慈姑:慈姑有活血作用。慈姑功专破血,通淋,滑胎,利窍。多食动血,孕妇尤忌之。尤其是在怀孕早期和有习惯性流产史者,更应忌食之。因为活血破血,滑胎利窍之品,均对妊娠不利。

  苋菜:怀孕妇女在临产期宜食之,因为苋菜性属滑利,能通窍滑胎。怀孕初期不吃为宜,尤其是有流产倾向或有习惯性流产史者更忌。

  海带:孕妇若过量地服食海带,过多的碘又可引起胎儿甲状腺发育障碍,这对胎儿会产生不良影响,婴儿出生后可能会引起甲状腺功能低下。



孕妇吃蔬菜注意事项

  1、久存蔬菜不宜吃

  新鲜的青菜,买来存放家里不吃,便会慢慢损失一些维生素。若要保存蔬菜,应在避光,通风,干燥的地方贮存。

  2、先切菜再冲洗

  在洗切青菜时,若将菜切了再冲洗,大量维生素就会流失到水中。

  3、喜欢生吃而不洗净

  蔬菜的污染多为农药或霉菌。蔬菜亦是霉菌的寄生体,霉菌大都不溶于水,甚至有的在沸水中安然无恙。因此食蔬菜必须用清水多洗多泡,去皮,多丢掉一些老黄腐叶。


', '220', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-04-23', '系统管理员', null, null, '2015-04-23 09:48:08', '2015-04-23 09:48:08', '1'); +INSERT INTO `tb_article` VALUES ('3243', '249', 'mysql部署,操作及异常处理', '

1、将mysql-5.1.50-linux-x86_64-glibc23.tar.gz移至/usr/local/目录下,并改名为mysql

增加mysql组

#groupadd mysql

建mysql用户,并加入到mysql组中

#useradd –g mysql mysql 

源码包解压

#tar mysql-5.1.50-linux-x86_64-glibc23.tar.gz 

将解压后的源码包放置/usr/local,并改名为mysql

#mv mysql-5.1.50-linux-x86_64-glibc23 /usr/local/mysql

进入目录

#cd /usr/local/mysql

设置目录的所属用户为mysql

#chown –R mysql /usr/local/mysql

目录的所属组为mysql

#chgrp –R mysql /usr/local/mysql 

初始化数据库,一定要在mysql根目录中执行mysql_install_db、默认在/user/local/mysql/data

#/usr/local/mysql/scripts/mysql_install_db –user=mysql

设置目录的所属用户为root

#chown –R root /usr/local/mysql  

设置目录的所属用户为mysql

#chown –R mysql /usr/local/mysql/data  

复制mysql的配置文件到/etc目录下,并改名为my.cnf;新版本不用复制,在mysql目录下

#cp /usr/local/mysql/support-files/my-huge.cnf /etc/my.cnf

配置文件的选择根据物理内存的大小,配置文件中都有相应的说明


复制启动脚本到/etc/rc.d/init.d目录下,并命名为mysqld

#cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld

立即启动mysql ,但重启后无效

#service mysqld start  

设置mysql的密码为123456(安装好mysql之后默认密码为空,mysql启动后才可以设置密码)

#/usr/local/mysql/bin/mysqladmin –u root password 123456

然后输入密码进入mysql ,退出mysql命令quit;(分号要有)

#/usr/local/mysql/bin/mysql –u root –p

将mysqld添加到开启自启动的序列中

#chkconfig –add mysqld 

设置mysql为重启自启动

#chkconfig mysqld on  

查看mysql的启动状态

#chkconfig –list mysqld 

如果2345为关闭就执行#chkconfig –level 2345 mysqld on


备注:

查找错误日志的目录/usr/local/data 这个目录中的***.err文件

如果执行下面的语句能启动mysql,一般都是目录的权限问题

# /usr/local/mysql/bin/mysqld_safe  –user=root  &

下面的方式也可以实现自启动,但是不推荐,相当于win32平台下的程序>启动

#echo “/usr/local/mysql/bin/mysqld_safe  –user=root  &” >> /etc/rc.local


异常:

 ERROR: InnoDB: Cannot allocate memory for the buffer pool

上面需要调整只要重新设置innodb_buffer_pool_size即可。官方文档默认值给出的是128M,如下图所示。


NameOld DefaultNew Default
innodb_additional_mem_pool_size1MB8MB
innodb_buffer_pool_size8MB128MB
innodb_change_bufferinginsertsall
innodb_file_format_checkON1
innodb_log_buffer_size1MB8MB
innodb_max_dirty_pages_pct9075
innodb_sync_spin_loops2030
innodb_thread_concurrency80


一.创建用户:

       命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password';

       说明:username - 你将创建的用户名, host - 指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost, 如果想让该用户可以从任意远程主机登陆,可以使用通配符%. password - 该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器.


      例子: CREATE USER 'dog'@'localhost' IDENTIFIED BY '123456';

               CREATE USER 'pig'@'192.168.1.101_' IDENDIFIED BY '123456';

               CREATE USER 'pig'@'%' IDENTIFIED BY '123456';

               CREATE USER 'pig'@'%' IDENTIFIED BY '';

               CREATE USER 'pig'@'%';


二.授权:

      命令:GRANT privileges ON databasename.tablename TO 'username'@'host'

     说明: privileges - 用户的操作权限,如SELECT , INSERT , UPDATE 等(详细列表见该文最后面).如果要授予所的权限则使用ALL.;databasename - 数据库名,tablename-表名,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示, 如*.*.

      例子: GRANT SELECT, INSERT ON test.user TO 'pig'@'%';

               GRANT ALL ON *.* TO 'pig'@'%';


      注意:用以上命令授权的用户不能给其它用户授权,如果想让该用户可以授权,用以下命令:

           GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;


开启远程权限:

mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root";
mysql> flush privileges;


对库设置权限:

mysql> GRANT ALL ON ${database}.* TO root@"%";
mysql> flush privileges;


撤销用户权限:

mysql> revoke all on ${database}.* from root@"%" ;


三.设置与更改用户密码:

     命令:SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');如果是当前登陆用户用SET PASSWORD = PASSWORD("newpassword");

      例子: SET PASSWORD FOR 'pig'@'%' = PASSWORD("123456");


四.撤销用户权限:

      命令: REVOKE privilege ON databasename.tablename FROM 'username'@'host';

      说明: privilege, databasename, tablename - 同授权部分.

      例子: REVOKE SELECT ON *.* FROM 'pig'@'%';

      注意: 假如你在给用户'pig'@'%'授权的时候是这样的(或类似的):GRANT SELECT ON test.user TO 'pig'@'%', 则在使用REVOKE SELECT ON *.* FROM 'pig'@'%';命令并不能撤销该用户对test数据库中user表的SELECT 操作.相反,如果授权使用的是GRANT SELECT ON *.* TO 'pig'@'%';则REVOKE SELECT ON test.user FROM 'pig'@'%';命令也不能撤销该用户对test数据库中user表的Select 权限.

      具体信息可以用命令SHOW GRANTS FOR 'pig'@'%'; 查看.


五.删除用户:

      命令: DROP USER 'username'@'host';


六.导入sql的命令行如下:

mysql> source "路径名"/filename.sql


七. 列出所有数据库

  mysql>show database;

 

八. 切换数据库

  mysql>use '数据库名';

 

九. 列出所有表

  mysql>show tables;

 

十. 显示数据表结构

  mysql>describe 表名;

 

十一. 创建数据库

  mysql>create database 数据库名;


十二. 删除数据库和数据表:

  mysql>drop database 数据库名;

  mysql>drop table 数据表名;


十三.数据导入导出

1、导出数据库为dbname的表结构(其中数据库为root,密码为dbpasswd,生成的脚本名為db.sql)

mysqldump -uroot -pdbpasswd -d dbname >db.sql;


2、导出数据库为dbname某张表(test)结构

mysqldump -uroot -pdbpasswd -d dbname test>db.sql;


3、导出数据库为dbname所有表结构及表数据(不加-d)

mysqldump -uroot -pdbpasswd  dbname >db.sql;


4、导出数据库为dbname某张表(test)结构及表数据(不加-d)

mysqldump -uroot -pdbpasswd dbname test>db.sql;


5、导入数据库

mysql> source db.sql;



', '324', '2', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-04-23', '系统管理员', null, null, '2015-04-23 15:43:24', '2015-04-23 15:43:24', '1'); +INSERT INTO `tb_article` VALUES ('3244', '247', '黑镜(black mirror)解读', '

第一季第一集

信息时代给人们带来的问题与麻烦,即使是首相也难以避免。在首相与猪做爱这个令人作呕的问题上,大多数人的态度从反对到支持急剧转变,仅仅是因为看到公主被绑匪切掉了一根手指。看似合情合理,其实难以理解,因为开始大多数人支持首相,就说明他们是可以接受甚至是公主丢掉性命的结局,民众态度的转变说明他们只是想为自己找到一个看首相笑话的借口。最后一切风波过去,仿佛没有发生过,只是首相不再是那个让妻子深爱的人。就像当今社会,人们在学习工作之余,消遣在新闻论坛之中,看着别人的笑话或是谴责某人的行为,这些随着时间都会被人淡忘,但是那些被信息时代伤害过的人(或是新闻的主角),他们受到的或是他们的亲人受到的创伤难以愈合消散!

第一季第二集

在那种极度娱乐世界,人们的一切都成为了一种消遣。人们靠运动骑自行车来赚取点数,然后再用点数来娱乐,吃饭等。女主在观众,评委的驱使下成为了三流演员,没有人关心她的真实感受,而男主也因此事被激发,努力赚取点数来去那个选秀节目 意在醒悟大家 可是他所做的一切 却被看成一种另类的娱乐方式,最后以这种方式成立了一个新的节目,这集最后男主只不过换了一个好一点的“笼子”罢了。 

第一季第三集

这一个时代的人依旧是被高科技操纵着的玩偶。每一个人都在耳朵后面植入了芯片,可以把过去的记忆通过芯片记录进去。想看的时候就可以拿着“遥控器”把记忆的画面调出来看,无论哪一天,哪一年,关于哪个人的记忆,随时都可以翻出来场面再现。男主角猜忌心太强,从一开始上司对他的工作考核就能看出来他把上司们每一个细节,话语都揣摩到了极致,想到了他会即将失业的可能。甚至当他妻子和他一起看他的回忆画面时,清楚的看见上司在他的考核报告上打了对勾,他还是不愿意相信。当男主角怀疑自己的妻子和她的前男友还有染的时候,他便拼命的询问妻子他们俩当年到底发生了什么,交往了多久。妻子告诉他那早就是很早以前一段荒唐的恋爱,可是他还是深深的质疑,一个人不断地反复地看着他和妻子共同参加晚宴时的片段。第二天,男主角上门要挟这个男人,要求他删除他芯片里关于她妻子的所有回忆片段。但是当这个男人删除记忆的时候,男主角意外的发现在这个男人18个月以前的记忆力竟然还有他妻子的存在,那时他和他妻子已经结婚。他回到家里发了疯一样的逼着妻子把她18个月以前和这个男人的记忆画面调出来给他看。男主角麻木的目睹着她妻子和这个男人18个月以前的性爱画面。男主角的强迫症和猜忌心已经把他逼到了绝路。最后妻子带着孩子离开了他。男主角一个人在家里反复的播放着他和他前妻在一起时的美好画面,不难看出男主角后悔万分的表情和内心。于是最后他选择划开皮肤,把耳朵后面的芯片取了出来。


第二季第一集

Martha的男友Ash是个社会媒体(社交媒体)迷,几乎天天泡在Twitter、Facebook这类网站上。在Martha的劝说下,Ash同意和她搬到一个偏僻的小屋去住。糟糕的是,Ash不幸遇难。在Ash的葬礼上,Martha的朋友Sarah(Sinead Matthews)称她们可以利用Ash生前在社会媒体上留下的“生活轨迹”再造一个“真实”的、具有“人工智能”的Ash。一开始Martha认为这个想法太不可思议,但最终还是同意了。在此之后,Martha很快发现自己怀孕了。人工智能ash给Martha写来很多邮件,Martha决定回复其中的一封。几次往复后,沉陷在对Ash的思念和悲痛无法自拔的Martha越发依赖ash,她将所有可以获得的Ash的文字、映像资料全部放到了程序之中,而后Martha的手机铃声响起,ash给她打来了电话。此后,ash告诉M还有更高级的服务,但是要付费,而且价格不菲,这个就是人工仿制人。M同意了并订购了一个。M对ash的到来很激动,当晚酒后与这个仿制品一夜激情。但是她很快就感觉到异样,ash毕竟只是个仿制品,情感反应都是程序化的。但是M却无法真正放弃ash,因为这个人工制品,意味着她的情感过往和依赖。

这个片子继续了第一季的主题,继续探讨技术对人的深层奴役,人类主体的异化。ash是根据Ash生前的各种言论和映像片段制造出的复制人。然而,在M与复制人Ash的交往中,ash与其说是真人Ash的复制品,不如说是M的内心印象,她根据自己内心对Ash的记忆来塑造和要求ash,但是ash似乎并不具备完全的可塑性。它只会根据Ash生前的映像,而且主要是公共人格映像对M的行为作出回应,但无论如何ash也只是一个程序,没有充分个性化,这一点M深刻的感觉到了,并试图摆脱。M让ash跳崖,但是终究她还是沉陷在这个虚假的内心感受中无法自拔,没有让ash跳下去,而是把它锁在阁楼里。

ash起初只是文字模拟,而后是语音合成,可以智能与M对话,此后具有了形体,但是到形体化这一步是需要付费的,而且价格不菲。当代的电子经济某种程度上讲,就是体验经济。资本与技术联手,真是无孔不入。这也是现代科技的营销手段,一种体验消费,恰如苹果的专卖店,首先会让你自由体验,而后让你迷恋,最后让你沉陷、无法自拔。所以“苹果教”的教义就是体验依赖,它自称提供了独一无二的操作体验和界面感受,且无法替代。但是这一切终究是fantasy,一种幻象。借助这个幻象,我们逃离现实,并且沉陷在虚假关系中。

科技的发展目标就是技术与人体的完美融合,媒介真正的透明化。但是正如麦克卢汉所说,媒介的发展,一方面是人体感官功能的扩展,另一方面则是人体相应功能的瘫痪,甚至拓展及人类的情感领域。当代社会的情感早已异化为一种电子程序的反应。对于别离的人,与其说在等待一个人的情感回应,不如说是在等待电子程序的反应,手机铃声响起、电脑社交网络的提醒等等。人似乎丧失了在现实的日常生活中无障碍地表达感情,却沉溺于遥远而不可触及的情感回应。



第二季第二集

 《黑镜》S02E02里,开始挖了个大坑,常看电影的朋友或许能想到《楚门的世界》这部电影,真的太像了。我们围困楚门,就是因为我们把他当作商品来满足我们一辈子的猎奇和消费心理,早已经忘了楚门作为一个基本的公民应有的权利。同样,S02E02的黑人女主角也遭遇类似楚门一样的事情,她遭遇追杀。又被人营救,同时还有成千上万的看客在目睹这一幕追杀事件却无动于衷反而拿出DV记录下这一仿佛见证奇迹的时刻。当黑人女主角终于有机会反抗时,拿起追杀者的枪瞬间开枪瞬间发现这不过是一出戏,大幕缓缓拉开,原来自己曾犯杀害儿童罪并对杀人古城无动于衷反而拿出DV记录下这一仿佛见证奇迹的时刻。正所谓以己之道还施彼身,这才有了无动于衷的看客们。似乎故事到了这个地步可以完结,盖棺定论这是女主角罪有应得。可是故事没完,因为借着高科技,美其名曰“正义公园”的管理者们一次一次像西绪弗斯推送山顶的大石一样来来回回,永远没有尽头,而似乎这些消费进入“正义公园”的看客们也就真成了看客,他们乐此不疲地一次次扮演好自己的角色,一次次拿出DV记录下这一仿佛见证奇迹的时刻,一次次为了心中所谓的正义奋力高呼。这样一来,到底谁才是真正的受害者?

 进入公园的看客们真的是要维护正义吗?如果说正义战胜邪恶是天经地义雷打不动的真理的话,那在同一个人身上总是重复着同一件正义战胜邪恶的故事,显然再无所谓正义、无所谓真理。这年头我们消费金钱以取所需,我们消费女性酮体以享快感,这司空见惯,无可非议。微博时代,我们把感动中国的赵红霞女士疯狂转发以之为反腐利剑,我们把一段段看似有哲理实则营销的段子疯狂转发以之为名言警句,我们把曝光的社会丑闻疯狂转发以之为爱国爱民,又谁敢否认这不是另一种形式的消费!我们以这种消费来标榜我们的与众不同,有谁会去关心赵红霞心里到底什么暗流汹涌,有谁会为了一句哲理立言正身,又有谁会去思考社会丑闻的背后隐匿多大的权力运作机制。进入“正义公园”的大门看似是为正义摇旗呐喊,实则不过是我们在消费着正义来满足我们内心不再拥有的正义感。物质的消费满足生理的快感,也不失为拉动人类进步的手段。但当人类原初最美好的理想、社会得以维护的契约,诸如正义、法律、爱心、真理、哲学等精神特质,也沦为商品,全部上了消费主义的床,这难道也会是人类文明的大迈步?


第二季第三集

男主角在扮演卡通-蓝熊,参与政治选举,男主角表明自已根本就不喜欢政治,虽然自已创造的卡通人物受万千宠爱,但其实内里,一直是公司操控(应答,思路),男主角只是按照公司的策略完美的演译,男主角最后忍受不到公司的摆布,选择离去,最终蓝熊-[Waldo]成为国际品牌,越来越有知名度,而男主角...........

男主角扮演的[Waldo],就像我们日常工作,我们是打工族,我是公司的优秀员工,并且通过我的努力为公司中创造了某个品牌(就比喻我在电信公司,创造了“天翼”手机),但在工作中,我发现我其实不认同公司的政策,公司甚至为了利益进行不择手段,实行诈骗等(就比喻每年315晚会所曝光内容),完全背离我的工作原则,最终选择了离职。现在这个社会,个人离职对公司不会造成太大的损失,你放弃了此工作,成千上万的人争着接手你的工作,公司不会因为没有你,而停滞不前,公司会找到你的代替品,继续发展它的品牌。而你(个人)离职后,要么重新上路,要么沦落街头,这就是现实社会............



', '356', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-04-25', '系统管理员', null, null, '2015-04-25 11:20:37', '2015-04-25 11:20:37', '1'); +INSERT INTO `tb_article` VALUES ('3245', '247', '最齐全的8种胎教方法', '

营养胎教

必须注重均衡的饮食搭配,做好体重控制,针对孕期的不同阶段,做重点式的营养补充。孕期1~3个月→补充叶酸和维生素,摄取容易消化、清淡的食物,可减缓怀孕初期的不适症状。怀孕中期→因孕妇的食欲增加,应注意补充富含蛋白质、钙、植物性脂肪的营养食品。怀孕晚期→应控制水和盐分的摄入量,并监控体重的增加。

适合周数:得知怀孕开始

音乐胎教

建议妈妈选择舒缓、轻柔、明朗旋律、温和自然、有规律性、节奏和妈妈心跳相近的音乐或乐曲;莫扎特的EQ音乐、大自然的河川、溪流声、虫鸣鸟叫声等都是不错的选择,具有安抚胎儿、调节昼夜规律的作用。

妈妈应尽量避免听吵杂或不当的音乐(胎儿不喜欢听到高振动频率的音波)。

适合周数:怀孕第16周开始

美育胎教

经常欣赏艺术作品可以提高人的感受力;准妈咪可以带着肚子里的小宝宝,一同欣赏美丽的事物,当准妈妈感受到美的同时,也在无形中传达给宝宝了喔!

适合周数:怀孕第20周开始

抚摸胎教

父母用手轻轻抚摸胎儿或轻轻拍打胎儿,通过孕妇肚皮传达?胎儿,形成触觉上的刺激,促进胎儿感觉神经和大脑的发育。父母用手在腹部抚摸胎儿,用手指对胎体轻按一下,胎儿会作出反应。可边触摸,边说话,加深全家人的感情。

适合周数:怀孕第20周开始

意念胎教

准妈咪在怀孕期间透过想象来勾勒宝宝的形象,这个形象在某种程度上,将与即将出生的胎儿相似。有些准妈咪很担心胎儿出生后,是不是有身体上的残缺,经常忐忑不安,不如在房间里贴一些可爱宝宝的画像或照片,可以帮助孕妇保持愉快的心情。

适合周数:怀孕第28周开始

对话胎教

爸爸和妈妈每天都要跟肚子里的宝宝说说话,早上起床打招呼、不时地把看到的东西分享给宝宝等。这不仅是语言胎教的重点,也是建立亲子关系的关键。

适合周数:怀孕第24周开始

运动胎教

在进行时,准妈咪必须掌握好动作的幅度与运动量。

孕妇可以做一些胎儿小体操,在感觉到胎动时仰卧、全身放松,用双手从上到下、从左到右,反复轻柔地抚摸腹部,有时,也可以用手指轻压胎儿,并感觉胎儿随着指压轻轻地蠕动。除此之外,准妈咪每天做适量的运动,有助于顺产,并减少生产时会阴肌肉受损。

适合周数:怀孕第20周~36周

光照胎教

胎儿的视觉发育大约要到36周大时,才能对光照的刺激产生反应。每天用手电筒紧贴肚皮一闪一闪地照射胎儿的头部,每次持续2分钟,胎儿出生后的动作行为、视觉功能及对昼夜的区分也表现得比较强。

适合周数:怀孕第32周开始


', '255', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-04-25', '系统管理员', null, null, '2015-04-25 11:28:59', '2015-04-25 11:28:59', '1'); +INSERT INTO `tb_article` VALUES ('3247', '247', '生育津贴', '

北京晚育津贴规定

  北京市已婚妇女年满二十四周岁初育的为晚育。晚育的女职工,除享受国家规定的产假外,增加奖励假30天,奖励假也可以由男方享受。依据关于贯彻实施《北京市企业职工生育保险规定》有关问题的规定,《北京市人口与计划生育条例》规定的晚育奖励假由夫妻双方一方享受。

  女职工享受晚育奖励假的,生育津贴按女职工缴费基数计算,由社会保险经办机构通过女职工单位支付给个人;男职工享受晚育奖励假的,其奖励假的津贴按男职工缴费基数计算,由社会保险经办机构通过男职工单位或女职工单位支付给个人。

  男职工享受的晚育奖励假津贴为本人同期休假的工资,其晚育奖励假津贴低于本人工资标准的,差额部分由男职工单位负责补足。


一些问题:

参考网址:http://s.dianping.com/topic/6477221


1.生育津贴及晚育津贴是由男女方任一方选择领取还是只能女方领取?

答:生育津贴必须由女方领取,晚育津贴是和晚育假关联在一起的,就是谁休晚育假就谁领取晚育津贴(即晚育津贴按照领取者的公司当月缴费基数计算),我说因为我爱人缴费基数高,能不能晚育我休假,他领津贴,12333说按规定不能这么领取。不过我看网上有人说这么领取成功了,似乎是看公司查不查,看来想要多领点钱就要看运气了


2.晚育假遇元旦或春节等法定假日是否顺延?

答:在所有法律条文中没有详细规定,需要公司人力或者申请人去社保经办机构咨询,社保经办机构就是公司给孕妇交生育险的那个社保机构,而且需要是否顺延是需要计生委审批,即休满98天的生育假后,再提交申请晚育假然后进行审批(我不太明白为什么是这个流程,我们公司人力就告诉我,我已经30岁了就直接休128天就行了)


3.生育津贴和晚育津贴是有什么机构支付?

答:如果女方参加了生育保险,则由医保支付,如果没参加则由单位支付。孕妇在休假期间是没有工资的,所以理论上是只发生育津贴这一个当做工资。(我姐姐的公司就发两份工资,一个是生育津贴,一份是公司给发的正常工资,真心羡慕!)


4.如果经公司当月缴费基数计算出的生育津贴金额比个人工资高,按哪个发放?

答:如果生育津贴金额高于个人工资则按照生育津贴发放(我们公司的妈妈们都说公司只发平时个人工资那么多的钱,看来多出的部分是被公司K掉了),如果生育津贴低于个人工资则由公司补齐个人工资部分。


5.晚育津贴如何计算?

答:计算方式同生育津贴(即和公司当月缴费基数有关)


6.晚育假到底是30天还是45天,网上有人说是30有人说是45

答:由于城市不同,规定不尽相同,北京市规定晚育假是30天(帝都哇)


7.晚育津贴领取流程及所需材料?

答:每个区的社保机构所需材料不尽相同,请咨询您公司参保的社保经办机构。


然后我听出12333这位接电话的答疑解惑阿姨在回答我的时候似乎是先查找什么文件,然后再念给我相关的条例,让我自己分析,我就问她能不能告诉我这些文件的名字,她就告诉我了一堆文件,说上【北京市人力资源和社会保障】网站查找这些文件:

》1.京劳社医发 06年178号文

》2.京人社办发 09年54号文

》3.京人社医发 2011年334号文

》4.(关于晚育的)京劳社医发 2005年62号文


有什么问题就打电话12333问


', '306', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-04-28', '系统管理员', null, null, '2015-04-28 14:14:48', '2015-04-28 14:14:48', '1'); +INSERT INTO `tb_article` VALUES ('3248', '249', '查看LINUX进程内存占用情况', '

可以直接使用top命令后,查看%MEM的内容。

可以选择按进程查看或者按用户查看,如想查看oracle用户的进程内存使用情况的话可以使用如下的命令:

(1)top

top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器

可以直接使用top命令后,查看%MEM的内容。可以选择按进程查看或者按用户查看,如想查看oracle用户的进程内存使用情况的话可以使用如下的命令:

$ top -u oracle

内容解释:

  PID:进程的ID

  USER:进程所有者

  PR:进程的优先级别,越小越优先被执行

  NInice:值

  VIRT:进程占用的虚拟内存

  RES:进程占用的物理内存

  SHR:进程使用的共享内存

  S:进程的状态。S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值为负数

  %CPU:进程占用CPU的使用率

  %MEM:进程使用的物理内存和总内存的百分比

  TIME+:该进程启动后占用的总的CPU时间,即占用CPU使用时间的累加值。

  COMMAND:进程启动命令名称


  常用的命令:

  P:按%CPU使用率排行

  T:按MITE+排行

  M:按%MEM排行


(2)pmap

  可以根据进程查看进程相关信息占用的内存情况,(进程号可以通过ps查看)如下所示:

  $ pmap -d 14596


(3)ps

  如下例所示:

  $ ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid'  其中rsz是是实际内存

  $ ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid' | grep oracle |  sort -nrk5

  其中rsz为实际内存,上例实现按内存排序,由大到小


', '410', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-05-08', '系统管理员', null, null, '2015-05-08 08:06:53', '2015-05-08 08:06:53', '1'); +INSERT INTO `tb_article` VALUES ('3249', '243', '微信抽奖lottery', '

微信九宫格抽奖

主要实现微信页面抽奖,积分展示,奖品及中奖奖品展示,中奖名单等;后台实现抽奖概率和优先级设置,奖品配置及个数统计,中奖名单,人员信息等。

', '376', '0', '11', '1', '1', null, '40', null, null, null, null, null, '10', '2015-05-10', '系统管理员', null, null, '2015-05-10 21:12:13', '2015-05-10 21:12:13', '1'); +INSERT INTO `tb_article` VALUES ('3252', '249', 'Linux下修改Mysql的用户(root)的密码', '

修改的用户都以root为列。
一、拥有原来的myql的root的密码;


方法一:
在mysql系统外,使用mysqladmin
mysqladmin -u root -p password "test123"
Enter password: 【输入原来的密码】

方法二:
通过登录mysql系统,
mysql -uroot -p
Enter password: 【输入原来的密码】
mysql>use mysql;
mysql> update user set password=passworD("test") where user='root';
mysql> flush privileges;
mysql> exit;      



二、忘记原来的myql的root的密码;

首先,你必须要有操作系统的root权限了。要是连系统的root权限都没有的话,先考虑root系统再走下面的步骤。
类似于安全模式登录系统,有人建议说是pkill mysql,但是我不建议哈。因为当你执行了这个命令后,会导致这样的状况:
/etc/init.d/mysqld status
mysqld dead but subsys locked
这样即使你是在安全模式下启动mysql都未必会有用的,所以一般是这样/etc/init.d/mysqld stop,如果你不幸先用了pkill,那么就start一下再stop咯。
mysqld_safe --skip-grant-tables &
&,表示在后台运行,不再后台运行的话,就再打开一个终端咯。
mysql
mysql> use mysql;
mysql> UPDATE user SET password=password("test123") WHERE user='root';   
mysql> flush privileges;
mysql> exit;                         
##本来mysql是不分大小写的,但是这个是修改的mysql中的mysql数据库的具体的值,要注意到。

', '319', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-05-17', '系统管理员', null, null, '2015-05-17 21:39:01', '2015-05-17 21:39:01', '1'); +INSERT INTO `tb_article` VALUES ('3253', '249', 'linux系统性能监控', '

1.硬盘读写性能,查看TPS和吞吐量信息

#iostat -d -k 1 10       

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn

xvda              0.78         6.84         4.98   15249958   11108776


-d:显示某块具体硬盘,这里没有给出硬盘路径就是默认全部了

-k:以KB为单位显示

1:统计间隔为1秒

10:共统计10次的


tps:该设备每秒的传输次数(Indicate the number of transfers per second that were issued to the device.)。“一次传输”意思是“一次I/O请求”。多个逻辑请求可能会被合并为“一次I/O请求”。“一次传输”请求的大小是未知的。

kB_read/s:每秒从设备(drive expressed)读取的数据量;

kB_wrtn/s:每秒向设备(drive expressed)写入的数据量;

kB_read:读取的总数据量;

kB_wrtn:写入 的总数量数据量;这些单位都为Kilobytes。

一开始的数值很大是因为显示的是累计读写量


2. iostat -x 参数,查看设备使用率(%util)、响应时间(await)

Device:         rrqm/s   wrqm/s   r/s   w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await  svctm  %util

sda               4.87    85.88  8.41  6.14   417.21   368.06   107.98     0.02    8.92   2.73   3.97


rrqm/s:每秒这个设备相关的读取请求有多少被Merge了(当系统调用需要读取数据的 时候,VFS将请求发到各个FS,如果FS发现不同的读取请求读取的是相同Block的数据,FS会将这个请求合并Merge);

wrqm/s:每秒这个 设备相关的写入请求有多少被Merge了。

r/s:每秒响应的读取请求数;

w/s:每秒响应的写入请求数;

rkB/s:每秒读取的数据量;

wkB/s:每秒写入的数据量

await:每一个IO请求的处理的平均时间(单位是微秒)。这里可以理解为IO的响应时 间,一般地系统IO响应时间应该低于5ms,如果大于10ms就比较大了。

%util:在统计时间内所有处理IO时间,除以总共统计时间。例如,如果统计间隔1秒,该 设备有0.8秒在处理IO,而0.2秒闲置,那么该设备的%util = 0.8/1 = 80%,所以该参数暗示了设备的繁忙程度。一般地,如果该参数是100%表示设备已经接近满负荷运行了(当然如果是多磁盘,即使%util是100%,因 为磁盘的并发能力,所以磁盘使用未必就到了瓶颈)。


3.iostat -c 参数,查看CPU状态信息

iostat -c 1 10

avg-cpu:  %user   %nice %system %iowait  %steal   %idle

                    1.28     0.00      0.43           0.84     0.00         97.45


4.vmstat命令,查看内存使用情况

vmstat 1 10

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------

 r  b      swpd   free      buff         cache   si   so    bi    bo   in   cs us sy id wa st

 0  0     96 2934580 149988 274084    0    0   104    92    0    0  1  0 97  1  0

 0  0     96 2934580 149988 274084    0    0     0     0 1088  252  0  0 100  0  0

Procs 

r:在运行队列中等待的进程数 

b:在等待io的进程数 

Memory 

swpd: 虚拟内存使用情况,单位:KB

free: 空闲的内存,单位KB

buff: 被用来做为缓存的内存数,单位:KB

Swap 

si: 从磁盘交换到内存的交换页数量,单位:KB/秒

so: 从内存交换到磁盘的交换页数量,单位:KB/秒

IO 

bi: 发送到块设备的块数,单位:块/秒

bo: 从块设备接收到的块数,单位:块/秒

System 

in: 每秒的中断数,包括时钟中断

cs: 每秒的环境(上下文)切换次数

CPU 

按 CPU 的总使用百分比来显示 

us: CPU 使用时间

sy: CPU 系统使用时间

id: 闲置时间

r、b列一般为0,表示没有等待进程,如果不为0表示系统性能有问题

si、so 两 列,表示内存交换的频繁程度,如果数值长期很大,表示内存不够,要和硬盘交换数据,也可以表示要读写的数据每次都不一样

bi、bo 两列,表示I/O输入输出很频繁


5、网络监控

#tcpdump -i eth0 -nv > netout.txt

13:00:42.320754 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 10.51.87.247 tell 10.51.86.101, length 42

13:00:42.866700 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 169.254.30.249 tell 10.51.70.157, length 42




', '302', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-05-19', '系统管理员', null, null, '2015-05-19 11:44:32', '2015-05-19 11:44:32', '1'); +INSERT INTO `tb_article` VALUES ('3254', '249', 'Linux相关TCP参数优化', '

一、优化最大文件打开数限制,默认1024,建议8192,如果需要还可以更大

1)对所有用户进行优化

#vi /etc/profile

在最后加入

ulimit -SHn 8192

#source /etc/profile

2)对普通用户进行优化

用上述方法也可以修改一般用户的.bash_profile文件

ulimit -n查看参数

注:ulimit –u优化最大进程数,建议在10000以上,如果大于10000则不需要优化,优化方法同上。

二、TCP优化

1)优化网络设备接收队列,默认300rhel9)或1000rhel5)建议3000

执行下面命令:

# echo "3000" > /proc/sys/net/core/netdev_max_backlog

#cat /proc/sys/net/core/netdev_max_backlog

3000

2)减少处于FIN-WAIT-2连接状态的时间,使系统可以处理更多的连接。默认值180,建议值30

# echo "30" > /proc/sys/net/ipv4/tcp_fin_timeout

#cat /proc/sys/net/ipv4/tcp_fin_timeout

30

3)减少TCP KeepAlive连接侦测的时间,使系统可以处理更多的连接。默认值72002小时),建议值180030分钟)

#echo "1800" > /proc/sys/net/ipv4/tcp_keepalive_time

#cat /proc/sys/net/ipv4/tcp_keepalive_time

1800

4增加TCP SYN队列长度,使系统能处理更多的并发连接。

# echo "8192" > /proc/sys/net/ipv4/tcp_max_syn_backlog

# more /proc/sys/net/ipv4/tcp_max_syn_backlog

8192

三、优化缓冲区

1)     优化系统套接字缓冲区

net.core.rmem_max=16777216以字节为单位

net.core.wmem_max=16777216以字节为单位

# echo "16777216" >  /proc/sys/net/core/rmem_max

# echo "16777216" >  /proc/sys/net/core/wmem_max

# more /proc/sys/net/core/rmem_max

16777216

# more /proc/sys/net/core/wmem_max

16777216

2)     优化TCP接收/发送缓冲区

net.ipv4.tcp_rmem=4096 87380 16777216

net.ipv4.tcp_wmem=4096 65536 16777216

# echo "4096 87380 16777216" >  /proc/sys/net/ipv4/tcp_rmem

# echo "4096 87380 16777216" >  /proc/sys/net/ipv4/tcp_wmem

# more /proc/sys/net/ipv4/tcp_rmem

4096 87380 16777216

# more /proc/sys/net/ipv4/tcp_wmem

4096 87380 16777216


详细配置含义参照:http://www.360doc.com/content/14/0606/16/3300331_384326124.shtml


', '484', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-05-19', '系统管理员', null, null, '2015-05-19 11:50:47', '2015-05-19 11:50:47', '1'); +INSERT INTO `tb_article` VALUES ('3255', '249', 'Nginx安装记录和问题解决', '

官网下载nginx:http://nginx.org/en/download.html


设置安装路径

#./configure --prefix=/usr/local/nginx

编译安装

#make && make install


安装Nginx报错:


一、./configure: error: the HTTP rewrite module requires the PCRE library.

安装pcre-devel解决问题:

yum -y install pcre-devel


二、./configure: error: the HTTP gzip module requires the zlib library.

安装zlib-devel解决问题:

yum -y install zlib-devel


三、./configure: error: the HTTP cache module requires md5 functions from OpenSSL library. 

安装openssl openssl-devel解决问题:

yum -y install openssl openssl-devel


', '363', '1', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-05-19', '系统管理员', null, null, '2015-05-19 16:15:41', '2015-05-19 16:15:41', '1'); +INSERT INTO `tb_article` VALUES ('3256', '247', '如何去除鞋柜中的臭味和霉味', '

随着天气渐渐变热,穿了一天的鞋和袜子上的臭味变得更加明显,鞋柜里面久而久之也就有了臭味和霉味。那么,如何去除鞋柜里的臭味呢?


1、茶叶渣、咖啡渣除臭

在布袋或旧丝袜里塞茶叶渣或咖啡渣,扎成小包,将做好的小包塞入鞋内,摆在鞋柜角落,有很好的消除霉菌和异味的效果。


2、樟脑丸除臭

将樟脑丸包在塑料袋中将其碾碎,然后把樟脑丸粉末均匀地洒在鞋内,在上面放上鞋垫,一双鞋只要大约一个樟脑丸就可以了,消除霉菌和异味的效果甚佳。


3、柠檬皮、柚子皮除臭

鞋柜中的异味是令大多数家庭头疼的问题,其实,只要将切碎了的柠檬皮或柚子皮用纱布包好放在鞋柜的一角,这个令人头疼的问题便可轻松解决。当然,要记得经常更换。


4、自制天然鞋柜除臭剂

其实自制天然鞋柜除臭剂只需要两样东西,那就是小苏打和花露水。我们可以找一个小点的容器,将小苏打放进去,然后滴入4、5滴花露水,超级简单的鞋柜除臭剂就可以放入鞋柜啦。如果香味挥发完了我们可以再往小苏打中滴入2、3滴花露水,就可以接着使用了,省钱又好用哦。


5、竹炭除臭

可以选购一些天然的竹木炭,用布或纸盒装起来,放入鞋柜中,就可以起到吸附异味的作用。用过一段时间以后,将炭包取出来在太阳底下晒一晒,就又可以重复使用了。现在市场上也有现成的炭包出售。


其实,要想彻底去除鞋柜中的异味,必然要按期洁净、消毒,经常透风。最好在鞋柜里铺几张旧报纸,有助于除湿。另外,平时鞋子不要脱下来就放进鞋柜里,要洁净、完全晒干后再放进去。


', '429', '1', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-05-24', '系统管理员', null, null, '2015-05-24 18:32:03', '2015-05-24 18:32:03', '1'); +INSERT INTO `tb_article` VALUES ('3257', '249', '如何给网站添加一键分享代码', '

参考链接:http://jingyan.baidu.com/article/642c9d34cb52bb644b46f745.html

', '292', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-05-28', '系统管理员', null, null, '2015-05-28 12:57:47', '2015-05-28 12:57:47', '1'); +INSERT INTO `tb_article` VALUES ('3258', '249', '推荐一些国内的Jquery CDN免费服务', '

Jquery是个非常流行的JS前端框架,在很多网站都能看到它的身影。很多网站都喜欢采用一些Jquery CDN加速服务,这样网站加载jquery会更快。之前火端网络的一些网站都是使用Google的jquery CDN,如:http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js ,但是由于最近Google打不开,这些CDN地址也无法访问,而JS往往放在网页的head里,JS无法访问导致网站打开非常慢,只能是全部替换掉CDN链接了。

推荐几个国内的jquery CDN服务地址吧:

★新浪CDN,感觉很快,用的人很多,推荐使用!

其它版本可以在这里找地址 http://lib.sinaapp.com/?path=/jquery

★百度CDN

其它版本之间修改代码中的版本号就行了

★360的CDN

<script src="http://libs.useso.com/js/jquery/1.9.1/jquery.min.js"></script>

其它版本也是直接修改版本号就可以了

如果担心CDN地址加载失败,可以这样载入本地jquery

<script type="text/javascript">

!window.jQuery && document.write('<script src="js/jquery.min.js"><\\/script>');

</script>

本文地址:http://www.huoduan.com/jquery-cdn.html
本文作者:火端网络,转载请务必以超链接形式注明出处。
本文标签:Jquery


', '413', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-06-01', '系统管理员', null, null, '2015-06-01 13:20:39', '2015-06-01 13:20:39', '1'); +INSERT INTO `tb_article` VALUES ('3259', '249', '国内免费的CDN,boostrap提供', '

查看地址:http://www.bootcdn.cn/

', '438', '1', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-06-01', '系统管理员', null, null, '2015-06-01 13:28:28', '2015-06-01 13:28:28', '1'); +INSERT INTO `tb_article` VALUES ('3260', '247', '找几个合伙人做出个DEMO,然后融资去上市吧!', '

我不知道这是不是源头,在《中国合伙人》播出之后,合伙人这个词忽然就火了,然后借着全民创业的风潮,成为了一个家喻户晓的词,似乎不提几次合伙人,都不好意思说自己是在创业。

而阿里巴巴的上市,更是为这个词添了好几把火,寻找合伙人几乎快成为了一门生意。

登录一些创业论坛,看一些创业项目,完全看不懂小伙伴们的项目到底是想干嘛了,三言两语就结束了,但是却一而再,再而三的强调寻找合伙人,然后各种求沟通。

内容大体是说自己有一个想法,现在想要寻找志同道合的伙伴一起去实现,寻找一个技术合伙人来把DEME做出来,然后找产品合伙人去打磨产品,然后寻找营销合伙人去推广市场,最后再来个运营合伙人来做整体运营,然后就是融资,一年内做到几千万上亿美元的估值,最后就上市数钱了。

最最最关键的地方在于,所有人都只有几个点的期权。

这让我想起了一个段子,在网上很流行。

老王晚上想吃火锅了,于是打电话给朋友,对张三说晚上来吃火锅就差个底料,你过来顺带买来;对李四说晚上来吃火锅,就差点羊肉了,你过来顺带买来;后面几个朋友都讲差不多的话,电话打完了之后就烧了一锅开水坐等吃火锅。

我不知道他们是不是都看过陈天桥空手套白狼的故事,故事说陈天桥代理完韩国游戏后没钱了,于是拿着一纸合同去借到了免费的服务器,又拿着租借服务器的合约得到了免费的宽带使用权。但是拜托桥哥空手套白狼之前,好歹也是投入了几十万美金才签下了游戏好吧。

不得不说眼下国内的创业风潮非常的浮燥,在一些创业论坛上,动不动就能看到一年内上亿美元估值的项目,动不动就是我这个是未来,是趋势。这个时候我们不得不停下来,冷静的去想一想,我们创业的目的是什么?

这个问题的答案,大致可以分为三类:第一类是为了生活而创业,第二类是为了情怀而创业,第三类是一不留神就创业了。就好比扎克博格,本身天赋异禀,遇上了一对双胞胎,然后写了个程序却得到了意想不到的结果。

第二类创业者心中怀有一份改变世界的雄心,第三类创业者对技术或者对自己所爱的领域有一份近乎痴迷的热爱。然而第一类创业者,却多了份功利,于是我们就经常可以听到这类创业者话锋总离不开的三个词。

合伙人、融资和上市。

最近身边也有一些朋友在创业,起初我对朋友的项目还挺感兴趣,但是越深入接触到后面越感觉不是那么回事。这位朋友想做一个地方门户,但是项目却一直没有进展,问他原因他告诉缺少一个可以帮他去做市场的人。

一、合伙人你在哪里?

这位朋友是个地方的公务员,拿着一份不错的薪水,但是却怀有一个互联网的梦想,希望可以在本地建立一个地方门户,凭借着自己的技术优势,迅速搭建了一个站点,但是却一直没有用户登陆,到现在也是一个幽灵站点。

这个项目从建立到现在也有一年多的时间了,网站模板改了无数次,前前后后也投入了小几万块钱,但是却始终都没有任何的进展,朋友告诉我说他忙啊,天天要上班,很多事情要处理,没有时间去做市场推广,去宣传等等。

我仔细看了一下他的网站,做为一个地方门户,分类实在太多,一个不到几万人的小城却拥有几乎所有门户网站都有的二十多个分类,论坛也有十几个版块,而且绝大多数分类都是空的,完全就是模板自带的分类,全是空链到主页。

于是我给出了几个主意。

1、精简网站分类,砍掉一些看起来高大上但是完全没有可操作性的版块,比如旅游啊摄影啊汽车啊,重点集中在地方资讯、城中商铺和学生这么几个受众人群多的分类上面。

2、利用本地为数众多的网吧,先把网站的链接铺到当地数十家网吧的桌面上,先给流量的来源找个入口。

3、制做一些有噱头的海报,先利用空余时间在城中宣传一段时间(这个城不大,半个小时就可以走完全城),很快大家就都知道有这么个网站了,然后利用学生爱自拍的心理先组织一场自拍活动,让学生动员朋友给他们评论投票。

4、建立网站的官方公众号,自拍活动与网站同步进行。个人感觉在这样一个小城,其实最后也许公众号的价值会比网站还要大。

5、反向操作,将网站的信息用报纸大小的纸张印刷出来,然后阶段性的发放到客家商铺里去,小城中人工作清闲,没有大城市那么严格的工作手则,而且小城中的居民对于报纸的接受度更高。在送免费报纸给他们打发时间的同时,在报纸上印上网站和公众号的图标。

6、有偿征集线索,并将线索提供者的信息印在报纸上(当然不是真的报纸),增加用户与网站的互动性。

这些宣传成本并不高,主要是一些体力活,小城并不大,工作时间也没那么长,几乎五点多就都下班了,完全有时间去做这些地推。朋友最初一听觉得有道理,大刀阔斧的修改,将十几个版块确到只剩五个板块,并将门户网站改成了轻门户。

但是一切到此也就暂停了,砍掉版块后,一切都暂停不动了。网站上的链接空链的地方还是空链,BUG还是BUG,一问还是那个问题,没时间啊,缺少一个地推人员,我忙啊。好吧于是我就不说话了。

最后折腾来折腾去,网站又经历了几次改变,最后又变成二十多个分类的大门户类型了。

二、别老想着融资,创业不是件高大上的事

几年前TVB出过一部电视剧,叫《珠光宝气》,我想大多数人都应该看过,那绝对是一个刺激人感观的商战故事,尤其是里面所有的吊丝都有过逆袭的桥段,最后一个穷小子在极短时间内成为一个大集团的CEO。

也许是香港的商战剧太深入人心了,最近几年我也经常看到一些商业真人秀里,有一些特别穿越的人物出现,有些企图做女老板闺蜜的年轻人,有些觉得我就是天纵英才的人物出现。

我们天天看新闻,谁谁谁又融了几千万美金,谁谁谁估值数十亿,媒体也天天报道说这是一个最好的时代,以前是创业者追求风投跑,现在是风投追着创业者跑,甚至出现了风投求着别人说你创业吧你创业吧我们给你钱的说法。

在这里我不得不说,快别傻了,你要信你就等死吧。任何时候风投都不可能求着你创业,他们的钱也不是那么好拿的。那些风投劝着别人创业都是有特定背景的,他们要么是行业资深人士,要么是产品经理跟风投经常有接触,作为一介草根吊丝来说,千万别在做这种梦了。

这就回到上面说的那个例子来说,朋友之所以一直希望找一个地推合伙人来帮他做市场,原因有二,一是他没足够的钱请人来做地推,二是他舍不得现在这份工作,不敢赌这一把。

那些在创业论坛上,到处找合伙人的创业者,很多也是对自己的项目拿不准,所以希望寻找一些人来替自己分担分险。

这话也许说的有些不好听,但是却是一个事实。寻找合伙人创业,肯定有一些是真的希望寻找伙伴的,但是混水摸鱼的也不少。这里就不得不说一说公司这一组织形式了,公司这种组织形式最初的出现,目的就是为了让更多的人来分担风险,将创业的风险降至一个可控的高度。当然前提是投资者心里要对这个风险有个预期,是自愿分担的。

所以劝一些创业路上,或者准备创业的伙伴们,在制定创业计划的时候,千万不要把融资当做必然选项,要有一个完全没有融资的计划。这两天某网媒发了一篇文章,说的是过去那些没有融资完全依靠自己的能力做到上市的企业的故事。

那些高大上的故事可以听一听,琢磨琢磨,但是最好不要套用到自己身上,认清楚自己的高度,制定一个自己能做到的计划,然后潜下心利用手头上的资源,认真打磨自己的产品。

三、企业成为了一件商品,一件全世界最贵的奢侈品

把上市当做梦想的创业者,大有人在,而且不少,有些人甚至于把上市当成为创业的最终目标。可是却忘了问自己一个问题,那就是为什么要上市?

这里不得不说一件非常可怕的现实,那就是企业成为了一件商品,一件全世界最贵的奢侈品。

这都是估值惹的祸,也是眼下很多企业虚报融资额的一个因素之一。随着互联网创业大潮的兴起,出现了越来越多的创业者,他们创业的唯一目的就是做高企业的估值,然后把公司卖掉套现走人。公司盈不盈利这件对他们来说完全不重要,而且当你跟他谈盈利,他就跟你谈实例,谁不盈利是为了让公司更有价值,获得更多的市场。

这些人美其名曰:连续创业者。

于是“烧钱”这个词火了,创业再也不是比谁最能挣钱了,反而变成了谁最能烧钱,似乎烧得越多越证明自己有本事。于是乎可以看到企业烧光了钱后关门大吉,甚至还有创始人在微博叫卖公司的事情出现。

百科上关于上市的定义是这样的:上市即首次公开募股,指企业通过证券交易所首次公开向投资者增发股票,以期募集用于企业发展资金的过程。

上市是一个行为,而不是一个目的,是为了募集企业发展所需要的资金的工具,现在却变成了一种荣耀,甚至出现了“流血上市”的案例。

阿里巴巴和窝窝上市,可以说是国内最典型的两个案例了,一个从美国资本市场豪取250多亿美金,迅速创造了一大批富豪,成为美国历史上最大IPO。另一个却是几次闹乌龙,最终也不过募集到了几千万美金,甚至还没有一些创业公司A轮拿得风投高,这里就不做细论了。

忘掉那些高大上的故事吧,找几个合伙人做一个DEMO,然后融资去上市的梦想一想就好。


', '388', '1', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-06-11', '系统管理员', null, null, '2015-06-11 08:22:34', '2015-06-11 08:22:34', '1'); +INSERT INTO `tb_article` VALUES ('3261', '247', '蔬菜沙拉', '

1.准备原料洗净,生菜、苦菊、黄瓜切片,洋葱、红椒切条(蔬菜可以任意选择,根据您的喜好)

2.橄榄油、红醋、盐和黑胡椒粉适量

3.橄榄油和红醋比例是3:1,红醋也可以换成水果醋或者柠檬醋,但是不要用米醋和陈醋,没有清香爽口的味道了

\"蔬菜沙拉HY.jpg\"

4.将洗好控干的蔬菜放入沙拉盆中

5.倒入油醋汁拌匀即可

\"蔬菜沙拉uj.jpg\"

\"蔬菜沙拉Vr.jpg\"

\"蔬菜沙拉VT.jpg\"

转自:http://www.meishij.net/meirong/shucaishala_11.html

', '246', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-06-17', '系统管理员', null, null, '2015-06-17 20:59:59', '2015-06-17 20:59:59', '1'); +INSERT INTO `tb_article` VALUES ('3262', '247', '水果沙拉', '

1.

准备所需材料。

\"\"

2.

将苹果洗净去皮,切成小丁用淡盐水泡5分钟,弥猴桃去皮切成小丁、圣女果同样也是洗净切小丁。

\"\"

3.

将泡好的苹果捞起沥干水份。

\"\"

4.

将所有水果倒入大碗内拌匀。

\"\"

5.

取一个盘子,将水果装盘。

\"\"

6.

沙拉酱装入裱花袋里。

\"\"

7.

最后把沙拉酱在水果表面上挤成网花纹即可。

\"\"

转自:http://www.meishij.net/zuofa/shuiguoshala_12.html

', '285', '2', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-06-17', '系统管理员', null, null, '2015-06-17 21:01:37', '2015-06-17 21:01:37', '1'); +INSERT INTO `tb_article` VALUES ('3263', '247', '红枣银耳汤', '

1.银耳放入开水中浸泡20分钟,泡发后取出洗净,并去除黄根,掰成小朵;红枣洗净去核,枸杞放入清水中浸软备用

2.汤锅中倒入适量清水,大火烧开后,转小火放入银耳熬煮30分钟,待汤汁变得黏稠后,放入红枣、枸杞继续熬煮10分钟

3.10分钟后,将黄冰糖放入锅中,搅拌至冰糖融化即可

\"红枣银耳汤Hs.jpg\"


厨房小常识


         质量较好的银耳呈淡黄色,水发后手感柔嫩,劣质银耳水发后较脆。另外不要购买太大朵的银耳,大朵银耳的黄根很大,清理时要去掉的部分就很多,小朵的银耳相对要好些。


营养功效


好汤益容颜:

        银耳是极好的美容品,其含有天然植物性胶质,长期食用可滋润肌肤,更有减轻面部黄褐斑、雀斑的功效。银耳汤营养丰富,但是不能隔夜饮用,所以,一定要饮用新鲜、美味的银耳汤。除此之外,银耳中还含有大量的维生素D,可有效地防止人体钙元素的流失,对人体骨骼也很有好处。


饮食小常识


        女人爱美丽,而日复一日忙碌于工作、家庭之中的女人,历经了岁月的洗礼,不经意间失去了一些花容月色,美丽元素的消耗也在与日俱增。纵然女人是水做的,也少不了一碗好汤给女人带来的温情与呵护。那就大胆运用每一个养颜公式,将美丽定格于此时此刻吧——从现在开始,时常为自己、为家人精心熬煮一碗养颜好汤,让容颜不再跟随着时光的脚步匆匆流逝——多一份眷顾,多一份妙色……


', '290', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2015-06-27', '系统管理员', null, null, '2015-06-27 18:42:46', '2015-06-27 18:42:46', '1'); +INSERT INTO `tb_article` VALUES ('3265', '249', '第三方支付接入文档', '

支付宝开放平台

https://doc.open.alipay.com/doc2/alipayDocIndex.htm


微信开放平台

https://open.weixin.qq.com/


银联开放平台

https://open.unionpay.com/ajweb/help/file


', '109', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2016-02-19', '系统管理员', null, null, '2016-02-19 11:49:12', '2016-02-19 11:49:12', '1'); +INSERT INTO `tb_article` VALUES ('3266', '247', '2015北京生育津贴报销流程', '

http://www.yjbys.com/news/389992.html


 2015北京生育津贴报销流程是怎样的?

  一、申领条件

  1、符合国家或者本市计划生育规定;

  2、分娩前连续缴费满9个月。

  二、所需材料

  1、《结婚证》;

  2、《北京市生育服务证》或《北京市外地来京人员生育服务联系单》;

  3、《婴儿出生证明》;

  4、《医学诊断证明》;

  5、男女双方二代身份证;

  6、北京市申领生育津贴人员信息登记表;

  7、补充:1至5需要原件及复印件一份。

  三、申领流程

  1、产后3个月内把材料1-5交女方单位人力资源部;

  2、填写《北京市申领生育津贴人员信息登记表》并由单位盖章;

  3、个人执此表到爱人单位盖章并双方本人签字,返还女方单位;

  4、女方单位每月5日-25日报社保申报,资金到公司帐后发给本人。

  2015北京生育津贴报销标准和范围

  补偿标准为:女职工妊娠7个月(含7个月)以上顺产分娩或妊娠不足7个月早产的,享受3个月的生育津贴;难产及实施剖宫产手术的,增加半个月的生育津贴;多胞胎生育的,每多生一个婴儿,增加半个月的生育津贴;妊娠3个月(含3个月)以上、7个月以下流产、引产的,享受1个半月的生育津贴;妊娠3个月以内因病理原因流产的,享受1个月的生育津贴。生育津贴以女职工产前或计划生育手术前12个月的生育保险月平均缴费工资为计发基数。

  生育营养补贴与围产保健补贴,凡符合享受国家规定90天(含90天)以上产假的生育女职工可享受生育营养补贴300元、围产保健补贴700元。

  一次性生育补贴,原在单位参加生育保险的女职工失业后,在领取失业保险金期间,符合计划生育规定生育时,可享受一次性生育补贴:流产400元、顺产2400元、难产和多胞胎生育4000元;对参加生育保险的男职工,其配偶未列入生育保险范围,符合计划生育规定生育第一胎时,可享受50%的一次性生育补贴。

  生育津贴补偿到单位,参保女职工产假期间本人基本工资、奖金及福利费由单位照发。

  计划生育手术费,包括因计划生育需要,实施放置(取出)宫内节育器、流产术、引产术、皮埋术、绝育及复通手术所发生的费用,列入生育保险基金结付范围。


', '78', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2016-02-19', '系统管理员', null, null, '2016-02-19 11:57:49', '2016-02-19 11:57:49', '1'); +INSERT INTO `tb_article` VALUES ('3267', '249', 'mysql max_allowed_packet 设置过小导致记录写入失败', '

mysql根据配置文件会限制server接受的数据包大小。

有时候大的插入和更新会受max_allowed_packet 参数限制,导致写入或者更新失败。

查看目前配置

show VARIABLES like '%max_allowed_packet%';

显示的结果为:

+--------------------+---------+

| Variable_name      | Value   |

+--------------------+---------+

| max_allowed_packet | 1048576 |

+--------------------+---------+  

以上说明目前的配置是:1M

 

修改方法

1、修改配置文件

可以编辑my.cnf来修改(windows下my.ini),在[mysqld]段或者mysql的server配置段进行修改。

max_allowed_packet = 20M

如果找不到my.cnf可以通过

mysql --help | grep my.cnf

去寻找my.cnf文件。

linux下该文件在/etc/下。

2、在mysql命令行中修改

在mysql 命令行中运行

set global max_allowed_packet = 2*1024*1024*10

然后退出命令行,重启mysql服务,再进入。

show VARIABLES like '%max_allowed_packet%';

查看下max_allowed_packet是否编辑成功

 
 注意:该值设置过小将导致单个记录超过限制后写入数据库失败,且后续记录写入也将失败。


', '94', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2016-02-19', '系统管理员', null, null, '2016-02-19 12:56:49', '2016-02-19 12:56:49', '1'); +INSERT INTO `tb_article` VALUES ('3268', '249', 'chrome常用插件', '

草榴二维码:http://cli.im/

二维码解码:http://cli.im/deqr

jsonview:http://chrome-plugin.com/jsonview.crx

jsonview安装说明:http://www.bubuko.com/infodetail-700647.html

', '104', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2016-02-25', '系统管理员', null, null, '2016-02-25 16:39:05', '2016-02-25 16:39:05', '1'); +INSERT INTO `tb_article` VALUES ('3270', '249', '神秘的程序员们', '

本文转自:神秘的程序员们

\"\"

\"\"

\"\"

\"\"

\"\"

\"\"

\"\"

\"\"

\"\"

\"\"

\"\"

\"\"

\"\"

\"\"

\"\"

\"\"

\"\"

\"\"

\"\"

\"\"

\"\"

\"\"

\"\"

\"\"


\"\"


', '81', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2016-03-04', '系统管理员', null, null, '2016-03-04 09:35:04', '2016-03-04 09:35:04', '1'); +INSERT INTO `tb_article` VALUES ('3271', '249', '贴图库被网信办关闭 官方:解决需要时间', '

近日,深受站长喜爱的图床服务网站贴图库首页和服务器在部分地区无法访问。据悉,贴图库因被检测到非法内容,遭到国家网信办下令要求域名服务商易名中国在今天将域名clientHold(锁定)。

\"alt

而贴图库官方对此也表示吃惊,贴图库工作人员表示网站是被中央网信办直接下令关闭的,省、市和当地工信部门在此之前均“不知情”。

至于恢复时间,狸博窝·澄光自媒体从贴图库处得到的回复是:“七牛也被禁止解析过,淡定,需要时间解决。”

\"alt


', '71', '0', '11', '1', '1', null, '10', null, null, null, null, null, '10', '2016-03-03', '系统管理员', null, null, '2016-03-06 15:13:23', '2016-03-06 15:13:23', '1'); +INSERT INTO `tb_article` VALUES ('3282', '249', 'SyntaxHighlighter 长代码无法换行解决办法', '

由于我的博客主要是代码分享,很多贴的代码,都很长。很多时候我都是手动给他换行。

但是今天实在是受不了。从网上找个办法解决一下。

1、css修改:

在文件夹:\\ueditor\\third-party\\SyntaxHighlighter

在文件shCoreDefault.pack.css添加css:

.syntaxhighlighter {\r\n	width: 100% !important;\r\n	margin: .3em 0 .3em 0 !important;\r\n	position: relative !important;\r\n	overflow: auto !important;\r\n	background-color: #f5f5f5 !important;\r\n	border: 1px solid #ccc !important;\r\n	word-break: break-all;\r\n}

2、jquery代码:

$(function () {\r\n	    // Line wrap back\r\n	    var shLineWrap = function () {\r\n	        $('.syntaxhighlighter').each(function () {\r\n	            // Fetch\r\n	            var $sh = $(this),\r\n	                $gutter = $sh.find('td.gutter'),\r\n	                $code = $sh.find('td.code')\r\n	                ;\r\n	            // Cycle through lines\r\n	            $gutter.children('.line').each(function (i) {\r\n	                // Fetch\r\n	                var $gutterLine = $(this),\r\n	                    $codeLine = $code.find('.line:nth-child(' + (i + 1) + ')')\r\n	                    ;\r\n	                //alert($gutterLine);\r\n	                // Fetch height\r\n	                var height = $codeLine.height() || 0;\r\n	                if (!height) {\r\n	                    height = 'auto';\r\n	                }\r\n	                else {\r\n	                    height = height += 'px';\r\n	                    //alert(height);\r\n	                }\r\n	                // Copy height over\r\n	                $gutterLine.attr('style', 'height: ' + height + ' !important'); // fix by Edi, for JQuery 1.7+ under Firefox 15.0\r\n	                // console.debug($gutterLine.height(), height, $gutterLine.text(), $codeLine);\r\n	            });\r\n	        });\r\n	    };\r\n	    // Line wrap back when syntax highlighter has done it's stuff\r\n	    var shLineWrapWhenReady = function () {\r\n	        if ($('.syntaxhighlighter').length === 0) {\r\n	            setTimeout(shLineWrapWhenReady, 10);\r\n	        }\r\n	        else {\r\n	            shLineWrap();\r\n	        }\r\n	    };\r\n	    // Fire\r\n	    shLineWrapWhenReady();});

上面的代码就是属于长代码。大家看看是不是都换行了??

现在,行号的高度就能和代码的高度保持一致了。


', '105', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2016-04-18', '系统管理员', null, null, '2016-04-18 01:54:22', '2016-04-18 01:54:22', '1'); +INSERT INTO `tb_article` VALUES ('3283', '249', '各种oauth接入', '

QQ互联:http://connect.qq.com/

百度互联:http://developer.baidu.com/ms/oauth


', '59', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2016-04-18', '系统管理员', null, null, '2016-04-18 22:27:22', '2016-04-18 22:27:22', '1'); +INSERT INTO `tb_article` VALUES ('3284', '249', 'Markdown——让你专注写作', '

Markdown——让你专注写作


前些日子,写作的时候总会因为排版而耽误时间,甚至因为排版而把写作的专注力转移到了貌似相关的排版上。诚然,一个好的排版,会让读者有良好的体验,可是对于写作的人来说,这却会降低写作效率。

为了解决这个问题,我想到曾经我写过Wiki,那有没有一种似的标记语言用于平时的写作。度娘之,谷歌之,果真有神奇——MarkDown,一种轻量级的标记语言。且在社区内十分流行。


一、为什么


在一般写作时我们经常会遇到下面的问题:

1.难以专注于写作本身。

在写作的时候会浪费时间在程序本身上,有时突然的崩溃,让你暂停进度,有时写着写着就会被其花哨的功能吸引去部分精力。再者就是聊着天写作,写作不能专心。

2.徒劳精力于各种排版。

在使用编辑软件,如Word时,常常边写作边排版,经常纠结于怎么没这个字体,怎么行高不对了,等等。但是对于写作来说,你是在进行一种”创作“,你需要一种思维的连贯,而不是让你写一篇格式规范的论文。

3.无奈重复于版本跟踪。

在写作的过程中,为了便于修订,总有各种版本的文档,从V1.0到V20.0的无数...修订和审阅也非常麻烦。


二、是什么


简单来说Markdown 是一种能将便携文本输出为HTML的轻量级标记语言,其目的是“成为一种适用于网络的书写语言”,避免在写文档时一些排版上的问题。

优势

Markdown 的理念是,能让文档更容易读、写和随意改。HTML 是一种发布的格式,Markdown 是一种书写的格式。就这样,Markdown 的格式语法只涵盖纯文本可以涵盖的范围。

特点

  • 足够简单,5分钟掌握

  • 语法要素同写作一致

  • 修改方便

  • 转换格式丰富


三、语法



四、编辑工具


在线MarkDown编辑:

Win平台:

Linux平台:

当然在Win和Linux上,Vim 和 Emacs 都是神器级的编辑软件,当然支持

Mac平台:

MarkDown For Chrome插件

GreaseMonkey 脚本:

  • Markdown textarea,此脚本会在文本域的左下角新增一个 Markdown 按钮,输入各种包含 Markdown 的文字之后,点击它就可以把代码转化为为 HTML。


五、其他相关内容



六、我有话说


通过简单介绍了Markdown,相比朋友们都有所了解,这个语言简单的的确仅仅花几分钟的时间就能学会。且非常方便的用于日常的写作管理上。

最近的几篇博文,我都是使用这个方法完成的,简单方便,便利不言而喻。

但是因为Markdown仅仅提供了少部分的格式需求,虽然已经够用了,但还是和我以前用Wiki的那种标记语言比有点薄弱,为什么它能如此流行,就是因为它太简单,可是简单的东西往往也不会太复杂的表现内容。

因此,我搜索发现有Markdown的增强版本:MultiMarkdown、 Maruku

还有类似 的增强语言:Textile、RestructuredText等。

只是还没发现能在win上运行的支持 Multi的预览软件,这几天再查查有没在更丰富的改进版本。


', '321', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2016-04-19', '系统管理员', null, null, '2016-04-19 14:13:43', '2016-04-19 14:13:43', '1'); +INSERT INTO `tb_article` VALUES ('3285', '249', 'PostgreSQL获取主键和字段信息', '

postgreSQL获取主键

select \r\npg_constraint.conname as pk_name,\r\npg_attribute.attname as colname,\r\npg_type.typname as typename \r\nfrom \r\npg_constraint  \r\ninner join pg_class on pg_constraint.conrelid = pg_class.oid \r\ninner join pg_attribute on pg_attribute.attrelid = pg_class.oid  and  pg_attribute.attnum = pg_constraint.conkey[1]\r\ninner join pg_type on pg_type.oid = pg_attribute.atttypid\r\nwhere pg_class.relname = 'tableName'\r\nand pg_constraint.contype='p'\r\nand pg_table_is_visible(pg_class.oid)  --表在搜索中可见

postgreSQL获取字段信息

SELECT COL_DESCRIPTION(A.ATTRELID, A.ATTNUM) AS COMMENT,\r\n       FORMAT_TYPE(A.ATTTYPID, A.ATTTYPMOD) AS TYPE,\r\n       A.ATTNAME AS NAME,\r\n       A.ATTNOTNULL AS NOTNULL\r\n  FROM PG_CLASS AS C, PG_ATTRIBUTE AS A\r\n WHERE C.RELNAME = 'tableName'\r\n   AND A.ATTRELID = C.OID\r\n   AND A.ATTNUM > 0


', '50', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2016-04-19', '系统管理员', null, null, '2016-04-19 14:20:47', '2016-04-19 14:20:47', '1'); +INSERT INTO `tb_article` VALUES ('3286', '249', 'Sqlserver获取主键和字段信息', '

SQL操作相关脚本生成:

用SQL的管理器上可以右键任务还原,然后设置需要恢复的数据库名以及需要转移的文件名以及其它选项,然后点击上面的转出脚本,这样给出的脚本就是最标准的


查看所有表名

select name from sysobjects where type='U'

查询表的所有字段名

Select name from syscolumns Where ID=OBJECT_ID('表名') \r\nselect * from information_schema.tables \r\nselect * from information_schema.views \r\nselect * from information_schema.columns

sqlsever 主键

SELECT\r\n tab.name AS [TABLE_NAME],\r\n col.name AS [COLUMN_NAME],\r\n idx.name AS [CONSTRAINT_NAME]\r\nFROM\r\n sys.indexes idx\r\nJOIN sys.index_columns idxCol \r\n ON (idx.object_id = idxCol.object_id \r\n AND idx.index_id = idxCol.index_id)\r\nJOIN sys.tables tab\r\n ON (idx.object_id = tab.object_id)\r\nJOIN sys.columns col\r\n ON (idx.object_id = col.object_id\r\n AND idxCol.column_id = col.column_id);

sqlserver 外键表

select   A.name   as   外键关联的表,B.name   as   外键所在的表,C.name   as   外键名称 \r\nfrom   sysforeignkeys   \r\ninner   join   sysobjects   A   on   A.id=sysforeignkeys.fkeyid   \r\ninner   join   sysobjects   B   on   B.id=sysforeignkeys.rkeyid \r\ninner   join   sysobjects   C   on   C.id=sysforeignkeys.constid


', '63', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2016-04-19', '系统管理员', null, null, '2016-04-19 14:23:38', '2016-04-19 14:23:38', '1'); +INSERT INTO `tb_article` VALUES ('3287', '249', 'js数组的sort排序详解', '

sort()对数组排序,不开辟新的内存,对原有数组元素进行调换


简单数组简单排序

var arrSimple=new Array(1,8,7,6);\r\narrSimple.sort();\r\ndocument.writeln(arrSimple.join());

简单数组自定义排序

var arrSimple2=new Array(1,8,7,6);\r\narrSimple2.sort(function(a,b){\r\n	return b-a;\r\n});\r\ndocument.writeln(arrSimple2.join());

解释:a,b表示数组中的任意两个元素,若return > 0 b前a后;reutrn < 0 a前b后;a=b时存在浏览器兼容

简化一下:a-b输出从小到大排序,b-a输出从大到小排序。

简单对象List自定义属性排序

var objectList = new Array();\r\nfunction Persion(name,age){\r\n    this.name=name;\r\n    this.age=age;\r\n    }\r\nobjectList.push(new Persion('jack',20));\r\nobjectList.push(new Persion('tony',25));\r\nobjectList.push(new Persion('stone',26));\r\nobjectList.push(new Persion('mandy',23));\r\n//按年龄从小到大排序\r\nobjectList.sort(function(a,b){\r\n    return a.age-b.age;\r\n});\r\nfor(var i=0;i<objectList.length;i++){\r\n    document.writeln('<br />age:'+objectList[i].age+' name:'+objectList[i].name);\r\n}

简单对象List对可编辑属性的排序

var objectList2 = new Array();\r\nfunction WorkMate(name,age){\r\n    this.name=name;\r\n    var _age=age;\r\n    this.age=function(){\r\n	if(!arguments){\r\n	    _age=arguments[0];\r\n	} else {\r\n	    return _age;\r\n	}\r\n    }\r\n}\r\nobjectList2.push(new WorkMate('jack',20));\r\nobjectList2.push(new WorkMate('tony',25));\r\nobjectList2.push(new WorkMate('stone',26));\r\nobjectList2.push(new WorkMate('mandy',23));\r\n//按年龄从小到大排序\r\nobjectList2.sort(function(a,b){\r\n    return a.age()-b.age();\r\n});\r\nfor(var i=0;i<objectList2.length;i++){\r\n    document.writeln('<br />age:'+objectList2[i].age()+' name:'+objectList2[i].name);\r\n}


', '56', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2016-04-19', '系统管理员', null, null, '2016-04-19 15:02:12', '2016-04-19 15:02:12', '1'); +INSERT INTO `tb_article` VALUES ('3288', '249', 'jQuery.extend 函数详解', '

Jquery的扩展方法extend是我们在写插件的过程中常用的方法,该方法有一些重载原型,在此,我们一起去了解了解。

Jquery的扩展方法原型是:   

extend(dest,src1,src2,src3...);

它的含义是将src1,src2,src3...合并到dest中,返回值为合并后的dest,由此可以看出该方法合并后,是修改了dest的结构的。如果想要得到合并的结果却又不想修改dest的结构,可以如下使用:

var newSrc=$.extend({},src1,src2,src3...)//也就是将"{}"作为dest参数。

这样就可以将src1,src2,src3...进行合并,然后将合并结果返回给newSrc了。如下例:

var result=$.extend({},{name:"Tom",age:21},{name:"Jerry",sex:"Boy"})

那么合并后的结果

result={name:"Jerry",age:21,sex:"Boy"}

也就是说后面的参数如果和前面的参数存在相同的名称,那么后面的会覆盖前面的参数值。


省略dest参数

上述的extend方法原型中的dest参数是可以省略的,如果省略了,则该方法就只能有一个src参数,而且是将该src合并到调用extend方法的对象中去,如:

1、$.extend(src)

该方法就是将src合并到jquery的全局对象中去,如:

 $.extend({\r\n  hello:function(){alert('hello');}\r\n  });

就是将hello方法合并到jquery的全局对象中。

2、$.fn.extend(src)

该方法将src合并到jquery的实例对象中去,如:

 $.fn.extend({\r\n  hello:function(){alert('hello');}\r\n });

就是将hello方法合并到jquery的实例对象中。

下面例举几个常用的扩展实例:

$.extend({net:{}});

这是在jquery全局对象中扩展一个net命名空间。

$.extend($.net,{\r\n   hello:function(){alert('hello');}\r\n})

这是将hello方法扩展到之前扩展的Jquery的net命名空间中去。


Jquery的extend方法还有一个重载原型  

extend(boolean,dest,src1,src2,src3...)

第一个参数boolean代表是否进行深度拷贝,其余参数和前面介绍的一致,什么叫深层拷贝,我们看一个例子:

var result=$.extend( true,  {},  \r\n    { name: "John", location: {city: "Boston",county:"USA"} },  \r\n    { last: "Resig", location: {state: "MA",county:"China"} } );

我们可以看出src1中嵌套子对象location:{city:"Boston"},src2中也嵌套子对象location:{state:"MA"},第一个深度拷贝参数为true,那么合并后的结果就是: 

result={name:"John",last:"Resig",\r\n        location:{city:"Boston",state:"MA",county:"China"}}

 也就是说它会将src中的嵌套子对象也进行合并,而如果第一个参数boolean为false,我们看看合并的结果是什么,如下:

var result=$.extend( false, {},  \r\n{ name: "John", location:{city: "Boston",county:"USA"} },  \r\n{ last: "Resig", location: {state: "MA",county:"China"} } \r\n);

那么合并后的结果就是:

result={name:"John",last:"Resig",location:{state:"MA",county:"China"}}

以上就是$.extend()在项目中经常会使用到的一些细节。


', '62', '0', '11', '1', '1', '2', '10', null, null, null, null, null, '10', '2016-04-20', '系统管理员', null, null, '2016-04-20 14:25:12', '2016-04-20 14:25:12', '1'); +INSERT INTO `tb_article` VALUES ('4230', '253', '个人博客jflyfox', '

这是一个简单不的不能再简单的Blog软件,本着提高自己,帮助新人的态度。刚刚开始做,还望大家多多包涵。

Jflyfox采用了简洁强大的JFinal作为web框架,模板引擎用的是beelt,数据库用mysql,前端bootstrap框架。

源码地址:http://git.oschina.net/flyfox/jflyfox

运行效果:http://jflyfox.oschina.mopaas.com/

首页效果图如下:

后台登陆:http://jflyfox.oschina.mopaas.com/admin

账号密码:admin/admin123,test/123456

后台页面页面效果图如下:

', '5', '0', '11', '1', '1', '2', '9', null, 'jflyfox/project/article_image/20160617_164916_643251.jpg', null, null, null, '10', '2016-06-17', '系统管理员', null, null, '2016-06-17 16:49:16', '2016-06-17 16:49:16', '1'); +INSERT INTO `tb_article` VALUES ('4231', '253', '内容管理平台jfinal+beetl 开发的jfinal cms', '

jfinal cms,采用了简洁强大的JFinal作为web框架,模板引擎用的是beetl,数据库用mysql,前端bootstrap框架。 支持多站点、oauth2认证、帐号注册、密码加密、评论及回复,消息提示,网站访问量统计,文章评论数和浏览量统计,回复管理,支持权限管理。

后台模块包含:栏目管理,栏目公告,栏目滚动图片,文章管理,回复管理,意见反馈,我的相册,相册管理,图片管理,专辑管理、视频管理、缓存更新,友情链接,访问统计,联系人管理,模板管理,组织机构管理,用户管理,角色管理,菜单管理,数据字典管理,站点管理。

jfinal cms交流群:568909653

源码地址:http://git.oschina.net/flyfox/jfinal_cms

默认模板运行效果:http://mtg.jflyfox.com/

官网模板运行效果:http://website.jflyfox.com/

相册模板运行效果:http://photo.jflyfox.com/

视频模板运行效果:http://video.jflyfox.com/

登陆页面:管理员登陆账号密码:admin/admin123

欢迎页:http://www.jflyfox.com

模板功能:通过配置config.properties中ATTR.PATH_PC进行修改,demo中的数据库数据需要对应上。

代码生成:通过本人AutoCreate项目可实现代码自动生成功能;新增模板,创建好表以及注释,增删改查排序等功能一键搞定。模板可根据自己项目定制完善。

前台默认模板:

前台官网模板:

前台相册模板:

\"\"

前台视频模板:

\"\"

后端模板:

\"\"

\"\"

支持在线编辑模板:

\"\"


', '17', '0', '11', '1', '1', '2', '9', null, 'jflyfox/project/article_image/20160621_122708_874079.png', null, null, null, '10', '2016-06-17', '系统管理员', null, null, '2016-06-17 17:01:42', '2016-06-17 17:01:42', '1'); +INSERT INTO `tb_article` VALUES ('4232', '253', '财务管理软件 jfinal money', '

这是一个java开发的财务管理软件,本着帮助新人以及为学习新技术的态度。

JFinal-Money采用了简洁强大的JFinal作为web框架,前台使用beetl模板,数据库为mysql。

模板引擎用:Beetl

数据库:mysql

前端框架:bootstrap3,移动端Jquery Mobile

运行效果:http://www.jflyfox.com/jmoney

源码地址:http://git.oschina.net/flyfox/jmoney

首页效果图如下:

\"\"

部署后默认账号密码:admin/admin123


', '3', '0', '11', '1', '1', '2', '10', null, null, '/jflyfox/ueditor/image/20160617/1466154234042051193.png', null, null, '10', '2016-06-17', '系统管理员', null, null, '2016-06-17 17:02:52', '2016-06-17 17:02:52', '1'); +INSERT INTO `tb_article` VALUES ('4233', '253', 'MP3音乐播放器 FFPlayer', '

FFPlayer 是一个通过 JavaFX 实现的MP3音乐播放器。

功能列表如下

  1. 支持播放、暂停、上一首、下一首,时间轨,播放模式,音量调节;

  2. 播放列表暂时只支持拖拽添加,右键可以删除列表音乐;

  3. 歌词展示通过网络获取,自动展示,但是由于许多MP3不是标准格式无法获取歌曲信息的会导致下载歌词失败。

源码地址:http://git.oschina.net/flyfox/FFPlayer

界面如下图:

\"\"


', '3', '0', '11', '1', '1', '2', '10', null, null, '/jflyfox/ueditor/image/20160617/1466154303364028114.jpg', null, null, '10', '2016-06-17', '系统管理员', null, null, '2016-06-17 17:04:52', '2016-06-17 17:04:52', '1'); +INSERT INTO `tb_article` VALUES ('4234', '253', '代码自动生成器 AutoCreate', '

autocreate 是 数据库链接采用Jfinal ActiveRecordPlugin,模板配置采用beetl,实现根据模板自动生成项目代码。

可以根据自己项目代码结构,定制属于自己的模板,甚至可以通过备注配置,实现select,radio,date等组件生成;模板配置完成,再也不用写那些重复的代码了。

  • 默认模板目录:/autopath/template/project/

  • 自带三套模板beetl(生成beetl文件)、jsp(生成jsp文件)、jflyfox(生成本人jflyfox个人博客项目文件)

  • 默认自动生成输出目录:/autopath/output/

  • 启动文件:com.flyfox.client.AutoCreateClient

  • 生成表需要有表注释和字段注释。(写注释也是个好习惯哦)

配置说明:

  • src/main/java/conf/db.properties 配置链接的数据库信息

  • src/main/java/conf/template.properties 配置使用模板,生成路径和生成那些表

  • template.selected参数 制定下面已经存在的模板key

  • template.tables参数 设定生成那些表;不填和all会生成数据库所有表;多个表明用逗号分隔

  • src/main/java/conf/config.properties 配置beetl模板参数

示例说明:

本人的博客http://www.oschina.net/p/jflyfox和内容管理http://www.oschina.net/p/mtgxxw项目,都是使用的这个代码生成器。

1.数据库表如下:

\"\"

2.修改配置

首先,配置数据库信息db.properties

然后,配置表名和模板template.properties

#选择模板路径
template.selected=template.path.jflyfox
#all或者不填,为生成全部;多个表已逗号分隔
template.tables=sys_dict,sys_dict_detail

3.运行AutoCreateClient文件,运行日志如下

\"\"

4.然后,会在autopath/output目录下生产对应的文件:

\"\"

5.列表代码片段如下:

\"\"


', '2', '0', '11', '1', '1', '2', '10', null, 'jflyfox/project/article_image/20160621_123633_738200.jpg', null, null, null, '10', '2016-06-17', '系统管理员', null, null, '2016-06-17 17:05:32', '2016-06-17 17:05:32', '1'); +INSERT INTO `tb_article` VALUES ('4235', '253', '贪吃蛇游戏 JavaFX Snake', '

JavaFX Snake是一个通过JavaFX实现的贪吃蛇游戏,游戏比较简单就不用再介绍了。

源码地址:http://git.oschina.net/flyfox/GameSnake

界面比较简陋凑合看吧,如下图:

\"\"


', '2', '0', '11', '1', '1', '2', '10', null, null, '/jflyfox/ueditor/image/20160617/1466154494359099247.jpg', null, null, '10', '2016-06-17', '系统管理员', null, null, '2016-06-17 17:07:13', '2016-06-17 17:07:13', '1'); +INSERT INTO `tb_article` VALUES ('4236', '253', 'JavaFX游戏 打砖块', '

今天学习了一下JavaFX游戏部分

参考博客:http://blog.csdn.net/ml3947

本人源码地址:http://git.oschina.net/flyfox/GameBrickBlock

里面有两种效果实现,一种是参考博客的Pane实现,一种是自己学习修改的Canvas实现。

效果图演示:


', '2', '0', '11', '1', '1', '2', '10', null, null, '/jflyfox/ueditor/image/20160617/1466154554078056899.jpg', null, null, '10', '2016-06-17', '系统管理员', null, null, '2016-06-17 17:08:57', '2016-06-17 17:08:57', '1'); +INSERT INTO `tb_article` VALUES ('4237', '253', '通过mina进行文件传输工具', '

FileSocket

通过mina进行文件传输

传入目录readfile

接收目录writefile

日志目录logs

配置文件config/config.properties


发送流程

1. 定时读取发送路径文件

2. 将文件名称加入.tmp后缀,进行流读取发送

3. 发送后将文件放入备份路径(backup)

4. 服务器端返回成功,放入成功路径(finished);返回失败,放入失败路径(failed)。


注:由于是个人项目未进行开源


', '2', '0', '11', '1', '1', '2', '10', null, 'jflyfox/project/article_image/20160621_123715_121257.jpg', null, null, null, '10', '2016-06-17', '系统管理员', null, null, '2016-06-17 17:10:16', '2016-06-17 17:10:16', '1'); +INSERT INTO `tb_article` VALUES ('4238', '253', '财务管理 Android项目', '

DataAnalysis

主要是记录个人收入、支出,输出月报表,年报表。


界面如下:





注:由于是个人项目未进行开源


', '2', '0', '11', '1', '1', '2', '10', null, null, 'http://ww3.sinaimg.cn/mw690/3fc7e281jw1eqeblvgkroj20e80e8aby.jpg', null, null, '10', '2016-06-17', '系统管理员', null, null, '2016-06-17 17:11:15', '2016-06-17 17:11:15', '1'); +INSERT INTO `tb_article` VALUES ('4239', '253', '微信抽奖lottery', '

微信九宫格抽奖


主要实现微信页面抽奖,积分展示,奖品及中奖奖品展示,中奖名单等;后台实现抽奖概率和优先级设置,奖品配置及个数统计,中奖名单,人员信息等。


', '3', '0', '11', '1', '1', '2', '10', null, 'jflyfox/project/article_image/20160621_122855_293772.jpg', null, null, null, '10', '2016-06-17', '系统管理员', null, null, '2016-06-17 17:12:14', '2016-06-17 17:12:14', '1'); +INSERT INTO `tb_article` VALUES ('4240', '253', '基础库封装jflyfox_base', '

源码地址:http://git.oschina.net/flyfox/jflyfox_base

flyfox基础库(jflyfox_base)

作者:FLY的狐狸

功能:基础库。实现String、Number、Date、加密算法,序列化、缓存管理等封装。


', '1', '0', '11', '1', '1', '2', '10', null, 'jflyfox/project/article_image/20160621_123504_752718.jpg', null, null, null, '10', '2016-06-17', '系统管理员', null, null, '2016-06-17 17:12:54', '2016-06-17 17:12:54', '1'); +INSERT INTO `tb_article` VALUES ('4241', '253', '基础库Jfinal封装jflyfox_jfinal', '

源码地址:http://git.oschina.net/flyfox/jflyfox_jfinal

jflyfox_jfinal是对Jfinal和beetl进行封装。

1. 包含controller,model,form,service基础类封装。

2. 对分页进行了后台和前台的实现。

3. 加入了自动扫描model和controller以及注解支持。

4. 实现了ueditor后台Controller代码。

5. 加入了页面增删改查代码自动生成功能,可通过beetl模板进行配置。

6. 实现了SessionAttrInterceptor、页面和手机设备判断拦截器以及BasePathHandler。


', '1', '0', '11', '1', '1', '2', '10', null, 'jflyfox/project/article_image/20160621_123454_938123.png', null, null, null, '10', '2016-06-17', '系统管理员', null, null, '2016-06-17 17:13:32', '2016-06-17 17:13:32', '1'); +INSERT INTO `tb_article` VALUES ('4242', '253', '其他项目', '

其他项目

一、人员信息记录

主要是记录人员信息,可定制化人员信息字段,可进行excel导入导出的系统。


二、工资管理

主要是人员信息、部门管理,以及工资导入、导出。本来还想加入工资编辑和计算,但是由于各种原因放弃了。


三、website_jfinal类似于个人博客

这个是比较早的项目通过jfinal和jsp实现,通过后台配置实现网站首页更新。

和现在的blog差不多就是代码和页面都比较老了。

源码地址:http://git.oschina.net/flyfox/website_jfinal


四、JavaFX

有一个JavaFX工具类项目和处理文件名称个性化批量修改工具以及学习JavaFX的大量DEMO。

JavaFX Demo地址:http://git.oschina.net/flyfox/JavaFXDemo


五、仓储管理:jfinal+jsp

(1)管理员登录模块 

包括对管理员的用户名密码进行匹配性验证,以及登录验证码,防止暴力破解登录。 

(2)物资管理模块 

能够对新物资进行建档,管理员可以查看所有已建档物资信息并可以修改或删除。 

(3)入库管理模块 

管理员可以进行入库登记,可以修改或删除入库记录,也可以按照时间段进行入库情况统计。 

(4)出库管理模块 

管理员可以查看所有出库信息,可以进行出库登记,可以修改或删除出库记录。可以按时间段进行统计查询。 

(5)盘存管理模块 

管理员可以查看所有物资的库存情况。可以进行商品查询,可以按名称查询单一商品,也可以按种类查询某一种类物资。

(6)系统管理模块 

包括供货单位管理、收货单位管理、物资种类管理、经手人管理等。

(7)用户管理模块  

主要提供用户修改密码的功能。


六、低值易耗品信息管理:jfinal+jsp

类似与仓储管理

(1)用户管理

1)登录;2)注册;3)修改员工个人信息;4)修改员工密码;5)管理员工

(2)低值易耗品信息管理

1)分类:低值易耗品分类表中添加、删除、修改、查看分类。

2)信息增加:员工或管理员登陆后可以将采购到的低值易耗品信息添加到信息表中,并生成凭单。

(3)凭单管理

1)凭单查看,编辑;2)凭单打印:

(4)报表管理

1)报表生成;2)报表打印


七、任务管理:jfinal+jsp

(1)系统用户登录及注册

1)角色管理; 2)用户注册;3)信息维护

(2)公告模块

1)公告展示进行权限划分;2)公告编辑,实现公告发布

(3)任务管理

1)核心模块,任务信息维护;2)实现流转-》处理-》结束流程;3)实现任务权限管理,按照部门和用户角色划分


八、文献管理:jfinal+jsp

实现文献信息编辑,文献上传、以及根据文献文本自动解析标题、作者、摘要、内容等信息。


九、仓库管理:springmvc3+hibernate4

类似仓储管理,修改实现技术


十、企业库存管理:jfinal+jsp

类似仓储管理,实现用户模块,库存模块,退货模块,订货模块以及报表管理


', '6', '0', '11', '1', '1', '2', '99', null, null, null, null, null, '10', '2016-06-16', '系统管理员', null, null, '2016-06-17 17:14:11', '2016-06-17 17:14:11', '1'); +INSERT INTO `tb_article` VALUES ('4243', '253', '短信接口开发', '

熟悉三大运营商接口开发:CMPP3.0,SMGP,SGIP1.2。

直接接入运行商,可以保证接口稳定性,提交速度基本受限于运营商限速。并支持发送数据数据历史查询、黑白名单、流控、发送量限制等功能。

第三方短信接口开发:阿里大鱼、haoservice、创蓝等接口。

', '2', '0', '11', '1', '1', '2', '11', null, 'jflyfox/project/article_image/20160621_123305_245463.jpg', null, null, null, '10', '2016-06-21', '系统管理员', null, null, '2016-06-21 12:29:26', '2016-06-21 12:29:26', '1'); +INSERT INTO `tb_article` VALUES ('4244', '257', 'jfinal cms介绍', '

jfinal cms,采用了简洁强大的JFinal作为web框架,模板引擎用的是beetl,数据库用mysql,前端bootstrap、flat ui等框架。 支持多站点、oauth2认证、帐号注册、密码加密、评论及回复,消息提示,网站访问量统计,文章评论数和浏览量统计,回复管理,权限管理等。

后台模块包含:栏目管理,栏目公告,栏目滚动图片,文章管理,回复管理,意见反馈,我的相册,相册管理,图片管理,专辑管理、视频管理、缓存更新,友情链接,访问统计,联系人管理,模板管理,组织机构管理,用户管理,角色管理,菜单管理,数据字典管理,站点管理。


', '4', '1', '11', '1', '1', '2', '20', null, null, null, null, null, '10', '2017-01-21', '系统管理员', null, null, '2017-01-21 23:36:31', '2017-01-21 23:36:31', '1'); +INSERT INTO `tb_article` VALUES ('4245', '258', 'jfinal介绍', '

  JFinal 是基于 Java 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。在拥有Java语言所有优势的同时再拥有ruby、python、php等动态语言的开发效率!为您节约更多时间,去陪恋人、家人和朋友 :)

JFinal有如下主要特点:

  • MVC架构,设计精巧,使用简单

  • 遵循COC原则,零配置,无xml

  • 独创Db + Record模式,灵活便利

  • ActiveRecord支持,使数据库开发极致快速

  • 自动加载修改后的java文件,开发过程中无需重启web server

  • AOP支持,拦截器配置灵活,功能强大

  • Plugin体系结构,扩展性强

  • 多视图支持,支持FreeMarker、JSP、Velocity

  • 强大的Validator后端校验功能

    功能齐全,拥有struts2的绝大部分功能

  • 体积小仅339K,且无第三方依赖


', '0', '0', '11', '1', '1', '2', '20', null, null, null, null, null, '10', '2017-01-21', '系统管理员', null, null, '2017-01-21 23:38:50', '2017-01-21 23:38:50', '1'); +INSERT INTO `tb_article` VALUES ('4246', '259', 'beetl介绍', '

Beetl目前版本是2.7,大小720K,相对于其他java模板引擎,具有功能齐全,语法直观,性能超高,开发和维护模板有很好的体验。是新一代的模板引擎。总得来说,它的特性如下:

 

  • 功能完备:同主流的java模板引擎相比,Beetl具有绝大多数功能。适用于各种应用场景,从对响应速度有很高要求的大网站到功能繁多的CMS管理系统都适合。Beetl本身还具有很多独特功能来完成模板编写和维护,这是其他模板引擎所不具有的。

  • 非常简单:类似Javascript语法和习俗,只要半小时就能通过半学半猜完全掌握用法。拒绝其他模板引擎那种非人性化的语法和习俗。

  • 超高的性能:Beetl 远超过主流java模板引擎性能,如5-6倍于freemarker,2倍于传统jsp技术。而且消耗较低的CPU

  • 易于整合:Beetl能很容易的与各种web框架整合,如Spring MVC,JFinal,Struts,Nutz,Jodd,Servlet等。

  • 支持模板单独开发和测试,即在MVC架构中,即使没有M和C部分,也能开发和测试模板。

  • 扩展和个性化:Beetl支持自定义方法,格式化函数,虚拟属性,标签,和HTML标签. 同时Beetl也支持自定义占位符和控制语句起始符号也支持使用者完全可以打造适合自己的工具包.


', '1', '0', '11', '1', '1', '2', '20', null, null, null, null, null, '10', '2017-01-21', '系统管理员', null, null, '2017-01-21 23:39:36', '2017-01-21 23:39:36', '1'); +INSERT INTO `tb_article` VALUES ('4247', '260', 'mysql数据库介绍', '

MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQL AB公司。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。

MySQL的特性

  • 使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性。

  • 支持AIX、BSDi、FreeBSD、HP-UX、Linux、Mac OS、Novell Netware、NetBSD、OpenBSD、OS/2 Wrap、Solaris、SunOS、Windows等多种操作系统。

  • 为多种编程语言提供了API。这些编程语言包括C、C++、C#、Delphi、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等。

  • 支持多线程,充分利用CPU资源,支持多用户。

  • 优化的SQL查询算法,有效地提高查询速度。

  • 既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中。

  • 提供多语言支持,常见的编码如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名。

  • 提供TCP/IP、ODBC和JDBC等多种数据库连接途径。

  • 提供用于管理、检查、优化数据库操作的管理工具。

  • 可以处理拥有上千万条记录的大型数据库。

中文 MySQL 文档:http://tool.oschina.net/apidocs/apidoc?api=mysql-5.1-zh

英文 MySQL 文档:http://tool.oschina.net/apidocs/apidoc?api=mysql-5.5-en


', '1', '0', '11', '1', '1', '2', '20', null, null, null, null, null, '10', '2017-01-21', '系统管理员', null, null, '2017-01-21 23:43:22', '2017-01-21 23:42:41', '1'); +INSERT INTO `tb_article` VALUES ('4248', '262', '博客介绍', '

    博客,仅音译,英文名为Blogger,为Web Log的混成词。它的正式名称为网络日记;又音译为部落格或部落阁等,是一种通常由个人管理、不定期张贴新的文章的网站。博客上的文章通常根据张贴时间,以倒序方式由新到旧排列。许多博客专注在特定的课题上提供评论或新闻,其他则被作为比较个人的日记。一个典型的博客结合了文字、图像、其他博客或网站的链接及其它与主题相关的媒体,能够让读者以互动的方式留下意见,是许多博客的重要要素。大部分的博客内容以文字为主,仍有一些博客专注在艺术、摄影、视频、音乐、播客等各种主题。博客是社会媒体网络的一部分。比较著名的有新浪、网易等博客。

    本人博客地址:blog.jflyfox.com

', '1', '0', '11', '1', '1', '2', '20', null, null, null, null, null, '10', '2017-01-22', '系统管理员', null, null, '2017-01-22 00:01:13', '2017-01-22 00:01:13', '1'); +INSERT INTO `tb_article` VALUES ('4249', '263', '资讯站介绍', '

    资讯是用户因为及时地获得它并利用它而能够在相对短的时间内给自己带来价值的信息,资讯有时效性和地域性,它必须被消费者利用。并且“提供-使用(阅读或利用)-反馈”之间能够形成一个长期稳定的CS链,具有这些特点才可以称之为资讯。 从严格的意义上讲,新闻是一种资讯。资讯是一种信息,涵盖的不只是新闻,还可以包括其他媒介。如亲临专家讲座等等;新闻的目标受众相对宽泛,没有严格的受众划分,学语言的人可以去阅读科技新闻。学技术的也完全可以去阅读文学新闻,而资讯的受众的目标性相对比较强烈。

    本站资讯网站地址:mtg.jflyfox.com

', '0', '0', '11', '1', '1', '2', '20', null, null, null, null, null, '10', '2017-01-22', '系统管理员', null, null, '2017-01-22 00:02:47', '2017-01-22 00:02:47', '1'); +INSERT INTO `tb_article` VALUES ('4250', '264', '论坛介绍', '

    论坛(forum) ,简单理解为发帖回帖讨论的平台。是Internet上的一种电子信息服务系统。它提供一块公共电子白板,每个用户都可以在上面书写,可发布信息或提出看法。

    它是一种交互性强,内容丰富而及时的Internet电子信息服务系统,用户在BBS站点上可以获得各种信息服务、发布信息、进行讨论、聊天等等。

    BBS的英文全称是Bulletin Board System。翻译为中文就是“电子布告栏系统”。BBS最早是用来公布股市价格等类信息的,当时BBS连文件传输的功能都没有,而且只能在苹果机上运行。早期的BBS与一般街头和校园内的公告板性质相同,只不过是通过来传播或获得消息而已。

    本站就是论坛,地址:bbs.jflyfox.com

', '0', '0', '11', '1', '1', '2', '20', null, null, null, null, null, '10', '2017-01-22', '系统管理员', null, null, '2017-01-22 00:04:44', '2017-01-22 00:04:44', '1'); +INSERT INTO `tb_article` VALUES ('4251', '265', '网站介绍', '

    网站(Website)是指在因特网上根据一定的规则,使用HTML(标准通用标记语言下的一个应用)等工具制作的用于展示特定内容相关网页的集合。简单地说,网站是一种沟通工具,人们可以通过网站来发布自己想要公开的资讯,或者利用网站来提供相关的网络服务。人们可以通过网页浏览器来访问网站,获取自己需要的资讯或者享受网络服务。

    本站点网址示例地址:website.jflyfox.com

', '0', '0', '11', '1', '1', '2', '20', null, null, null, null, null, '10', '2017-01-22', '系统管理员', null, null, '2017-01-22 00:06:13', '2017-01-22 00:06:13', '1'); +INSERT INTO `tb_article` VALUES ('4252', '256', '论坛使用须知', '

一、用户可通过以下方式注册成为社区的正式用户。成为论坛正式用户即获得本社区规定用户所应享有的一切权限;未经认证仅享有本社区规定的部分会员权限。社区有权对会员的权限设计进行变更。

二、如发现用户帐号中含有不雅文字或不恰当名称的,本社区保留取消其用户资格的权利,相应后果由用户自行承担。

(1)请勿以党和国家领导人或其他社会名人的真实姓名、字号、艺名、笔名注册;

(2)请勿以国家机构或其他机构的名称注册;

(3)请勿注册不文明、不健康名字,或包含歧视、侮辱、猥亵类词语的帐号;

(4)请勿注册易产生歧义、引起他人误解或其它不符合法律规定的帐号。

三、如发现用户的头像、简介/心情等个人信息中包含违法和不良信息的,本社区保留取消其用户资格的权利。

四、用户帐号的所有权归本社区,用户仅享有使用权。3个月未使用的用户帐号,本社区保留收回的权利。

五、用户有义务保证密码和帐号的安全,用户利用该密码和帐号所进行的一切活动引起的任何损失或损害,由用户自行承担全部责任,本社区不承担任何责任。如用户发现帐号遭到未授权的使用或发生其他任何安全问题,应立即修改帐号密码并妥善保管,如有必要,请通知本社区。因黑客行为或用户的保管疏忽导致帐号非法使用,本社区不承担任何责任。


', '5', '1', '11', '1', '1', '1', '9', null, null, null, null, null, '10', '2017-01-22', '系统管理员', null, null, '2017-01-22 00:14:05', '2017-01-22 00:14:05', '1'); + +-- ---------------------------- +-- Table structure for tb_articlelike +-- ---------------------------- +DROP TABLE IF EXISTS `tb_articlelike`; +CREATE TABLE `tb_articlelike` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'id', + `article_id` int(11) DEFAULT NULL COMMENT '文章ID', + `create_time` varchar(64) DEFAULT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者', + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='喜欢的文章'; + +-- ---------------------------- +-- Records of tb_articlelike +-- ---------------------------- + +-- ---------------------------- +-- Table structure for tb_comment +-- ---------------------------- +DROP TABLE IF EXISTS `tb_comment`; +CREATE TABLE `tb_comment` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', + `fatherId` int(11) DEFAULT NULL COMMENT '父评论ID', + `article_id` int(11) DEFAULT NULL COMMENT '文章ID', + `content` text NOT NULL COMMENT '内容', + `status` int(11) DEFAULT '11' COMMENT '状态//select/11,评论未读,12,评论已读,21,回复未读,22,回复已读', + `reply_userid` int(11) DEFAULT NULL, + `create_time` varchar(64) DEFAULT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者 评论者', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COMMENT='评论'; + +-- ---------------------------- +-- Records of tb_comment +-- ---------------------------- +INSERT INTO `tb_comment` VALUES ('2', '0', '3001', '123123', '12', '1', '2016-04-19 21:38:02', '1'); +INSERT INTO `tb_comment` VALUES ('3', '0', '4244', '

', '12', '1', '2017-01-21 23:37:03', '1'); +INSERT INTO `tb_comment` VALUES ('4', '0', '4252', '

珍爱生命,文明上网

', '12', '1', '2017-01-22 00:19:49', '1'); + +-- ---------------------------- +-- Table structure for tb_contact +-- ---------------------------- +DROP TABLE IF EXISTS `tb_contact`; +CREATE TABLE `tb_contact` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', + `name` varchar(256) NOT NULL COMMENT '姓名', + `phone` varchar(32) DEFAULT NULL COMMENT '手机号', + `email` varchar(32) DEFAULT NULL COMMENT 'Email', + `addr` varchar(256) DEFAULT NULL COMMENT '地址', + `birthday` varchar(32) DEFAULT NULL COMMENT '生日', + `remark` varchar(256) DEFAULT NULL COMMENT '说明', + `create_time` varchar(64) DEFAULT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COMMENT='联系人'; + +-- ---------------------------- +-- Records of tb_contact +-- ---------------------------- +INSERT INTO `tb_contact` VALUES ('1', '张三', '15812345678', 'zhangsan@sina.com', '北京市', '2015-04-28', null, '2015-01-27', '1'); + +-- ---------------------------- +-- Table structure for tb_error +-- ---------------------------- +DROP TABLE IF EXISTS `tb_error`; +CREATE TABLE `tb_error` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', + `type` int(11) DEFAULT NULL COMMENT '类型', + `ip` varchar(64) NOT NULL COMMENT 'IP地址', + `userid` int(11) DEFAULT NULL COMMENT '用户ID', + `content` text COMMENT '描述', + `remark` text COMMENT '备注', + `create_time` varchar(64) DEFAULT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COMMENT='异常数据'; + +-- ---------------------------- +-- Records of tb_error +-- ---------------------------- +INSERT INTO `tb_error` VALUES ('1', '1', '127.0.0.1', '2', '上传数量:2015062100(11)-20150621(11)', null, '2015-06-21 00:24:30', '2'); +INSERT INTO `tb_error` VALUES ('2', '1', '127.0.0.1', '2', '上传数量:2015062100(11)-20150621(11)', null, '2015-06-21 00:26:32', '2'); + +-- ---------------------------- +-- Table structure for tb_folder +-- ---------------------------- +DROP TABLE IF EXISTS `tb_folder`; +CREATE TABLE `tb_folder` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '目录id', + `parent_id` int(11) DEFAULT '0' COMMENT '父ID', + `name` varchar(100) NOT NULL DEFAULT '' COMMENT '中文名', + `key` varchar(100) DEFAULT '' COMMENT 'URL KEY', + `path` varchar(200) DEFAULT '' COMMENT '模板路径', + `content` text COMMENT '描述', + `sort` int(11) DEFAULT '1' COMMENT '排序', + `status` int(11) DEFAULT '1' COMMENT '状态//radio/2,隐藏,1,显示', + `type` int(11) DEFAULT '1' COMMENT '类型 1 普通目录 2 a标签 3 a标签_blank 4 直接加载url信息', + `jump_url` varchar(200) DEFAULT NULL COMMENT '跳转地址', + `material_type` int(11) DEFAULT NULL COMMENT '素材类型', + `site_id` int(11) DEFAULT NULL COMMENT '站点ID', + `seo_title` varchar(200) DEFAULT NULL COMMENT 'SEO title', + `seo_keywords` varchar(200) DEFAULT NULL COMMENT 'SEO keywords', + `seo_description` varchar(200) DEFAULT NULL COMMENT 'SEO description', + `update_time` varchar(64) DEFAULT NULL COMMENT '更新时间', + `update_id` int(11) DEFAULT '0' COMMENT '更新人', + `create_time` varchar(64) DEFAULT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=268 DEFAULT CHARSET=utf8 COMMENT='目录'; + +-- ---------------------------- +-- Records of tb_folder +-- ---------------------------- +INSERT INTO `tb_folder` VALUES ('1', '0', '首页', 'home', '', '门头沟信息网', '1', '1', '1', null, '102', '2', null, null, null, '2015-01-28 16:54:03', '0', '2015-01-30 13:24:58', '1'); +INSERT INTO `tb_folder` VALUES ('2', '0', '新闻', 'news', null, null, '2', '1', '1', null, '102', '2', null, null, null, '2015-05-24 15:46:40', '0', '2015-01-30 13:24:58', '1'); +INSERT INTO `tb_folder` VALUES ('3', '0', '美食', 'food', '', null, '3', '1', '1', null, '102', '2', null, null, null, '2015-05-24 15:46:54', '0', '2015-01-30 13:24:58', '1'); +INSERT INTO `tb_folder` VALUES ('4', '0', '旅游', 'travel', '', null, '5', '1', '1', null, '102', '2', null, null, null, '2015-05-24 15:47:43', '0', '2015-05-24 15:47:43', '1'); +INSERT INTO `tb_folder` VALUES ('5', '0', '教育', 'education', '', null, '7', '1', '1', null, '102', '2', null, null, null, '2015-05-24 15:47:55', '0', '2015-05-24 15:47:55', '1'); +INSERT INTO `tb_folder` VALUES ('6', '103', '后台管理', null, null, null, '90', '2', '3', 'admin', '102', '2', null, null, null, '2015-05-24 15:47:32', '0', '2015-01-30 13:24:58', '1'); +INSERT INTO `tb_folder` VALUES ('7', '103', '标签查询', null, null, null, '80', '1', '2', 'front/tags/all', '102', '2', null, null, null, '2015-05-27 23:34:38', '0', '2015-05-18 09:12:57', '1'); +INSERT INTO `tb_folder` VALUES ('10', '103', '公园', 'park', null, null, '51', '1', '1', null, '102', '2', null, null, null, '2015-05-24 15:49:35', '0', '2015-05-24 15:49:11', '1'); +INSERT INTO `tb_folder` VALUES ('13', '0', '首页图片', 'topPic', '', null, '101', '2', '1', null, '102', '2', null, null, null, '2015-05-24 16:33:06', '0', '2015-05-24 16:33:06', '1'); +INSERT INTO `tb_folder` VALUES ('90', '103', '关于我们', 'about', null, null, '81', '1', '2', 'front/about.html', '102', '2', null, null, null, '2015-05-26 16:40:46', '0', '2015-05-26 10:36:30', '1'); +INSERT INTO `tb_folder` VALUES ('100', '0', '博文目录', '', '', null, '99', '2', '1', null, '102', '2', null, null, null, '2015-06-17 22:29:44', '0', '2015-06-17 22:29:44', '2'); +INSERT INTO `tb_folder` VALUES ('101', '103', '意见反馈', 'advice', null, null, '82', '1', '1', null, '102', '2', null, null, null, '2016-01-29 01:13:16', '1', '2016-01-29 01:13:16', '1'); +INSERT INTO `tb_folder` VALUES ('103', '0', '其他', 'others', null, null, '10', '1', '1', null, '102', '2', null, null, null, '2016-03-31 23:50:26', '1', '2016-03-31 23:50:26', '1'); +INSERT INTO `tb_folder` VALUES ('230', '0', '首页', 'home', 'home/home.html', null, '1', '1', '1', null, '102', '3', 'FLY的狐狸', 'FLY的狐狸,门头沟信息,生活,新闻,美食,旅游,教育,公园,商场,房产,生活记录,开发记录', 'FLY的狐狸,门头沟信息,生活,新闻,美食,旅游,教育,公园,商场,房产,生活记录,开发记录', '2016-04-07 01:13:40', '1', '2016-04-07 01:13:40', '1'); +INSERT INTO `tb_folder` VALUES ('231', '0', '关于我们', 'about', '', null, '81', '1', '1', null, '1', '3', null, null, null, '2015-05-26 16:40:46', '0', '2015-05-26 10:36:30', '1'); +INSERT INTO `tb_folder` VALUES ('241', '0', '首页', '', 'home/home.html', 'FLY的狐狸', '1', '1', '1', '', '1', '5', '', '', '', '2015-01-28 16:54:03', null, '2015-01-28 12:00:00', '1'); +INSERT INTO `tb_folder` VALUES ('242', '0', '我的英语', '', 'home/home.html', '', '4', '1', '1', '', '1', '5', '', '', '', '2015-01-28 16:54:03', null, '2015-01-28 12:05:00', '1'); +INSERT INTO `tb_folder` VALUES ('243', '0', '我的项目', '', 'home/home.html', '', '3', '1', '1', '', '1', '5', '', '', '', '2015-01-28 16:56:45', null, '2015-01-28 12:10:00', '1'); +INSERT INTO `tb_folder` VALUES ('245', '0', '关于我们', '', 'home/home.html', '', '99', '1', '1', '', '1', '5', '', '', '', '2015-01-29 14:04:23', null, '2015-01-29 12:00:00', '1'); +INSERT INTO `tb_folder` VALUES ('247', '0', '我的记录', '', 'home/home.html', '', '6', '1', '1', '', '1', '5', '', '', '', '2015-02-06 12:04:53', null, '2015-02-06 12:00:00', '1'); +INSERT INTO `tb_folder` VALUES ('248', '0', '程序调用', '', 'home/home.html', '程序调用,不进行展示', '199', '2', '1', '', '1', '5', '', '', '', '2015-02-15 14:11:23', null, '2015-02-15 12:00:00', '1'); +INSERT INTO `tb_folder` VALUES ('249', '0', '开发记录', '', 'home/home.html', '', '11', '1', '1', '', '1', '5', '', '', '', '2015-03-13 09:24:41', null, '2015-03-13 12:00:00', '1'); +INSERT INTO `tb_folder` VALUES ('250', '0', '查看标签', '', '', '', '20', '1', '2', 'front/tags/all', '102', '5', '', '', '', '2015-05-18 00:06:48', null, '2015-05-18 00:06:48', '1'); +INSERT INTO `tb_folder` VALUES ('252', '0', '我的微博', 'weibo', 'home/home.html', '', '8', '2', '1', '', '102', '5', '', '', '', '2016-05-03 07:21:29', '1', '2016-05-03 07:21:29', '1'); +INSERT INTO `tb_folder` VALUES ('253', '0', '首页', 'index', 'index.html', null, '10', '1', '1', null, '102', '8', null, null, null, '2016-06-17 16:48:11', '1', '2016-06-17 16:48:11', '1'); +INSERT INTO `tb_folder` VALUES ('254', '0', '意见反馈', null, null, null, '10', '1', '3', 'http://mtg.jflyfox.com/advice.html', '102', '8', null, null, null, '2016-06-21 12:21:19', '1', '2016-06-21 12:21:19', '1'); +INSERT INTO `tb_folder` VALUES ('255', '0', '关于我们', null, null, null, '10', '1', '3', 'http://blog.jflyfox.com/245.html', '102', '8', null, null, null, '2016-06-21 12:21:58', '1', '2016-06-21 12:21:58', '1'); +INSERT INTO `tb_folder` VALUES ('256', '0', '首页', 'home', null, null, '5', '1', '1', null, '102', '9', null, null, null, '2017-01-21 23:26:30', '1', '2017-01-21 23:26:30', '1'); +INSERT INTO `tb_folder` VALUES ('257', '0', 'jfinal-cms', 'jfinalcms', 'home/common_menu.html', null, '12', '1', '1', null, '102', '9', null, null, null, '2017-01-21 23:28:06', '1', '2017-01-21 23:28:06', '1'); +INSERT INTO `tb_folder` VALUES ('258', '0', 'jfinal', 'jfinal', 'home/common_menu.html', null, '14', '1', '1', null, '102', '9', null, null, null, '2017-01-21 23:28:29', '1', '2017-01-21 23:28:29', '1'); +INSERT INTO `tb_folder` VALUES ('259', '0', 'beetl', 'beetl', 'home/common_menu.html', null, '16', '1', '1', null, '102', '9', null, null, null, '2017-01-21 23:28:42', '1', '2017-01-21 23:28:42', '1'); +INSERT INTO `tb_folder` VALUES ('260', '0', 'mysql', 'mysql', 'home/common_menu.html', null, '18', '1', '1', null, '102', '9', null, null, null, '2017-01-21 23:29:25', '1', '2017-01-21 23:29:25', '1'); +INSERT INTO `tb_folder` VALUES ('261', '0', '其他', 'other', null, null, '50', '1', '1', null, '102', '9', null, null, null, '2017-01-21 23:29:46', '1', '2017-01-21 23:29:46', '1'); +INSERT INTO `tb_folder` VALUES ('262', '261', '博客站点', 'blog', 'home/common_menu.html', null, '52', '1', '1', null, '102', '9', null, null, null, '2017-01-21 23:30:18', '1', '2017-01-21 23:30:18', '1'); +INSERT INTO `tb_folder` VALUES ('263', '261', '资讯站点', 'information', 'home/common_menu.html', null, '54', '1', '1', null, '102', '9', null, null, null, '2017-01-21 23:31:17', '1', '2017-01-21 23:31:17', '1'); +INSERT INTO `tb_folder` VALUES ('264', '261', '论坛站点', 'bbs', 'home/common_menu.html', null, '56', '1', '1', null, '102', '9', null, null, null, '2017-01-21 23:31:42', '1', '2017-01-21 23:31:42', '1'); +INSERT INTO `tb_folder` VALUES ('265', '261', '网站站点', 'website', 'home/common_menu.html', null, '58', '1', '1', null, '102', '9', null, null, null, '2017-01-21 23:32:11', '1', '2017-01-21 23:32:11', '1'); +INSERT INTO `tb_folder` VALUES ('266', '261', '意见反馈', 'advice', null, null, '70', '1', '1', null, '102', '9', null, null, null, '2017-01-21 23:33:18', '1', '2017-01-21 23:33:18', '1'); +INSERT INTO `tb_folder` VALUES ('267', '261', '标签查询', 'tags', null, null, '60', '1', '2', 'front/tags/all.html', '102', '9', null, null, null, '2017-01-21 23:41:16', '1', '2017-01-21 23:41:16', '1'); + +-- ---------------------------- +-- Table structure for tb_folder_notice +-- ---------------------------- +DROP TABLE IF EXISTS `tb_folder_notice`; +CREATE TABLE `tb_folder_notice` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', + `folder_id` int(11) NOT NULL COMMENT '目录id', + `type` int(11) NOT NULL DEFAULT '0' COMMENT '类型', + `icon` varchar(255) DEFAULT NULL COMMENT '图标', + `content` varchar(2000) DEFAULT NULL COMMENT '内容', + `url` varchar(255) DEFAULT NULL COMMENT '链接地址', + `sort` int(11) DEFAULT NULL COMMENT '排序', + `status` int(11) DEFAULT '1' COMMENT '状态//radio/2,隐藏,1,显示', + `is_deleted` int(11) NOT NULL DEFAULT '0' COMMENT '是否已删除', + `update_time` varchar(64) DEFAULT NULL COMMENT '更新时间', + `update_id` int(11) DEFAULT '0' COMMENT '更新人', + `create_time` varchar(64) DEFAULT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COMMENT='栏目公告'; + +-- ---------------------------- +-- Records of tb_folder_notice +-- ---------------------------- +INSERT INTO `tb_folder_notice` VALUES ('1', '1', '0', null, '这里是我们的公告信息,哈哈', null, '20', '1', '1', '2016-01-31 02:52:56', '1', '2016-01-31 02:52:56', '1'); +INSERT INTO `tb_folder_notice` VALUES ('2', '2', '0', null, '通知大家,jfinal cms是一个很好的内容管理平台', 'http://www.baidu.com', '20', '1', '1', '2016-01-31 02:53:22', '1', '2016-01-31 02:53:22', '1'); + +-- ---------------------------- +-- Table structure for tb_folder_roll_picture +-- ---------------------------- +DROP TABLE IF EXISTS `tb_folder_roll_picture`; +CREATE TABLE `tb_folder_roll_picture` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'id', + `folder_id` int(11) NOT NULL COMMENT '目录id', + `title` varchar(200) DEFAULT '' COMMENT '题目', + `content` varchar(2000) DEFAULT NULL COMMENT '内容', + `sort` int(11) DEFAULT '1' COMMENT '排序', + `status` int(11) DEFAULT '1' COMMENT '状态//radio/2,隐藏,1,显示', + `image_url` varchar(256) DEFAULT NULL COMMENT '图片路径', + `image_net_url` varchar(256) DEFAULT NULL COMMENT '网络图片路径', + `url` varchar(255) DEFAULT NULL COMMENT '链接地址', + `is_deleted` int(11) NOT NULL DEFAULT '0' COMMENT '是否已删除', + `update_time` varchar(64) DEFAULT NULL COMMENT '更新时间', + `update_id` int(11) DEFAULT '0' COMMENT '更新人', + `create_time` varchar(64) DEFAULT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8 COMMENT='栏目轮播图'; + +-- ---------------------------- +-- Records of tb_folder_roll_picture +-- ---------------------------- +INSERT INTO `tb_folder_roll_picture` VALUES ('3', '1', '百花山', null, '1', '1', null, 'http://i1.tietuku.cn/3951e9cb262621b6.jpg', 'http://www.jflyfox.com/mtg/front/article/329.html', '1', '2016-01-28 17:40:22', '1', '2016-01-28 17:40:22', '1'); +INSERT INTO `tb_folder_roll_picture` VALUES ('4', '1', '美丽门城', null, '2', '1', null, 'http://i1.tietuku.cn/6f139452bedaefed.jpg', '#', '1', '2016-01-28 17:41:13', '1', '2016-01-28 17:41:13', '1'); +INSERT INTO `tb_folder_roll_picture` VALUES ('5', '1', '永定塔', null, '3', '1', null, 'http://i1.tietuku.cn/fab40b501ece3fcf.jpg', 'http://www.jflyfox.com/mtg/front/article/406.html', '1', '2016-01-28 17:42:12', '1', '2016-01-28 17:42:12', '1'); +INSERT INTO `tb_folder_roll_picture` VALUES ('6', '1', '爨底下', null, '4', '1', null, 'http://i1.tietuku.cn/35171f11a5ec9c51.jpg', 'http://www.jflyfox.com/mtg/front/article/330.html', '1', '2016-01-28 17:42:40', '1', '2016-01-28 17:42:40', '1'); + +-- ---------------------------- +-- Table structure for tb_friendlylink +-- ---------------------------- +DROP TABLE IF EXISTS `tb_friendlylink`; +CREATE TABLE `tb_friendlylink` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', + `name` varchar(256) NOT NULL COMMENT '名称/11111/', + `url` varchar(256) NOT NULL COMMENT 'URL', + `sort` int(11) NOT NULL COMMENT '排序号', + `state` int(11) DEFAULT '0' COMMENT '是否显示//radio/1,显示,2,不显示', + `type` int(11) DEFAULT '21' COMMENT '类型//select/1,见数据字典', + `remark` varchar(256) DEFAULT NULL COMMENT '备注//textarea', + `site_id` int(11) DEFAULT '0' COMMENT '站点ID', + `create_time` varchar(64) DEFAULT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8 COMMENT='友情链接表'; + +-- ---------------------------- +-- Records of tb_friendlylink +-- ---------------------------- +INSERT INTO `tb_friendlylink` VALUES ('1', '意见反馈', 'http://www.jflyfox.com/mtg/advice', '16', '1', '22', null, '0', '2015-04-24 15:03:02', '1'); +INSERT INTO `tb_friendlylink` VALUES ('2', '捐赠我们', 'http://www.jflyfox.com/mtg/front/about/351.html', '13', '1', '22', null, '0', '2015-04-24 15:27:36', '1'); +INSERT INTO `tb_friendlylink` VALUES ('3', '关于我们', 'http://www.jflyfox.com/mtgfront/about/352.html', '2', '1', '22', null, '0', '2015-04-24 15:28:56', '1'); +INSERT INTO `tb_friendlylink` VALUES ('4', '给我写信', 'http://mail.qq.com/cgi-bin/qm_share?t=qm_mailme&email=allcU1tTW15dWiobG0QJBQc', '15', '1', '22', null, '0', '2015-04-24 15:29:12', '1'); +INSERT INTO `tb_friendlylink` VALUES ('5', '大峪中学', 'http://www.dyzx-bj.com/', '112', '1', '21', null, '0', '2015-05-06 16:13:40', '1'); +INSERT INTO `tb_friendlylink` VALUES ('6', 'Jflyfox博客', 'http://www.jflyfox.com/', '114', '1', '21', null, '0', '2015-05-06 16:14:37', '1'); +INSERT INTO `tb_friendlylink` VALUES ('7', '门头沟介绍', 'http://baike.baidu.com/view/193726.htm?fromtitle=%E9%97%A8%E5%A4%B4%E6%B2%9F&fromid=1055081&type=syn', '111', '1', '21', null, '0', '2015-05-06 16:15:03', '1'); +INSERT INTO `tb_friendlylink` VALUES ('8', '联系我们', 'http://www.jflyfox.com/mtgfront/about/353.html', '3', '1', '22', null, '0', '2015-05-26 11:26:57', '1'); +INSERT INTO `tb_friendlylink` VALUES ('9', '免责声明', 'http://www.jflyfox.com/mtgfront/about/354.html', '20', '1', '22', null, '0', '2015-05-26 11:27:18', '1'); +INSERT INTO `tb_friendlylink` VALUES ('10', '广告服务', 'http://www.jflyfox.com/mtgfront/about/355.html', '11', '1', '22', null, '0', '2015-05-26 11:28:42', '1'); + +-- ---------------------------- +-- Table structure for tb_image +-- ---------------------------- +DROP TABLE IF EXISTS `tb_image`; +CREATE TABLE `tb_image` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', + `album_id` int(11) DEFAULT '1' COMMENT '相册ID', + `album_name` varchar(200) DEFAULT '' COMMENT '相册名称', + `name` varchar(200) DEFAULT '' COMMENT '图片名称', + `linkurl` varchar(400) DEFAULT '' COMMENT '链接地址', + `cdnurl` varchar(400) DEFAULT '' COMMENT 'CDN地址', + `image_url` varchar(256) DEFAULT NULL COMMENT '图片路径', + `image_net_url` varchar(256) DEFAULT NULL COMMENT '网络图片路径', + `ext` varchar(20) DEFAULT '' COMMENT '扩展名', + `width` varchar(20) DEFAULT '' COMMENT '宽', + `height` varchar(20) DEFAULT '' COMMENT '高', + `status` int(11) DEFAULT '1' COMMENT '状态//radio/2,隐藏,1,显示', + `is_comment` int(11) DEFAULT '1' COMMENT '是否评论//radio/2,否,1,是', + `is_recommend` int(11) DEFAULT '2' COMMENT '是否推荐:2 否 1 是', + `sort` int(11) DEFAULT '1' COMMENT '排序', + `remark` varchar(400) DEFAULT NULL COMMENT '备注', + `publish_time` varchar(64) DEFAULT NULL COMMENT '发布时间', + `publish_user` varchar(64) DEFAULT '1' COMMENT '发布者', + `update_time` varchar(64) DEFAULT NULL COMMENT '更新时间', + `update_id` int(11) DEFAULT '0' COMMENT '更新者', + `create_time` varchar(64) DEFAULT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=31 DEFAULT CHARSET=utf8 COMMENT='图片'; + +-- ---------------------------- +-- Records of tb_image +-- ---------------------------- +INSERT INTO `tb_image` VALUES ('2', '1', '风景', '风景1', 'http://image226-c.poco.cn/mypoco/myphoto/20140121/16/6164818720140121160407052_640.jpg?1024x453_120', '', null, 'http://image226-c.poco.cn/mypoco/myphoto/20140121/16/6164818720140121160407052_640.jpg?1024x453_120', 'jpg?1024x453_120', '750', '331', '1', '2', '2', '10', null, '2016-02-10', '系统管理员', '2016-02-10 00:41:10', '1', '2016-02-10 00:41:10', '1'); +INSERT INTO `tb_image` VALUES ('3', '3', '动漫', '动漫1', 'http://thumb.webps.cn/to/img/4/T1DTF3Fc4dXXXXXXXX_!!0-item_pic.jpg', '', null, 'http://thumb.webps.cn/to/img/4/T1DTF3Fc4dXXXXXXXX_!!0-item_pic.jpg', 'jpg', '500', '747', '1', '2', '2', '10', null, '2016-02-10', '系统管理员', '2016-02-10 00:41:51', '1', '2016-02-10 00:41:51', '1'); +INSERT INTO `tb_image` VALUES ('4', '2', '美女', '美女1', 'http://i4.pdim.gs/t01d4f8e84b1434c8e3.jpg', '', null, 'http://i4.pdim.gs/t01d4f8e84b1434c8e3.jpg', 'jpg', '800', '566', '1', '2', '1', '2', null, '2016-02-10', '系统管理员', '2016-02-10 00:43:20', '1', '2016-02-10 00:43:20', '1'); +INSERT INTO `tb_image` VALUES ('5', '4', '游戏', '游戏1', 'http://news.waigame.cn/static/newsimage/20140603/14017632866819.jpg', '', null, 'http://news.waigame.cn/static/newsimage/20140603/14017632866819.jpg', 'jpg', '1400', '933', '1', '2', '2', '10', null, '2016-02-10', '系统管理员', '2016-02-10 00:44:14', '1', '2016-02-10 00:44:14', '1'); +INSERT INTO `tb_image` VALUES ('7', '2', '美女', '美女2', 'http://i12.tietuku.cn/15a72119633c812d.jpg', '', null, 'http://i12.tietuku.cn/15a72119633c812d.jpg', null, '0', '0', '1', '2', '1', '8', null, '2016-02-10', '系统管理员', '2016-02-10 01:25:41', '1', '2016-02-10 01:25:41', '1'); +INSERT INTO `tb_image` VALUES ('8', '2', '美女', '美女3', 'http://i12.tietuku.cn/ccb2e30c9fda92f6.jpg', '', null, 'http://i12.tietuku.cn/ccb2e30c9fda92f6.jpg', 'jpg', '580', '870', '1', '2', '2', '8', null, '2016-02-10', '系统管理员', '2016-02-10 01:30:59', '1', '2016-02-10 01:30:59', '1'); +INSERT INTO `tb_image` VALUES ('9', '2', '美女', '美女4', 'http://i12.tietuku.cn/2329cc70e32d51c7.jpg', '', null, 'http://i12.tietuku.cn/2329cc70e32d51c7.jpg', 'jpg', '480', '800', '1', '1', '2', '10', null, '2016-02-10', '系统管理员', '2016-02-10 01:31:16', '1', '2016-02-10 01:31:16', '1'); +INSERT INTO `tb_image` VALUES ('10', '2', '美女', '美女5', 'http://i12.tietuku.cn/f2229247cf39609c.jpg', '', null, 'http://i12.tietuku.cn/f2229247cf39609c.jpg', 'jpg', '375', '550', '1', '1', '2', '10', null, '2016-02-10', '系统管理员', '2016-02-10 01:31:30', '1', '2016-02-10 01:31:30', '1'); +INSERT INTO `tb_image` VALUES ('11', '2', '美女', '美女6', 'http://i12.tietuku.cn/53cdf688c2c938f0.jpg', '', null, 'http://i12.tietuku.cn/53cdf688c2c938f0.jpg', 'jpg', '610', '833', '1', '2', '2', '8', null, '2016-02-10', '系统管理员', '2016-02-10 01:31:45', '1', '2016-02-10 01:31:45', '1'); +INSERT INTO `tb_image` VALUES ('12', '2', '美女', '美女7', 'http://i12.tietuku.cn/9c83f4d0809adcbc.jpg', '', null, 'http://i12.tietuku.cn/9c83f4d0809adcbc.jpg', 'jpg', '532', '600', '1', '1', '2', '10', null, '2016-02-10', '系统管理员', '2016-02-10 01:31:59', '1', '2016-02-10 01:31:59', '1'); +INSERT INTO `tb_image` VALUES ('13', '2', '美女', '美女8', 'http://i4.tietuku.cn/691d3f2a37fb0ba9.jpg', '', null, 'http://i4.tietuku.cn/691d3f2a37fb0ba9.jpg', 'jpg', '1024', '1536', '1', '2', '2', '10', null, '2016-02-10', '系统管理员', '2016-02-10 01:33:40', '1', '2016-02-10 01:33:40', '1'); +INSERT INTO `tb_image` VALUES ('14', '2', '美女', '美女9', 'http://i4.tietuku.cn/1fd3bb6d9a0d5901.jpg', '', null, 'http://i4.tietuku.cn/1fd3bb6d9a0d5901.jpg', 'jpg', '682', '1024', '1', '2', '2', '9', null, '2016-02-10', '系统管理员', '2016-02-10 01:34:45', '1', '2016-02-10 01:34:45', '1'); +INSERT INTO `tb_image` VALUES ('15', '2', '美女', '美女10', 'http://i13.tietuku.cn/bff63c26bea99e8d.jpg', '', null, 'http://i13.tietuku.cn/bff63c26bea99e8d.jpg', 'jpg', '900', '1200', '1', '1', '2', '10', null, '2016-02-10', '系统管理员', '2016-02-10 01:35:16', '1', '2016-02-10 01:35:16', '1'); +INSERT INTO `tb_image` VALUES ('16', '2', '美女', '美女11', 'http://i13.tietuku.cn/8484c08a850a74c8.jpg', '', null, 'http://i13.tietuku.cn/8484c08a850a74c8.jpg', 'jpg', '768', '1152', '1', '2', '2', '9', null, '2016-02-10', '系统管理员', '2016-02-10 01:35:55', '1', '2016-02-10 01:35:55', '1'); +INSERT INTO `tb_image` VALUES ('17', '2', '美女', '美女12', 'http://i4.tietuku.cn/4231f8da8b09331c.jpg', '', null, 'http://i4.tietuku.cn/4231f8da8b09331c.jpg', 'jpg', '640', '960', '1', '2', '2', '8', null, '2016-02-10', '系统管理员', '2016-02-10 01:36:09', '1', '2016-02-10 01:36:09', '1'); +INSERT INTO `tb_image` VALUES ('18', '2', '美女', '美女13', 'http://i13.tietuku.cn/a5d2a6478c6ed758.jpg', '', null, 'http://i13.tietuku.cn/a5d2a6478c6ed758.jpg', 'jpg', '496', '750', '1', '2', '2', '10', null, '2016-02-09', '系统管理员', '2016-02-10 01:36:29', '1', '2016-02-10 01:36:29', '1'); +INSERT INTO `tb_image` VALUES ('19', '4', '游戏', '游戏2', 'http://i4.tietuku.cn/c34fc8e188fd210c.jpg', '', null, 'http://i4.tietuku.cn/c34fc8e188fd210c.jpg', 'jpg', '1920', '1080', '1', '1', '2', '10', null, '2016-02-11', '系统管理员', '2016-02-11 02:57:23', '1', '2016-02-11 02:57:23', '1'); +INSERT INTO `tb_image` VALUES ('20', '4', '游戏', '游戏3', 'http://i8.tietuku.cn/ca9d3311b35856b7.jpg', '', null, 'http://i8.tietuku.cn/ca9d3311b35856b7.jpg', 'jpg', '658', '823', '1', '1', '2', '10', null, '2016-02-11', '系统管理员', '2016-02-11 02:58:35', '1', '2016-02-11 02:58:35', '1'); +INSERT INTO `tb_image` VALUES ('21', '4', '游戏', '游戏5', 'http://i4.tietuku.cn/a8ebfc61acef58ae.jpg', '', null, 'http://i4.tietuku.cn/a8ebfc61acef58ae.jpg', 'jpg', '1600', '1200', '1', '2', '2', '10', null, '2016-02-11', '系统管理员', '2016-02-11 02:59:46', '1', '2016-02-11 02:59:46', '1'); +INSERT INTO `tb_image` VALUES ('22', '4', '游戏', '游戏4', 'http://ossweb-img.qq.com/images/lol/act/a20170407fist/img1.jpg', '', null, 'http://ossweb-img.qq.com/images/lol/act/a20170407fist/img1.jpg', 'jpg', '970', '547', '1', '2', '2', '10', null, '2016-02-11', '系统管理员', '2016-02-11 03:00:11', '1', '2016-02-11 03:00:11', '1'); +INSERT INTO `tb_image` VALUES ('23', '4', '游戏', '游戏6', 'http://i8.tietuku.cn/cc4329e67481d4f0.png', '', null, 'http://i8.tietuku.cn/cc4329e67481d4f0.png', 'png', '400', '580', '1', '1', '2', '10', null, '2016-02-11', '系统管理员', '2016-02-11 03:00:50', '1', '2016-02-11 03:00:50', '1'); +INSERT INTO `tb_image` VALUES ('24', '4', '游戏', '游戏7', 'http://i8.tietuku.cn/fa672748521bb33a.jpg', '', null, 'http://i8.tietuku.cn/fa672748521bb33a.jpg', 'jpg', '600', '400', '1', '1', '2', '10', null, '2016-02-11', '系统管理员', '2016-02-11 03:01:30', '1', '2016-02-11 03:01:30', '1'); +INSERT INTO `tb_image` VALUES ('25', '4', '游戏', '游戏8', 'http://i4.tietuku.cn/7a22444c704bdb8c.jpg', '', null, 'http://i4.tietuku.cn/7a22444c704bdb8c.jpg', 'jpg', '751', '1000', '1', '1', '2', '10', null, '2016-02-11', '系统管理员', '2016-02-11 03:04:52', '1', '2016-02-11 03:04:52', '1'); +INSERT INTO `tb_image` VALUES ('26', '3', '动漫', '动漫2', 'http://i12.tietuku.cn/c4b206990bea4877.jpg', '', null, 'http://i12.tietuku.cn/c4b206990bea4877.jpg', 'jpg', '429', '600', '1', '1', '2', '10', null, '2016-02-11', '系统管理员', '2016-02-11 03:06:29', '1', '2016-02-11 03:06:29', '1'); +INSERT INTO `tb_image` VALUES ('27', '3', '动漫', '动漫3', 'http://i11.tietuku.cn/97ec25026f8526ea.jpg', '', null, 'http://i11.tietuku.cn/97ec25026f8526ea.jpg', 'jpg', '188', '266', '1', '1', '2', '10', null, '2016-02-11', '系统管理员', '2016-02-11 03:06:48', '1', '2016-02-11 03:06:48', '1'); +INSERT INTO `tb_image` VALUES ('28', '3', '动漫', '动漫4', 'http://i8.tietuku.cn/99bed4ee4e00683b.jpg', '', null, 'http://i8.tietuku.cn/99bed4ee4e00683b.jpg', 'jpg', '609', '800', '1', '1', '2', '10', null, '2016-02-11', '系统管理员', '2016-02-11 03:07:03', '1', '2016-02-11 03:07:03', '1'); +INSERT INTO `tb_image` VALUES ('29', '3', '动漫', '动漫5', 'http://i4.tietuku.cn/c18889b9f5fcb0f6.jpg', '', null, 'http://i4.tietuku.cn/c18889b9f5fcb0f6.jpg', 'jpg', '637', '900', '1', '1', '2', '10', null, '2016-02-11', '系统管理员', '2016-02-11 03:07:59', '1', '2016-02-11 03:07:59', '1'); +INSERT INTO `tb_image` VALUES ('30', '3', '动漫', '动漫6', 'http://i4.tietuku.cn/e37d596427ae17f8.jpg', '', null, 'http://i4.tietuku.cn/e37d596427ae17f8.jpg', 'jpg', '210', '280', '1', '1', '2', '10', null, '2016-02-11', '系统管理员', '2016-02-11 03:08:31', '1', '2016-02-11 03:08:31', '1'); + +-- ---------------------------- +-- Table structure for tb_image_album +-- ---------------------------- +DROP TABLE IF EXISTS `tb_image_album`; +CREATE TABLE `tb_image_album` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', + `parent_id` int(11) DEFAULT '0' COMMENT '父ID', + `name` varchar(100) NOT NULL DEFAULT '' COMMENT '相册名称', + `remark` text COMMENT '描述', + `sort` int(11) DEFAULT '1' COMMENT '排序', + `status` int(11) DEFAULT '1' COMMENT '状态//radio/2,隐藏,1,显示', + `update_time` varchar(64) DEFAULT NULL COMMENT '更新时间', + `update_id` int(11) DEFAULT '0' COMMENT '更新人', + `create_time` varchar(64) DEFAULT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COMMENT='相册'; + +-- ---------------------------- +-- Records of tb_image_album +-- ---------------------------- +INSERT INTO `tb_image_album` VALUES ('1', '0', '风景', null, '1', '1', '2016-02-10 00:28:19', '1', '2016-02-10 00:28:19', '1'); +INSERT INTO `tb_image_album` VALUES ('2', '0', '美女', null, '2', '1', '2016-02-10 00:28:43', '1', '2016-02-10 00:28:43', '1'); +INSERT INTO `tb_image_album` VALUES ('3', '0', '动漫', null, '3', '1', '2016-02-10 00:28:55', '1', '2016-02-10 00:28:55', '1'); +INSERT INTO `tb_image_album` VALUES ('4', '0', '游戏', null, '4', '1', '2016-02-10 00:29:42', '1', '2016-02-10 00:29:42', '1'); + +-- ---------------------------- +-- Table structure for tb_image_tags +-- ---------------------------- +DROP TABLE IF EXISTS `tb_image_tags`; +CREATE TABLE `tb_image_tags` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'id', + `image_id` int(11) DEFAULT NULL COMMENT '图片ID', + `tagname` varchar(200) DEFAULT '' COMMENT '标签内容', + `create_time` varchar(64) DEFAULT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=45 DEFAULT CHARSET=utf8 COMMENT='标签'; + +-- ---------------------------- +-- Records of tb_image_tags +-- ---------------------------- +INSERT INTO `tb_image_tags` VALUES ('1', null, 'a', '2016-02-10 02:09:39', '1'); +INSERT INTO `tb_image_tags` VALUES ('2', null, 'b', '2016-02-10 02:09:39', '1'); +INSERT INTO `tb_image_tags` VALUES ('3', null, 'b', '2016-02-10 02:09:39', '1'); +INSERT INTO `tb_image_tags` VALUES ('4', null, 'a', '2016-02-10 02:09:48', '1'); +INSERT INTO `tb_image_tags` VALUES ('5', null, 'c', '2016-02-10 02:09:48', '1'); +INSERT INTO `tb_image_tags` VALUES ('6', null, 'a', '2016-02-10 02:10:43', '1'); +INSERT INTO `tb_image_tags` VALUES ('7', null, 'b', '2016-02-10 02:10:45', '1'); +INSERT INTO `tb_image_tags` VALUES ('42', '4', '美女', '2016-02-11 03:12:30', '1'); +INSERT INTO `tb_image_tags` VALUES ('43', '4', '图片', '2016-02-11 03:12:30', '1'); +INSERT INTO `tb_image_tags` VALUES ('44', '4', '视频', '2016-02-11 03:12:31', '1'); + +-- ---------------------------- +-- Table structure for tb_pageview +-- ---------------------------- +DROP TABLE IF EXISTS `tb_pageview`; +CREATE TABLE `tb_pageview` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', + `ip` varchar(64) NOT NULL COMMENT 'IP地址', + `userid` int(11) DEFAULT NULL COMMENT '用户ID', + `create_day` varchar(64) NOT NULL COMMENT '创建时间到天', + `create_time` varchar(64) NOT NULL COMMENT '创建时间', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=113 DEFAULT CHARSET=utf8 COMMENT='访问量统计'; + +-- ---------------------------- +-- Records of tb_pageview +-- ---------------------------- +INSERT INTO `tb_pageview` VALUES ('87', '127.0.0.1', '0', '2016-04-04', '2016-04-04 19:53:45'); +INSERT INTO `tb_pageview` VALUES ('88', '127.0.0.1', '0', '2016-04-05', '2016-04-05 00:03:09'); +INSERT INTO `tb_pageview` VALUES ('89', '127.0.0.1', '0', '2016-04-06', '2016-04-06 00:06:37'); +INSERT INTO `tb_pageview` VALUES ('90', '127.0.0.1', '0', '2016-04-07', '2016-04-07 00:09:26'); +INSERT INTO `tb_pageview` VALUES ('91', '0:0:0:0:0:0:0:1', '0', '2016-04-13', '2016-04-13 23:26:45'); +INSERT INTO `tb_pageview` VALUES ('92', '127.0.0.1', '0', '2016-04-13', '2016-04-13 23:55:23'); +INSERT INTO `tb_pageview` VALUES ('93', '0:0:0:0:0:0:0:1', '0', '2016-04-14', '2016-04-14 00:00:30'); +INSERT INTO `tb_pageview` VALUES ('94', '0:0:0:0:0:0:0:1', '0', '2016-04-16', '2016-04-16 02:01:06'); +INSERT INTO `tb_pageview` VALUES ('95', '127.0.0.1', '0', '2016-04-16', '2016-04-16 02:02:32'); +INSERT INTO `tb_pageview` VALUES ('96', '0:0:0:0:0:0:0:1', '0', '2016-04-17', '2016-04-17 05:19:38'); +INSERT INTO `tb_pageview` VALUES ('97', '127.0.0.1', '0', '2016-04-17', '2016-04-17 05:20:06'); +INSERT INTO `tb_pageview` VALUES ('98', '0:0:0:0:0:0:0:1', '0', '2016-04-18', '2016-04-18 00:05:27'); +INSERT INTO `tb_pageview` VALUES ('99', '127.0.0.1', '0', '2016-04-18', '2016-04-18 00:14:24'); +INSERT INTO `tb_pageview` VALUES ('100', '127.0.0.1', '0', '2016-04-19', '2016-04-19 00:02:25'); +INSERT INTO `tb_pageview` VALUES ('101', '0:0:0:0:0:0:0:1', '0', '2016-04-19', '2016-04-19 21:28:43'); +INSERT INTO `tb_pageview` VALUES ('102', '127.0.0.1', '0', '2016-04-20', '2016-04-20 00:00:09'); +INSERT INTO `tb_pageview` VALUES ('103', '127.0.0.1', '0', '2016-04-21', '2016-04-21 01:47:03'); +INSERT INTO `tb_pageview` VALUES ('104', '0:0:0:0:0:0:0:1', '0', '2016-05-07', '2016-05-07 21:53:05'); +INSERT INTO `tb_pageview` VALUES ('105', '127.0.0.1', '0', '2016-05-07', '2016-05-07 22:25:34'); +INSERT INTO `tb_pageview` VALUES ('106', '0:0:0:0:0:0:0:1', '0', '2016-05-08', '2016-05-08 00:01:17'); +INSERT INTO `tb_pageview` VALUES ('107', '0:0:0:0:0:0:0:1', '0', '2016-05-11', '2016-05-11 23:44:10'); +INSERT INTO `tb_pageview` VALUES ('108', '0:0:0:0:0:0:0:1', '0', '2016-05-12', '2016-05-12 00:00:04'); +INSERT INTO `tb_pageview` VALUES ('109', '127.0.0.1', '0', '2016-05-12', '2016-05-12 00:06:36'); +INSERT INTO `tb_pageview` VALUES ('110', '0:0:0:0:0:0:0:1', '0', '2016-09-21', '2016-09-21 00:21:57'); +INSERT INTO `tb_pageview` VALUES ('111', '0:0:0:0:0:0:0:1', '0', '2017-04-20', '2017-04-20 21:53:40'); +INSERT INTO `tb_pageview` VALUES ('112', '0:0:0:0:0:0:0:1', '0', '2017-04-21', '2017-04-21 00:01:15'); + +-- ---------------------------- +-- Table structure for tb_site +-- ---------------------------- +DROP TABLE IF EXISTS `tb_site`; +CREATE TABLE `tb_site` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'id', + `name` varchar(32) NOT NULL COMMENT '名称', + `template` varchar(32) DEFAULT NULL COMMENT '模板名称', + `template_mobile` varchar(32) DEFAULT NULL, + `domain_pc` varchar(64) DEFAULT NULL COMMENT 'pc端域名', + `domain_mobile` varchar(64) DEFAULT NULL COMMENT '移动端域名', + `domain_others` varchar(400) DEFAULT NULL COMMENT '其他域名', + `site_title` varchar(256) DEFAULT NULL COMMENT '标题', + `site_folder_id` int(11) DEFAULT NULL COMMENT '默认标题ID', + `site_article_id` int(11) DEFAULT NULL COMMENT '默认文章ID', + `thumbnail` varchar(256) DEFAULT NULL COMMENT '缩略图', + `db_url` varchar(200) DEFAULT NULL COMMENT '数据库', + `db_user` varchar(64) DEFAULT NULL COMMENT '数据库用户', + `db_pwd` varchar(64) DEFAULT NULL COMMENT '数据库密码', + `db_driver` varchar(64) DEFAULT NULL COMMENT '数据库驱动', + `sort` int(11) DEFAULT '10' COMMENT '序号', + `status` int(2) DEFAULT '1' COMMENT '状态//radio/2,禁用,1,启用', + `site_defalut` int(2) DEFAULT '2' COMMENT '默认站点:1,是,2,否', + `remark` varchar(1000) DEFAULT NULL COMMENT '备注', + `update_time` varchar(64) DEFAULT NULL COMMENT '更新时间', + `update_id` int(11) DEFAULT '0' COMMENT '更新人', + `create_time` varchar(64) DEFAULT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8 COMMENT='站点'; + +-- ---------------------------- +-- Records of tb_site +-- ---------------------------- +INSERT INTO `tb_site` VALUES ('1', '视频管理', 'video', 'video', 'video.demo.com', 'video.demo.com', null, 'FLY的狐狸', null, null, 'jflyfox\\website\\site_thumbnail\\20170101_002223_487110.png', null, null, null, null, '12', '1', '2', null, '2016-04-04 19:57:22', '1', '2016-04-04 19:57:22', '1'); +INSERT INTO `tb_site` VALUES ('2', '门头沟', 'mtg', 'mtg', 'mtg.demo.com', 'mtg.demo.com', null, '门头沟信息网', '1', '1', 'jflyfox\\website\\site_thumbnail\\20170101_002130_323416.png', null, null, null, null, '8', '1', '2', null, '2016-04-07 01:10:22', '1', '2016-04-07 01:10:22', '1'); +INSERT INTO `tb_site` VALUES ('3', '网站', 'website', 'website', 'website.demo.com', 'website.demo.com', null, 'FLY的狐狸', '230', '2301', 'jflyfox\\website\\site_thumbnail\\20170101_002147_613266.gif', 'jdbc:mysql://127.0.0.1:3306/jfinal_cms_website?characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull', 'root', '123456', 'com.mysql.jdbc.Driver', '10', '1', '1', null, '2016-03-21 23:58:54', '1', '2016-03-21 23:58:54', '1'); +INSERT INTO `tb_site` VALUES ('4', '照片管理', 'photo', 'photo', 'photo.demo.com', 'photo.demo.com', null, 'FLY的狐狸', null, null, 'jflyfox\\website\\site_thumbnail\\20170101_002209_956776.png', 'jdbc:mysql://127.0.0.1:3306/jfinal_cms_photo?characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull', 'root', '123456', 'com.mysql.jdbc.Driver', '11', '1', '2', null, '2016-03-22 22:25:21', '1', '2016-03-22 22:25:21', '1'); +INSERT INTO `tb_site` VALUES ('5', '博客', 'blog', 'blog', 'blog.demo.com', 'blog.demo.com', null, 'FLY的狐狸', '241', '3001', 'jflyfox\\website\\site_thumbnail\\20170101_002344_503232.png', 'jdbc:mysql://127.0.0.1:3306/jflyfox_mtg?characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull', 'root', '123456', 'com.mysql.jdbc.Driver', '15', '1', '2', null, '2016-03-23 22:07:47', '1', '2016-03-23 22:07:47', '1'); +INSERT INTO `tb_site` VALUES ('8', '项目', 'project', 'project', 'project.demo.com', 'project.demo.com', null, 'FLY的狐狸', '253', null, 'jflyfox\\website\\site_thumbnail\\20170101_002358_867823.png', null, null, null, null, '20', '1', '2', null, '2016-06-17 16:47:44', '1', '2016-06-17 16:47:44', '1'); +INSERT INTO `tb_site` VALUES ('9', '论坛', 'bbs', 'bbs', '1', '2', null, '论坛', null, null, 'jflyfox\\project\\site_thumbnail\\20170113_162827_889442.png', null, null, null, null, '3', '1', '2', null, '2017-01-13 16:28:03', '1', '2017-01-13 16:28:03', '1'); + +-- ---------------------------- +-- Table structure for tb_tags +-- ---------------------------- +DROP TABLE IF EXISTS `tb_tags`; +CREATE TABLE `tb_tags` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'id', + `article_id` int(11) DEFAULT NULL COMMENT '文章ID', + `tagname` varchar(200) DEFAULT '' COMMENT '标签内容', + `create_time` varchar(64) DEFAULT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=4745 DEFAULT CHARSET=utf8 COMMENT='标签'; + +-- ---------------------------- +-- Records of tb_tags +-- ---------------------------- +INSERT INTO `tb_tags` VALUES ('6', '343', '学校', '2015-05-24 23:26:54', '1'); +INSERT INTO `tb_tags` VALUES ('7', '343', '大峪中学', '2015-05-24 23:26:54', '1'); +INSERT INTO `tb_tags` VALUES ('8', '350', '学校', '2015-05-25 14:05:41', '1'); +INSERT INTO `tb_tags` VALUES ('9', '350', '坡头中学', '2015-05-25 14:05:41', '1'); +INSERT INTO `tb_tags` VALUES ('10', '349', '学校', '2015-05-25 14:05:51', '1'); +INSERT INTO `tb_tags` VALUES ('11', '349', '三家店铁路中学', '2015-05-25 14:05:51', '1'); +INSERT INTO `tb_tags` VALUES ('12', '348', '学校', '2015-05-25 14:06:01', '1'); +INSERT INTO `tb_tags` VALUES ('13', '348', '育新中学', '2015-05-25 14:06:02', '1'); +INSERT INTO `tb_tags` VALUES ('14', '347', '学校', '2015-05-25 14:06:13', '1'); +INSERT INTO `tb_tags` VALUES ('15', '347', '新桥路中学', '2015-05-25 14:06:13', '1'); +INSERT INTO `tb_tags` VALUES ('16', '346', '学校', '2015-05-25 14:06:24', '1'); +INSERT INTO `tb_tags` VALUES ('17', '346', '大峪中学分校', '2015-05-25 14:06:24', '1'); +INSERT INTO `tb_tags` VALUES ('18', '345', '学校', '2015-05-25 14:06:42', '1'); +INSERT INTO `tb_tags` VALUES ('19', '345', '首都师范大学附属中学', '2015-05-25 14:06:42', '1'); +INSERT INTO `tb_tags` VALUES ('20', '345', '永定中学', '2015-05-25 14:06:42', '1'); +INSERT INTO `tb_tags` VALUES ('21', '344', '学校', '2015-05-25 14:06:53', '1'); +INSERT INTO `tb_tags` VALUES ('22', '344', '育园中学', '2015-05-25 14:06:53', '1'); +INSERT INTO `tb_tags` VALUES ('23', '375', '公园', '2015-05-26 13:19:08', '1'); +INSERT INTO `tb_tags` VALUES ('24', '375', '永定河文化广场', '2015-05-26 13:19:08', '1'); +INSERT INTO `tb_tags` VALUES ('25', '374', '永定河森林公园', '2015-05-26 13:19:17', '1'); +INSERT INTO `tb_tags` VALUES ('26', '374', '公园', '2015-05-26 13:19:17', '1'); +INSERT INTO `tb_tags` VALUES ('27', '373', '永定河森林公园', '2015-05-26 13:19:25', '1'); +INSERT INTO `tb_tags` VALUES ('28', '373', '公园', '2015-05-26 13:19:25', '1'); +INSERT INTO `tb_tags` VALUES ('29', '372', '新桥公园', '2015-05-26 13:20:12', '1'); +INSERT INTO `tb_tags` VALUES ('30', '372', '公园', '2015-05-26 13:20:12', '1'); +INSERT INTO `tb_tags` VALUES ('31', '371', '西苑公园', '2015-05-26 13:22:48', '1'); +INSERT INTO `tb_tags` VALUES ('32', '371', '公园', '2015-05-26 13:22:48', '1'); +INSERT INTO `tb_tags` VALUES ('33', '370', '石门营公园', '2015-05-26 13:25:00', '1'); +INSERT INTO `tb_tags` VALUES ('34', '370', '公园', '2015-05-26 13:25:00', '1'); +INSERT INTO `tb_tags` VALUES ('35', '369', '石龙公园', '2015-05-26 13:37:24', '1'); +INSERT INTO `tb_tags` VALUES ('36', '369', '公园', '2015-05-26 13:37:24', '1'); +INSERT INTO `tb_tags` VALUES ('37', '368', '葡山公园', '2015-05-26 13:39:14', '1'); +INSERT INTO `tb_tags` VALUES ('38', '368', '公园', '2015-05-26 13:39:14', '1'); +INSERT INTO `tb_tags` VALUES ('39', '367', '葡东公园', '2015-05-26 13:40:26', '1'); +INSERT INTO `tb_tags` VALUES ('40', '367', '公园', '2015-05-26 13:40:26', '1'); +INSERT INTO `tb_tags` VALUES ('41', '366', '门头沟新城滨河森林公园', '2015-05-26 13:42:29', '1'); +INSERT INTO `tb_tags` VALUES ('42', '366', '公园', '2015-05-26 13:42:29', '1'); +INSERT INTO `tb_tags` VALUES ('43', '365', '门矿遗址公园', '2015-05-26 13:43:30', '1'); +INSERT INTO `tb_tags` VALUES ('44', '365', '公园', '2015-05-26 13:43:30', '1'); +INSERT INTO `tb_tags` VALUES ('45', '364', '立思辰公园', '2015-05-26 13:44:43', '1'); +INSERT INTO `tb_tags` VALUES ('46', '364', '公园', '2015-05-26 13:44:43', '1'); +INSERT INTO `tb_tags` VALUES ('47', '363', '京门铁路遗址公园', '2015-05-26 13:45:35', '1'); +INSERT INTO `tb_tags` VALUES ('48', '363', '公园', '2015-05-26 13:45:35', '1'); +INSERT INTO `tb_tags` VALUES ('49', '362', '京浪岛文化体育公园', '2015-05-26 13:46:57', '1'); +INSERT INTO `tb_tags` VALUES ('50', '362', '公园', '2015-05-26 13:46:57', '1'); +INSERT INTO `tb_tags` VALUES ('51', '361', '黑山公园', '2015-05-26 13:48:00', '1'); +INSERT INTO `tb_tags` VALUES ('52', '361', '公园', '2015-05-26 13:48:00', '1'); +INSERT INTO `tb_tags` VALUES ('53', '360', '光荣园', '2015-05-26 13:49:15', '1'); +INSERT INTO `tb_tags` VALUES ('54', '360', '公园', '2015-05-26 13:49:16', '1'); +INSERT INTO `tb_tags` VALUES ('57', '358', '东辛房公园', '2015-05-26 13:50:45', '1'); +INSERT INTO `tb_tags` VALUES ('58', '358', '公园', '2015-05-26 13:50:45', '1'); +INSERT INTO `tb_tags` VALUES ('59', '357', '晨曦公园', '2015-05-26 13:51:47', '1'); +INSERT INTO `tb_tags` VALUES ('60', '357', '公园', '2015-05-26 13:51:47', '1'); +INSERT INTO `tb_tags` VALUES ('61', '356', '滨河公园', '2015-05-26 13:52:42', '1'); +INSERT INTO `tb_tags` VALUES ('62', '356', '公园', '2015-05-26 13:52:42', '1'); +INSERT INTO `tb_tags` VALUES ('63', '324', '新闻', '2015-05-26 14:05:51', '1'); +INSERT INTO `tb_tags` VALUES ('64', '323', '新闻', '2015-05-26 14:08:41', '1'); +INSERT INTO `tb_tags` VALUES ('65', '322', '新闻', '2015-05-26 14:10:33', '1'); +INSERT INTO `tb_tags` VALUES ('66', '321', '新闻', '2015-05-26 14:12:12', '1'); +INSERT INTO `tb_tags` VALUES ('67', '320', '新闻', '2015-05-26 14:13:58', '1'); +INSERT INTO `tb_tags` VALUES ('68', '319', '新闻', '2015-05-26 14:37:57', '1'); +INSERT INTO `tb_tags` VALUES ('69', '318', '新闻', '2015-05-26 14:40:09', '1'); +INSERT INTO `tb_tags` VALUES ('70', '111', '新闻', '2015-05-26 14:43:28', '1'); +INSERT INTO `tb_tags` VALUES ('71', '111', '定都阁', '2015-05-26 14:43:28', '1'); +INSERT INTO `tb_tags` VALUES ('72', '105', '新闻', '2015-05-26 14:44:49', '1'); +INSERT INTO `tb_tags` VALUES ('77', '335', '福华肥牛', '2015-05-26 14:52:49', '1'); +INSERT INTO `tb_tags` VALUES ('78', '335', '饭店', '2015-05-26 14:52:49', '1'); +INSERT INTO `tb_tags` VALUES ('79', '335', '美食', '2015-05-26 14:52:49', '1'); +INSERT INTO `tb_tags` VALUES ('80', '334', '大鸭梨', '2015-05-26 14:52:54', '1'); +INSERT INTO `tb_tags` VALUES ('81', '334', '饭店', '2015-05-26 14:52:54', '1'); +INSERT INTO `tb_tags` VALUES ('82', '334', '美食', '2015-05-26 14:52:54', '1'); +INSERT INTO `tb_tags` VALUES ('83', '342', '美食', '2015-05-26 14:53:01', '1'); +INSERT INTO `tb_tags` VALUES ('84', '342', '老家肉饼', '2015-05-26 14:53:01', '1'); +INSERT INTO `tb_tags` VALUES ('85', '342', '饭店', '2015-05-26 14:53:01', '1'); +INSERT INTO `tb_tags` VALUES ('88', '341', '顶风针', '2015-05-26 14:55:38', '1'); +INSERT INTO `tb_tags` VALUES ('89', '341', '蛋糕店', '2015-05-26 14:55:38', '1'); +INSERT INTO `tb_tags` VALUES ('96', '340', '饭店', '2015-05-26 16:01:38', '1'); +INSERT INTO `tb_tags` VALUES ('97', '340', '美食', '2015-05-26 16:01:38', '1'); +INSERT INTO `tb_tags` VALUES ('98', '340', '新新包子铺', '2015-05-26 16:01:38', '1'); +INSERT INTO `tb_tags` VALUES ('99', '339', '酒店', '2015-05-26 16:03:40', '1'); +INSERT INTO `tb_tags` VALUES ('100', '339', '今天假日酒店', '2015-05-26 16:03:40', '1'); +INSERT INTO `tb_tags` VALUES ('101', '339', '饭店', '2015-05-26 16:03:40', '1'); +INSERT INTO `tb_tags` VALUES ('102', '338', '宾馆', '2015-05-26 16:09:18', '1'); +INSERT INTO `tb_tags` VALUES ('103', '338', '龙泉宾馆', '2015-05-26 16:09:18', '1'); +INSERT INTO `tb_tags` VALUES ('104', '336', '晨光饭店', '2015-05-26 16:09:58', '1'); +INSERT INTO `tb_tags` VALUES ('105', '336', '饭店', '2015-05-26 16:09:58', '1'); +INSERT INTO `tb_tags` VALUES ('108', '337', '潭柘嘉福饭店', '2015-05-26 16:12:13', '1'); +INSERT INTO `tb_tags` VALUES ('109', '337', '饭店', '2015-05-26 16:12:13', '1'); +INSERT INTO `tb_tags` VALUES ('126', '329', '百花山', '2015-05-26 16:31:32', '1'); +INSERT INTO `tb_tags` VALUES ('127', '329', '旅游', '2015-05-26 16:31:32', '1'); +INSERT INTO `tb_tags` VALUES ('128', '330', '爨底下', '2015-05-26 16:32:10', '1'); +INSERT INTO `tb_tags` VALUES ('129', '330', '旅游', '2015-05-26 16:32:10', '1'); +INSERT INTO `tb_tags` VALUES ('130', '331', '灵山', '2015-05-26 16:34:18', '1'); +INSERT INTO `tb_tags` VALUES ('131', '331', '旅游', '2015-05-26 16:34:18', '1'); +INSERT INTO `tb_tags` VALUES ('132', '332', '旅游', '2015-05-26 16:34:54', '1'); +INSERT INTO `tb_tags` VALUES ('133', '332', '龙门涧', '2015-05-26 16:34:54', '1'); +INSERT INTO `tb_tags` VALUES ('134', '332', '旅游', '2015-05-26 16:34:54', '1'); +INSERT INTO `tb_tags` VALUES ('137', '333', '妙峰山', '2015-05-26 16:35:46', '1'); +INSERT INTO `tb_tags` VALUES ('138', '333', '旅游', '2015-05-26 16:35:46', '1'); +INSERT INTO `tb_tags` VALUES ('139', '328', '双龙峡', '2015-05-26 16:44:36', '1'); +INSERT INTO `tb_tags` VALUES ('140', '328', '旅游', '2015-05-26 16:44:36', '1'); +INSERT INTO `tb_tags` VALUES ('141', '391', '2. 博文内容尽量控制在1200个文字内', '2015-06-20 16:59:29', '2'); +INSERT INTO `tb_tags` VALUES ('142', '391', '内容合法健康', '2015-06-20 16:59:29', '2'); +INSERT INTO `tb_tags` VALUES ('143', '391', '否则可能会被删除。2. 博文内容尽量控制在1200个文字内', '2015-06-20 16:59:29', '2'); +INSERT INTO `tb_tags` VALUES ('144', '391', '内容合法健康', '2015-06-20 16:59:29', '2'); +INSERT INTO `tb_tags` VALUES ('145', '391', '否则可能会被删除。2. 博文内容尽量控制在1200个文字内', '2015-06-20 16:59:29', '2'); +INSERT INTO `tb_tags` VALUES ('146', '392', '123', '2015-06-20 18:31:13', '2'); +INSERT INTO `tb_tags` VALUES ('147', '383', '123', '2015-06-20 18:33:14', '2'); +INSERT INTO `tb_tags` VALUES ('151', '396', '测44', '2015-06-20 21:48:59', '2'); +INSERT INTO `tb_tags` VALUES ('152', '397', '测试', '2015-06-20 21:52:02', '2'); +INSERT INTO `tb_tags` VALUES ('153', '112', 'S1线', '2015-08-16 19:24:15', '1'); +INSERT INTO `tb_tags` VALUES ('155', '359', '福鼎公园', '2015-09-21 22:37:54', '1'); +INSERT INTO `tb_tags` VALUES ('156', '359', '公园', '2015-09-21 22:37:54', '1'); +INSERT INTO `tb_tags` VALUES ('3021', '3236', 'java', '2015-05-19 15:30:43', '1'); +INSERT INTO `tb_tags` VALUES ('3022', '3235', 'java', '2015-05-19 15:30:53', '1'); +INSERT INTO `tb_tags` VALUES ('3023', '3235', 'java', '2015-05-19 15:30:53', '1'); +INSERT INTO `tb_tags` VALUES ('3024', '3231', 'java', '2015-05-19 15:31:31', '1'); +INSERT INTO `tb_tags` VALUES ('3025', '3227', 'java', '2015-05-19 15:31:36', '1'); +INSERT INTO `tb_tags` VALUES ('3026', '3224', 'java', '2015-05-19 15:31:44', '1'); +INSERT INTO `tb_tags` VALUES ('3027', '3223', 'java', '2015-05-19 15:31:48', '1'); +INSERT INTO `tb_tags` VALUES ('3028', '3221', 'java', '2015-05-19 15:31:55', '1'); +INSERT INTO `tb_tags` VALUES ('3032', '3216', '数据库', '2015-05-19 15:32:20', '1'); +INSERT INTO `tb_tags` VALUES ('3033', '3217', '数据库', '2015-05-19 15:33:03', '1'); +INSERT INTO `tb_tags` VALUES ('3034', '3218', '数据库', '2015-05-19 15:33:07', '1'); +INSERT INTO `tb_tags` VALUES ('3035', '3219', '数据库', '2015-05-19 15:33:12', '1'); +INSERT INTO `tb_tags` VALUES ('3037', '3248', 'linux', '2015-05-19 15:33:39', '1'); +INSERT INTO `tb_tags` VALUES ('3038', '3252', 'linux', '2015-05-19 15:33:51', '1'); +INSERT INTO `tb_tags` VALUES ('3039', '3252', '数据库', '2015-05-19 15:33:51', '1'); +INSERT INTO `tb_tags` VALUES ('3041', '3254', 'linux', '2015-05-19 15:33:58', '1'); +INSERT INTO `tb_tags` VALUES ('3060', '3255', 'java', '2015-05-19 16:17:35', '1'); +INSERT INTO `tb_tags` VALUES ('3068', '3257', 'windows', '2015-05-28 12:58:10', '1'); +INSERT INTO `tb_tags` VALUES ('3070', '3253', 'linux', '2015-06-01 13:03:33', '1'); +INSERT INTO `tb_tags` VALUES ('3079', '3258', 'Jquery', '2015-06-01 13:24:02', '1'); +INSERT INTO `tb_tags` VALUES ('3085', '3259', 'jquery', '2015-06-01 13:29:19', '1'); +INSERT INTO `tb_tags` VALUES ('3107', '3001', '生活', '2016-01-14 23:53:02', '1'); +INSERT INTO `tb_tags` VALUES ('3109', '3243', '数据库', '2016-01-22 17:30:37', '1'); +INSERT INTO `tb_tags` VALUES ('3110', '3265', '开发', '2016-02-19 11:49:55', '1'); +INSERT INTO `tb_tags` VALUES ('3116', '3267', '数据库', '2016-02-19 12:57:14', '1'); +INSERT INTO `tb_tags` VALUES ('3120', '3268', 'chrome', '2016-02-25 16:46:20', '1'); +INSERT INTO `tb_tags` VALUES ('3123', '3270', '开发', '2016-03-04 09:35:28', '1'); +INSERT INTO `tb_tags` VALUES ('3127', '3271', '开发', '2016-03-06 15:16:25', '1'); +INSERT INTO `tb_tags` VALUES ('3156', '3269', '魔术', '2016-04-14 14:47:53', '1'); +INSERT INTO `tb_tags` VALUES ('3160', '3282', 'javascript', '2016-04-18 02:15:12', '1'); +INSERT INTO `tb_tags` VALUES ('3162', '3283', 'java', '2016-04-18 22:32:29', '1'); +INSERT INTO `tb_tags` VALUES ('3164', '3284', 'javascript', '2016-04-19 14:19:26', '1'); +INSERT INTO `tb_tags` VALUES ('3165', '3285', '数据库', '2016-04-19 14:21:52', '1'); +INSERT INTO `tb_tags` VALUES ('3166', '3285', '数据库', '2016-04-19 14:21:52', '1'); +INSERT INTO `tb_tags` VALUES ('3167', '3286', '数据库', '2016-04-19 14:25:08', '1'); +INSERT INTO `tb_tags` VALUES ('3168', '3286', '数据库', '2016-04-19 14:25:08', '1'); +INSERT INTO `tb_tags` VALUES ('3170', '3287', 'javascript', '2016-04-20 02:35:53', '1'); +INSERT INTO `tb_tags` VALUES ('3171', '3288', 'jquery', '2016-04-20 23:00:17', '1'); +INSERT INTO `tb_tags` VALUES ('3172', '3288', 'javascript', '2016-04-20 23:00:17', '1'); +INSERT INTO `tb_tags` VALUES ('4003', '4010', '数据库', '2013-09-10 09:13:00', '1'); +INSERT INTO `tb_tags` VALUES ('4004', '4010', '数据库', '2013-09-10 09:13:00', '1'); +INSERT INTO `tb_tags` VALUES ('4006', '4011', 'java', '2013-05-21 12:40:00', '1'); +INSERT INTO `tb_tags` VALUES ('4007', '4012', '数据库', '2013-04-23 09:01:00', '1'); +INSERT INTO `tb_tags` VALUES ('4008', '4014', 'java', '2013-01-08 14:58:00', '1'); +INSERT INTO `tb_tags` VALUES ('4011', '4014', 'javascript', '2013-01-08 14:58:00', '1'); +INSERT INTO `tb_tags` VALUES ('4013', '4016', '数据库', '2012-11-29 23:37:00', '1'); +INSERT INTO `tb_tags` VALUES ('4016', '4018', 'jquery', '2012-09-25 10:05:00', '1'); +INSERT INTO `tb_tags` VALUES ('4020', '4019', 'windows', '2012-09-18 15:04:00', '1'); +INSERT INTO `tb_tags` VALUES ('4022', '4020', 'java', '2012-09-18 11:39:00', '1'); +INSERT INTO `tb_tags` VALUES ('4025', '4020', 'editplus', '2012-09-18 11:39:00', '1'); +INSERT INTO `tb_tags` VALUES ('4026', '4021', 'java', '2012-09-09 22:31:00', '1'); +INSERT INTO `tb_tags` VALUES ('4030', '4023', '数据库', '2012-09-05 09:23:00', '1'); +INSERT INTO `tb_tags` VALUES ('4035', '4024', '数据库', '2012-09-05 09:21:00', '1'); +INSERT INTO `tb_tags` VALUES ('4040', '4025', 'java', '2012-09-02 22:46:00', '1'); +INSERT INTO `tb_tags` VALUES ('4044', '4026', '数据库', '2012-08-04 19:56:00', '1'); +INSERT INTO `tb_tags` VALUES ('4047', '4027', 'javascript', '2012-07-12 01:12:00', '1'); +INSERT INTO `tb_tags` VALUES ('4049', '4028', '数据库', '2012-06-16 16:06:00', '1'); +INSERT INTO `tb_tags` VALUES ('4051', '4029', '数据库', '2012-06-16 16:05:00', '1'); +INSERT INTO `tb_tags` VALUES ('4056', '4030', 'java', '2012-06-13 00:12:00', '1'); +INSERT INTO `tb_tags` VALUES ('4058', '4032', 'java', '2012-06-12 22:57:00', '1'); +INSERT INTO `tb_tags` VALUES ('4061', '4033', 'java', '2012-06-12 22:56:00', '1'); +INSERT INTO `tb_tags` VALUES ('4065', '4034', '数据库', '2012-05-30 11:56:00', '1'); +INSERT INTO `tb_tags` VALUES ('4067', '4035', 'java', '2012-05-13 23:01:00', '1'); +INSERT INTO `tb_tags` VALUES ('4070', '4036', 'java', '2012-05-13 02:19:00', '1'); +INSERT INTO `tb_tags` VALUES ('4072', '4037', 'java', '2012-04-11 13:24:00', '1'); +INSERT INTO `tb_tags` VALUES ('4076', '4038', 'java', '2012-04-05 23:03:00', '1'); +INSERT INTO `tb_tags` VALUES ('4078', '4039', 'java', '2012-04-05 22:38:00', '1'); +INSERT INTO `tb_tags` VALUES ('4081', '4040', 'java', '2012-04-04 21:10:00', '1'); +INSERT INTO `tb_tags` VALUES ('4083', '4041', 'java', '2012-03-12 23:14:00', '1'); +INSERT INTO `tb_tags` VALUES ('4086', '4042', 'java', '2012-02-27 15:49:00', '1'); +INSERT INTO `tb_tags` VALUES ('4091', '4043', 'java', '2012-02-23 20:50:00', '1'); +INSERT INTO `tb_tags` VALUES ('4095', '4044', 'jquery', '2012-02-21 17:45:00', '1'); +INSERT INTO `tb_tags` VALUES ('4100', '4045', 'jquery', '2012-02-19 01:59:00', '1'); +INSERT INTO `tb_tags` VALUES ('4105', '4046', 'java', '2012-02-19 01:52:00', '1'); +INSERT INTO `tb_tags` VALUES ('4108', '4047', 'java', '2012-02-17 00:00:00', '1'); +INSERT INTO `tb_tags` VALUES ('4111', '4048', '数据库', '2012-02-16 08:19:00', '1'); +INSERT INTO `tb_tags` VALUES ('4116', '4049', 'jquery', '2012-02-15 09:54:00', '1'); +INSERT INTO `tb_tags` VALUES ('4121', '4050', 'java', '2012-02-15 09:40:00', '1'); +INSERT INTO `tb_tags` VALUES ('4124', '4051', 'java', '2012-02-11 20:22:00', '1'); +INSERT INTO `tb_tags` VALUES ('4128', '4052', 'javascript', '2012-02-09 13:02:00', '1'); +INSERT INTO `tb_tags` VALUES ('4133', '4053', '数据库', '2012-02-09 01:11:00', '1'); +INSERT INTO `tb_tags` VALUES ('4135', '4054', 'java', '2012-02-08 15:36:00', '1'); +INSERT INTO `tb_tags` VALUES ('4140', '4055', 'javascript', '2012-02-07 17:48:00', '1'); +INSERT INTO `tb_tags` VALUES ('4144', '4056', 'java', '2012-01-20 16:01:00', '1'); +INSERT INTO `tb_tags` VALUES ('4147', '4057', 'java', '2012-01-20 11:59:00', '1'); +INSERT INTO `tb_tags` VALUES ('4150', '4058', 'java', '2012-01-19 16:51:00', '1'); +INSERT INTO `tb_tags` VALUES ('4154', '4059', 'html', '2012-01-19 13:05:00', '1'); +INSERT INTO `tb_tags` VALUES ('4158', '4060', 'html', '2012-01-19 08:17:00', '1'); +INSERT INTO `tb_tags` VALUES ('4162', '4061', 'java', '2012-01-13 10:19:00', '1'); +INSERT INTO `tb_tags` VALUES ('4166', '4062', 'java', '2012-01-12 12:44:00', '1'); +INSERT INTO `tb_tags` VALUES ('4173', '4063', 'java', '2012-01-12 11:07:00', '1'); +INSERT INTO `tb_tags` VALUES ('4174', '4064', 'java', '2012-01-11 12:06:00', '1'); +INSERT INTO `tb_tags` VALUES ('4178', '4065', 'java', '2012-01-11 11:37:00', '1'); +INSERT INTO `tb_tags` VALUES ('4182', '4066', 'html', '2012-01-11 10:10:00', '1'); +INSERT INTO `tb_tags` VALUES ('4184', '4067', 'java', '2012-01-11 10:00:00', '1'); +INSERT INTO `tb_tags` VALUES ('4189', '4068', 'java', '2012-01-09 11:43:00', '1'); +INSERT INTO `tb_tags` VALUES ('4191', '4068', 'html', '2012-01-09 11:43:00', '1'); +INSERT INTO `tb_tags` VALUES ('4193', '4069', 'java', '2011-12-30 15:43:00', '1'); +INSERT INTO `tb_tags` VALUES ('4196', '4070', 'java', '2011-12-19 10:36:00', '1'); +INSERT INTO `tb_tags` VALUES ('4198', '4071', 'java', '2011-12-15 15:14:00', '1'); +INSERT INTO `tb_tags` VALUES ('4202', '4072', '影视', '2011-12-15 13:17:00', '1'); +INSERT INTO `tb_tags` VALUES ('4205', '4073', 'oralce', '2011-12-14 11:40:00', '1'); +INSERT INTO `tb_tags` VALUES ('4207', '4074', '数据库', '2011-12-14 11:38:00', '1'); +INSERT INTO `tb_tags` VALUES ('4210', '4075', '数据库', '2011-12-14 11:36:00', '1'); +INSERT INTO `tb_tags` VALUES ('4213', '4076', '数据库', '2011-12-14 11:17:00', '1'); +INSERT INTO `tb_tags` VALUES ('4218', '4077', 'java', '2011-12-09 11:26:00', '1'); +INSERT INTO `tb_tags` VALUES ('4221', '4078', 'java', '2011-12-09 11:19:00', '1'); +INSERT INTO `tb_tags` VALUES ('4224', '4079', 'windows', '2011-12-05 10:58:00', '1'); +INSERT INTO `tb_tags` VALUES ('4228', '4080', 'windows', '2011-12-05 09:52:00', '1'); +INSERT INTO `tb_tags` VALUES ('4229', '4081', 'java', '2011-12-02 15:42:00', '1'); +INSERT INTO `tb_tags` VALUES ('4233', '4082', 'c', '2011-12-02 10:03:00', '1'); +INSERT INTO `tb_tags` VALUES ('4239', '4084', 'java', '2011-11-17 11:14:00', '1'); +INSERT INTO `tb_tags` VALUES ('4242', '4085', '生活', '2011-11-10 09:45:00', '1'); +INSERT INTO `tb_tags` VALUES ('4245', '4086', '服务器', '2011-11-08 13:46:00', '1'); +INSERT INTO `tb_tags` VALUES ('4249', '4087', '服务器', '2011-11-08 11:07:00', '1'); +INSERT INTO `tb_tags` VALUES ('4252', '4088', 'expect', '2011-11-08 10:34:00', '1'); +INSERT INTO `tb_tags` VALUES ('4256', '4089', 'expect', '2011-11-08 10:29:00', '1'); +INSERT INTO `tb_tags` VALUES ('4261', '4090', 'java', '2011-10-27 10:04:00', '1'); +INSERT INTO `tb_tags` VALUES ('4264', '4091', 'java', '2011-10-15 22:15:00', '1'); +INSERT INTO `tb_tags` VALUES ('4267', '4092', 'java', '2011-10-15 22:01:00', '1'); +INSERT INTO `tb_tags` VALUES ('4271', '4093', 'java', '2011-10-12 11:30:00', '1'); +INSERT INTO `tb_tags` VALUES ('4274', '4094', 'java', '2011-10-12 10:03:00', '1'); +INSERT INTO `tb_tags` VALUES ('4277', '4095', 'java', '2011-10-12 09:53:00', '1'); +INSERT INTO `tb_tags` VALUES ('4278', '4096', 'java', '2011-10-08 13:22:00', '1'); +INSERT INTO `tb_tags` VALUES ('4282', '4097', 'java', '2011-10-08 13:09:00', '1'); +INSERT INTO `tb_tags` VALUES ('4286', '4098', 'java', '2011-10-08 12:22:00', '1'); +INSERT INTO `tb_tags` VALUES ('4290', '4099', 'java', '2011-09-08 11:13:00', '1'); +INSERT INTO `tb_tags` VALUES ('4295', '4100', 'windows', '2011-08-25 15:15:00', '1'); +INSERT INTO `tb_tags` VALUES ('4299', '4101', 'autoit', '2011-08-24 17:28:00', '1'); +INSERT INTO `tb_tags` VALUES ('4302', '4102', 'autoit', '2011-08-23 17:22:00', '1'); +INSERT INTO `tb_tags` VALUES ('4304', '4103', 'autoit', '2011-08-23 17:08:00', '1'); +INSERT INTO `tb_tags` VALUES ('4307', '4104', 'autoit', '2011-08-23 15:09:00', '1'); +INSERT INTO `tb_tags` VALUES ('4311', '4105', 'python', '2011-08-23 11:17:00', '1'); +INSERT INTO `tb_tags` VALUES ('4315', '4106', 'python', '2011-08-23 11:15:00', '1'); +INSERT INTO `tb_tags` VALUES ('4319', '4107', 'python', '2011-08-23 11:13:00', '1'); +INSERT INTO `tb_tags` VALUES ('4323', '4108', 'python', '2011-08-23 10:59:00', '1'); +INSERT INTO `tb_tags` VALUES ('4328', '4109', 'python', '2011-08-23 10:33:00', '1'); +INSERT INTO `tb_tags` VALUES ('4333', '4110', 'python', '2011-08-23 10:27:00', '1'); +INSERT INTO `tb_tags` VALUES ('4337', '4111', 'python', '2011-08-23 09:14:00', '1'); +INSERT INTO `tb_tags` VALUES ('4343', '4112', 'java', '2011-08-18 10:20:00', '1'); +INSERT INTO `tb_tags` VALUES ('4345', '4113', 'java', '2011-08-18 09:58:00', '1'); +INSERT INTO `tb_tags` VALUES ('4348', '4114', 'photoshop', '2011-08-18 09:32:00', '1'); +INSERT INTO `tb_tags` VALUES ('4350', '4115', 'javascript', '2011-08-16 17:00:00', '1'); +INSERT INTO `tb_tags` VALUES ('4353', '4116', 'javascript', '2011-08-16 13:38:00', '1'); +INSERT INTO `tb_tags` VALUES ('4357', '4117', 'java', '2011-08-15 10:11:00', '1'); +INSERT INTO `tb_tags` VALUES ('4569', '3109', 'java', '2016-04-21 22:20:29', '1'); +INSERT INTO `tb_tags` VALUES ('4570', '3109', '项目', '2016-04-21 22:20:29', '1'); +INSERT INTO `tb_tags` VALUES ('4571', '3109', 'jflyfox', '2016-04-21 22:20:29', '1'); +INSERT INTO `tb_tags` VALUES ('4572', '3107', 'JavaFX', '2016-04-21 22:20:36', '1'); +INSERT INTO `tb_tags` VALUES ('4573', '3107', 'java', '2016-04-21 22:20:36', '1'); +INSERT INTO `tb_tags` VALUES ('4574', '3107', '项目', '2016-04-21 22:20:36', '1'); +INSERT INTO `tb_tags` VALUES ('4575', '3107', 'jflyfox', '2016-04-21 22:20:36', '1'); +INSERT INTO `tb_tags` VALUES ('4576', '3103', 'java', '2016-04-21 22:20:42', '1'); +INSERT INTO `tb_tags` VALUES ('4577', '3103', '项目', '2016-04-21 22:20:42', '1'); +INSERT INTO `tb_tags` VALUES ('4578', '3103', 'jflyfox', '2016-04-21 22:20:42', '1'); +INSERT INTO `tb_tags` VALUES ('4579', '3116', 'java', '2016-04-21 22:20:46', '1'); +INSERT INTO `tb_tags` VALUES ('4580', '3116', '项目', '2016-04-21 22:20:46', '1'); +INSERT INTO `tb_tags` VALUES ('4581', '3116', 'jflyfox', '2016-04-21 22:20:46', '1'); +INSERT INTO `tb_tags` VALUES ('4582', '3117', 'java', '2016-04-21 22:20:50', '1'); +INSERT INTO `tb_tags` VALUES ('4583', '3117', '项目', '2016-04-21 22:20:50', '1'); +INSERT INTO `tb_tags` VALUES ('4584', '3117', 'jflyfox', '2016-04-21 22:20:50', '1'); +INSERT INTO `tb_tags` VALUES ('4585', '3108', 'JavaFX', '2016-04-21 22:20:55', '1'); +INSERT INTO `tb_tags` VALUES ('4586', '3108', 'java', '2016-04-21 22:20:55', '1'); +INSERT INTO `tb_tags` VALUES ('4587', '3108', '项目', '2016-04-21 22:20:55', '1'); +INSERT INTO `tb_tags` VALUES ('4588', '3108', 'jflyfox', '2016-04-21 22:20:55', '1'); +INSERT INTO `tb_tags` VALUES ('4589', '3115', 'JavaFX', '2016-04-21 22:21:00', '1'); +INSERT INTO `tb_tags` VALUES ('4590', '3115', 'java', '2016-04-21 22:21:00', '1'); +INSERT INTO `tb_tags` VALUES ('4591', '3115', '项目', '2016-04-21 22:21:00', '1'); +INSERT INTO `tb_tags` VALUES ('4592', '3115', 'jflyfox', '2016-04-21 22:21:00', '1'); +INSERT INTO `tb_tags` VALUES ('4593', '3118', 'java', '2016-04-21 22:21:06', '1'); +INSERT INTO `tb_tags` VALUES ('4594', '3118', '项目', '2016-04-21 22:21:06', '1'); +INSERT INTO `tb_tags` VALUES ('4595', '3118', 'jflyfox', '2016-04-21 22:21:06', '1'); +INSERT INTO `tb_tags` VALUES ('4596', '3119', 'java', '2016-04-21 22:21:12', '1'); +INSERT INTO `tb_tags` VALUES ('4597', '3119', '项目', '2016-04-21 22:21:12', '1'); +INSERT INTO `tb_tags` VALUES ('4598', '3119', 'jflyfox', '2016-04-21 22:21:12', '1'); +INSERT INTO `tb_tags` VALUES ('4599', '3249', 'java', '2016-04-21 22:21:20', '1'); +INSERT INTO `tb_tags` VALUES ('4600', '3249', '项目', '2016-04-21 22:21:20', '1'); +INSERT INTO `tb_tags` VALUES ('4601', '3249', 'jflyfox', '2016-04-21 22:21:20', '1'); +INSERT INTO `tb_tags` VALUES ('4602', '3249', '微信', '2016-04-21 22:21:20', '1'); +INSERT INTO `tb_tags` VALUES ('4603', '3120', 'JavaFX', '2016-04-21 22:21:28', '1'); +INSERT INTO `tb_tags` VALUES ('4604', '3120', 'java', '2016-04-21 22:21:28', '1'); +INSERT INTO `tb_tags` VALUES ('4605', '3120', '项目', '2016-04-21 22:21:28', '1'); +INSERT INTO `tb_tags` VALUES ('4606', '3120', 'jflyfox', '2016-04-21 22:21:28', '1'); +INSERT INTO `tb_tags` VALUES ('4607', '3228', '英语', '2016-04-21 22:21:40', '1'); +INSERT INTO `tb_tags` VALUES ('4608', '3228', 'english', '2016-04-21 22:21:40', '1'); +INSERT INTO `tb_tags` VALUES ('4611', '3206', '英语', '2016-04-21 22:21:47', '1'); +INSERT INTO `tb_tags` VALUES ('4612', '3206', 'english', '2016-04-21 22:21:47', '1'); +INSERT INTO `tb_tags` VALUES ('4613', '3112', '英语', '2016-04-21 22:21:50', '1'); +INSERT INTO `tb_tags` VALUES ('4614', '3112', 'english', '2016-04-21 22:21:50', '1'); +INSERT INTO `tb_tags` VALUES ('4615', '3111', '英语', '2016-04-21 22:21:53', '1'); +INSERT INTO `tb_tags` VALUES ('4616', '3111', 'english', '2016-04-21 22:21:53', '1'); +INSERT INTO `tb_tags` VALUES ('4617', '3105', '英语', '2016-04-21 22:21:56', '1'); +INSERT INTO `tb_tags` VALUES ('4618', '3105', 'english', '2016-04-21 22:21:56', '1'); +INSERT INTO `tb_tags` VALUES ('4619', '3266', '生活', '2016-04-21 22:22:08', '1'); +INSERT INTO `tb_tags` VALUES ('4620', '3263', '生活', '2016-04-21 22:22:36', '1'); +INSERT INTO `tb_tags` VALUES ('4621', '3263', '美食', '2016-04-21 22:22:36', '1'); +INSERT INTO `tb_tags` VALUES ('4622', '3262', '生活', '2016-04-21 22:22:41', '1'); +INSERT INTO `tb_tags` VALUES ('4623', '3262', '美食', '2016-04-21 22:22:41', '1'); +INSERT INTO `tb_tags` VALUES ('4624', '3261', '生活', '2016-04-21 22:22:45', '1'); +INSERT INTO `tb_tags` VALUES ('4625', '3261', '美食', '2016-04-21 22:22:45', '1'); +INSERT INTO `tb_tags` VALUES ('4626', '3260', '生活', '2016-04-21 22:22:54', '1'); +INSERT INTO `tb_tags` VALUES ('4627', '3256', '生活', '2016-04-21 22:23:03', '1'); +INSERT INTO `tb_tags` VALUES ('4628', '3245', '孕婴', '2016-04-21 22:23:26', '1'); +INSERT INTO `tb_tags` VALUES ('4629', '3244', '影视', '2016-04-21 22:23:49', '1'); +INSERT INTO `tb_tags` VALUES ('4634', '3242', '生活', '2016-04-21 22:24:14', '1'); +INSERT INTO `tb_tags` VALUES ('4635', '3242', '美食', '2016-04-21 22:24:14', '1'); +INSERT INTO `tb_tags` VALUES ('4636', '3242', '孕婴', '2016-04-21 22:24:14', '1'); +INSERT INTO `tb_tags` VALUES ('4637', '3241', '生活', '2016-04-21 22:24:19', '1'); +INSERT INTO `tb_tags` VALUES ('4638', '3241', '美食', '2016-04-21 22:24:19', '1'); +INSERT INTO `tb_tags` VALUES ('4639', '3241', '孕婴', '2016-04-21 22:24:19', '1'); +INSERT INTO `tb_tags` VALUES ('4640', '3240', '新闻', '2016-04-21 22:24:27', '1'); +INSERT INTO `tb_tags` VALUES ('4641', '3238', '项目', '2016-04-21 22:24:38', '1'); +INSERT INTO `tb_tags` VALUES ('4642', '3237', '音乐', '2016-04-21 22:24:53', '1'); +INSERT INTO `tb_tags` VALUES ('4644', '3233', '旅游', '2016-04-21 22:25:27', '1'); +INSERT INTO `tb_tags` VALUES ('4645', '3232', '生活', '2016-04-21 22:25:36', '1'); +INSERT INTO `tb_tags` VALUES ('4646', '3230', '影视', '2016-04-21 22:25:44', '1'); +INSERT INTO `tb_tags` VALUES ('4647', '3229', '生活', '2016-04-21 22:25:51', '1'); +INSERT INTO `tb_tags` VALUES ('4648', '3212', '孕婴', '2016-04-21 22:25:58', '1'); +INSERT INTO `tb_tags` VALUES ('4649', '3220', '生活', '2016-04-21 22:26:04', '1'); +INSERT INTO `tb_tags` VALUES ('4650', '3208', '生活', '2016-04-21 22:26:09', '1'); +INSERT INTO `tb_tags` VALUES ('4651', '3207', '工作', '2016-04-21 22:26:16', '1'); +INSERT INTO `tb_tags` VALUES ('4652', '3203', '开发', '2016-04-21 22:26:36', '1'); +INSERT INTO `tb_tags` VALUES ('4653', '3114', '开发', '2016-04-21 22:26:44', '1'); +INSERT INTO `tb_tags` VALUES ('4654', '3113', '音乐', '2016-04-21 22:26:50', '1'); +INSERT INTO `tb_tags` VALUES ('4655', '4009', '生活', '2016-04-21 22:27:50', '1'); +INSERT INTO `tb_tags` VALUES ('4658', '3209', '三种人', '2016-04-23 10:01:35', '1'); +INSERT INTO `tb_tags` VALUES ('4660', '3272', 'flume', '2016-04-23 15:57:48', '1'); +INSERT INTO `tb_tags` VALUES ('4662', '3273', 'flume', '2016-04-23 16:44:47', '1'); +INSERT INTO `tb_tags` VALUES ('4664', '3275', 'flume', '2016-04-23 16:52:55', '1'); +INSERT INTO `tb_tags` VALUES ('4687', '3213', '英语', '2016-05-05 22:22:04', '1'); +INSERT INTO `tb_tags` VALUES ('4688', '3213', 'english', '2016-05-05 22:22:04', '1'); +INSERT INTO `tb_tags` VALUES ('4718', '3239', '影视', '2016-06-10 00:01:52', '1'); +INSERT INTO `tb_tags` VALUES ('4721', '3234', 'java', '2016-06-12 00:05:32', '1'); +INSERT INTO `tb_tags` VALUES ('4725', '4013', 'java', '2016-06-13 10:12:47', '1'); +INSERT INTO `tb_tags` VALUES ('4726', '4013', 'tomcat', '2016-06-13 10:12:47', '1'); +INSERT INTO `tb_tags` VALUES ('4727', '4017', 'java', '2016-06-13 10:12:53', '1'); +INSERT INTO `tb_tags` VALUES ('4728', '4017', 'tomcat', '2016-06-13 10:12:53', '1'); +INSERT INTO `tb_tags` VALUES ('4729', '4083', 'html', '2016-06-13 10:13:00', '1'); +INSERT INTO `tb_tags` VALUES ('4730', '4083', 'java', '2016-06-13 10:13:00', '1'); +INSERT INTO `tb_tags` VALUES ('4731', '4083', 'tomcat', '2016-06-13 10:13:00', '1'); +INSERT INTO `tb_tags` VALUES ('4732', '4244', 'jfinal cms', '2017-01-21 23:36:31', '1'); +INSERT INTO `tb_tags` VALUES ('4733', '4244', 'jfinal', '2017-01-21 23:36:32', '1'); +INSERT INTO `tb_tags` VALUES ('4734', '4244', 'beetl', '2017-01-21 23:36:32', '1'); +INSERT INTO `tb_tags` VALUES ('4735', '4245', 'jfinal', '2017-01-21 23:38:50', '1'); +INSERT INTO `tb_tags` VALUES ('4736', '4246', 'beetl', '2017-01-21 23:39:36', '1'); +INSERT INTO `tb_tags` VALUES ('4739', '4247', 'mysql', '2017-01-21 23:43:22', '1'); +INSERT INTO `tb_tags` VALUES ('4740', '4247', '数据库', '2017-01-21 23:43:22', '1'); +INSERT INTO `tb_tags` VALUES ('4741', '4248', '博客', '2017-01-22 00:01:13', '1'); +INSERT INTO `tb_tags` VALUES ('4742', '4249', '资讯', '2017-01-22 00:02:47', '1'); +INSERT INTO `tb_tags` VALUES ('4743', '4250', '论坛', '2017-01-22 00:04:44', '1'); +INSERT INTO `tb_tags` VALUES ('4744', '4251', '网站', '2017-01-22 00:06:13', '1'); + +-- ---------------------------- +-- Table structure for tb_video +-- ---------------------------- +DROP TABLE IF EXISTS `tb_video`; +CREATE TABLE `tb_video` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', + `album_id` int(11) DEFAULT '1' COMMENT '专辑ID', + `album_name` varchar(200) DEFAULT '' COMMENT '专辑名称', + `name` varchar(200) DEFAULT '' COMMENT '视频名称', + `video_url` varchar(256) DEFAULT NULL COMMENT '点播视频路径', + `video_net_url` varchar(256) DEFAULT NULL COMMENT '网络视频路径', + `thumbnail` varchar(256) DEFAULT '' COMMENT '缩略图', + `ext` varchar(20) DEFAULT '' COMMENT '扩展名', + `resolution` varchar(20) DEFAULT '' COMMENT '分辨率', + `status` int(11) DEFAULT '1' COMMENT '状态//ra dio/2,隐藏,1,显示', + `is_comment` int(11) DEFAULT '1' COMMENT '是否评论//radio/2,否,1,是', + `is_recommend` int(11) DEFAULT '2' COMMENT '是否推荐:2 否 1 是', + `sort` int(11) DEFAULT '1' COMMENT '排序', + `remark` varchar(400) DEFAULT NULL COMMENT '备注', + `publish_time` varchar(64) DEFAULT NULL COMMENT '发布时间', + `publish_user` varchar(64) DEFAULT '1' COMMENT '发布者', + `update_time` varchar(64) DEFAULT NULL COMMENT '更新时间', + `update_id` int(11) DEFAULT '0' COMMENT '更新者', + `create_time` varchar(64) DEFAULT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=24 DEFAULT CHARSET=utf8 COMMENT='视频'; + +-- ---------------------------- +-- Records of tb_video +-- ---------------------------- +INSERT INTO `tb_video` VALUES ('1', '5', '娱乐', '娱乐', 'download\\video\\20160217_094403_874395.mp4', null, 'http://i11.tietuku.cn/80643b0edf91c5d5.jpg', 'mp4', '', '1', '2', '1', '9', null, '2016-02-17', '系统管理员', '2016-02-17 09:35:53', '1', '2016-02-17 09:35:53', '1'); +INSERT INTO `tb_video` VALUES ('2', '5', '娱乐', '娱乐1', 'download\\video\\20160217_094403_874395.mp4', 'http://content.12530.com/media/v/20080416/100221.flv', 'http://i11.tietuku.cn/3705a49b952e95f0.jpg', 'flv', '', '1', '1', '1', '10', null, '2016-02-19', '系统管理员', '2016-02-19 17:32:20', '1', '2016-02-19 17:32:20', '1'); +INSERT INTO `tb_video` VALUES ('3', '5', '娱乐', '娱乐2', 'download\\video\\20160217_094403_874395.mp4', 'http://content.12530.com/media/v/20080416/100222.flv', 'http://i11.tietuku.cn/d00be751ab792bae.jpg', 'flv', '', '1', '1', '2', '10', null, '2016-02-19', '系统管理员', '2016-02-19 17:32:31', '1', '2016-02-19 17:32:31', '1'); +INSERT INTO `tb_video` VALUES ('4', '5', '娱乐', '娱乐3', 'download\\video\\20160217_094403_874395.mp4', 'http://content.12530.com/media/v/20080416/100373.flv', 'http://i11.tietuku.cn/d261bf2348cbcec1.jpg', 'flv', '', '1', '1', '2', '10', null, '2016-02-19', '系统管理员', '2016-02-19 17:32:38', '1', '2016-02-19 17:32:38', '1'); +INSERT INTO `tb_video` VALUES ('5', '5', '娱乐', '娱乐4', 'download\\video\\20160217_094403_874395.mp4', 'http://content.12530.com/media/v/20080416/100225.flv', 'http://i13.tietuku.cn/a1a829bd0ec99b57.jpg', 'flv', '', '1', '1', '2', '10', null, '2016-02-19', '系统管理员', '2016-02-19 17:32:43', '1', '2016-02-19 17:32:43', '1'); +INSERT INTO `tb_video` VALUES ('6', '5', '娱乐', '娱乐5', 'download\\video\\20160217_094403_874395.mp4', 'http://content.12530.com/media/v/20080416/100235.flv', 'http://i13.tietuku.cn/638dbfb6ddcede91.jpg', 'flv', '', '1', '1', '2', '9', null, '2016-02-19', '系统管理员', '2016-02-19 17:32:50', '1', '2016-02-19 17:32:50', '1'); +INSERT INTO `tb_video` VALUES ('7', '5', '娱乐', '娱乐6', 'download\\video\\20160217_094403_874395.mp4', 'http://content.12530.com/media/v/20080416/100236.flv', 'http://i5.tietuku.cn/150941a559f04067.jpg', 'flv', '', '1', '1', '2', '10', null, '2016-02-19', '系统管理员', '2016-02-19 17:32:57', '1', '2016-02-19 17:32:57', '1'); +INSERT INTO `tb_video` VALUES ('8', '5', '娱乐', '娱乐7', 'download\\video\\20160217_094403_874395.mp4', 'http://content.12530.com/media/v/20080416/100237.flv', 'http://i11.tietuku.cn/84668a447c6effbc.jpg', 'flv', '', '1', '1', '2', '10', null, '2016-02-19', '系统管理员', '2016-02-19 17:33:02', '1', '2016-02-19 17:33:02', '1'); +INSERT INTO `tb_video` VALUES ('9', '5', '娱乐', '娱乐8', 'download\\video\\20160217_094403_874395.mp4', 'http://content.12530.com/media/v/20080416/100238.flv', 'http://i11.tietuku.cn/cb883f775bf9f86b.jpg', 'flv', '', '1', '1', '2', '10', null, '2016-02-19', '系统管理员', '2016-02-19 17:33:08', '1', '2016-02-19 17:33:08', '1'); +INSERT INTO `tb_video` VALUES ('10', '6', '新闻', '新闻1', null, 'http://content.12530.com/media/v/20080416/100061.flv', 'http://i4.tietuku.cn/4ff3ca1b9cf0358a.jpg', 'flv', '', '1', '1', '2', '10', null, '2016-02-20', '系统管理员', '2016-02-20 09:28:19', '1', '2016-02-20 09:28:19', '1'); +INSERT INTO `tb_video` VALUES ('11', '2', '电影', '电影1', null, 'http://content.12530.com/media/v/20080416/100051.flv', 'http://i12.tietuku.cn/e11c25401d5a72ef.jpg', 'flv', '', '1', '1', '2', '10', null, '2016-02-20', '系统管理员', '2016-02-20 09:41:58', '1', '2016-02-20 09:41:58', '1'); +INSERT INTO `tb_video` VALUES ('12', '2', '电影', '电影2', null, 'http://content.12530.com/media/v/20080416/100052.flv', 'http://i13.tietuku.cn/4512392c7337a433.jpg', 'flv', '', '1', '1', '2', '10', null, '2016-02-20', '系统管理员', '2016-02-20 09:42:52', '1', '2016-02-20 09:42:52', '1'); +INSERT INTO `tb_video` VALUES ('13', '1', '电视剧', '电视剧1', null, 'http://content.12530.com/media/v/20080416/100067.flv', 'http://i13.tietuku.cn/1254065a8c0200d3.jpg', 'flv', '', '1', '1', '2', '10', null, '2016-02-20', '系统管理员', '2016-02-20 09:43:36', '1', '2016-02-20 09:43:36', '1'); +INSERT INTO `tb_video` VALUES ('14', '3', '综艺', '综艺1', null, 'http://content.12530.com/media/v/20080416/100071.flv', 'http://i13.tietuku.cn/440847c1aa76fc5e.jpg', 'flv', '', '1', '1', '2', '10', null, '2016-02-20', '系统管理员', '2016-02-20 09:44:54', '1', '2016-02-20 09:44:54', '1'); +INSERT INTO `tb_video` VALUES ('15', '4', '动漫', '动漫1', null, 'http://content.12530.com/media/v/20080416/100081.flv', 'http://i11.tietuku.cn/11591386b92cb57b.png', 'flv', '', '1', '1', '2', '10', null, '2016-02-20', '系统管理员', '2016-02-20 09:45:38', '1', '2016-02-20 09:45:38', '1'); +INSERT INTO `tb_video` VALUES ('16', '4', '动漫', '动漫2', null, 'http://content.12530.com/media/v/20080416/100082.flv', 'http://i13.tietuku.cn/f61ae07bf891e96d.jpg', 'flv', '', '1', '1', '2', '10', null, '2016-02-20', '系统管理员', '2016-02-20 09:46:01', '1', '2016-02-20 09:46:01', '1'); +INSERT INTO `tb_video` VALUES ('17', '4', '动漫', '动漫3', null, 'http://content.12530.com/media/v/20080416/100083.flv', 'http://i13.tietuku.cn/e067a3e087c927cf.jpg', 'flv', '', '1', '1', '2', '10', null, '2016-02-20', '系统管理员', '2016-02-20 09:47:23', '1', '2016-02-20 09:47:23', '1'); +INSERT INTO `tb_video` VALUES ('18', '4', '动漫', '动漫4', null, 'http://content.12530.com/media/v/20080416/100084.flv', 'http://i11.tietuku.cn/d93e14328746610a.jpg', 'flv', '', '1', '1', '2', '10', null, '2016-02-20', '系统管理员', '2016-02-20 09:47:58', '1', '2016-02-20 09:47:58', '1'); +INSERT INTO `tb_video` VALUES ('19', '4', '动漫', '动漫5', null, 'http://content.12530.com/media/v/20080416/100085.flv', 'http://i11.tietuku.cn/950af81428ab6a9c.jpg', 'flv', '', '1', '1', '2', '10', null, '2016-02-20', '系统管理员', '2016-02-20 09:48:16', '1', '2016-02-20 09:48:16', '1'); +INSERT INTO `tb_video` VALUES ('20', '4', '动漫', '动漫6', null, 'http://content.12530.com/media/v/20080416/100086.flv', 'http://i12.tietuku.cn/ec8dc8f804b43ba9.jpg', 'flv', '', '1', '1', '2', '10', null, '2016-02-20', '系统管理员', '2016-02-20 09:49:30', '1', '2016-02-20 09:49:30', '1'); +INSERT INTO `tb_video` VALUES ('21', '2', '电影', '电影3', null, 'http://content.12530.com/media/v/20080416/100053.flv', 'http://i11.tietuku.cn/118422ba30d4e86f.jpg', 'flv', '', '1', '1', '2', '10', null, '2016-02-20', '系统管理员', '2016-02-20 09:50:50', '1', '2016-02-20 09:50:50', '1'); +INSERT INTO `tb_video` VALUES ('22', '2', '电影', '电影4', null, 'http://content.12530.com/media/v/20080416/100054.flv', 'http://i11.tietuku.cn/ff6674776e64019b.jpg', 'flv', '', '1', '1', '2', '10', null, '2016-02-20', '系统管理员', '2016-02-20 09:51:00', '1', '2016-02-20 09:51:00', '1'); +INSERT INTO `tb_video` VALUES ('23', '2', '电影', '电影5', null, 'http://content.12530.com/media/v/20080416/100055.flv', 'http://i11.tietuku.cn/3f2ff3cf11bb5761.jpg', 'flv', '', '1', '1', '2', '10', null, '2016-02-20', '系统管理员', '2016-02-20 09:51:31', '1', '2016-02-20 09:51:31', '1'); + +-- ---------------------------- +-- Table structure for tb_video_album +-- ---------------------------- +DROP TABLE IF EXISTS `tb_video_album`; +CREATE TABLE `tb_video_album` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', + `parent_id` int(11) DEFAULT '0' COMMENT '父ID', + `name` varchar(100) NOT NULL DEFAULT '' COMMENT '专辑名称', + `remark` text COMMENT '描述', + `sort` int(11) DEFAULT '1' COMMENT '排序', + `status` int(11) DEFAULT '1' COMMENT '状态//radio/2,隐藏,1,显示', + `update_time` varchar(64) DEFAULT NULL COMMENT '更新时间', + `update_id` int(11) DEFAULT '0' COMMENT '更新人', + `create_time` varchar(64) DEFAULT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者', + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8 COMMENT='专辑'; + +-- ---------------------------- +-- Records of tb_video_album +-- ---------------------------- +INSERT INTO `tb_video_album` VALUES ('1', '0', '电视剧', null, '10', '1', '2016-02-16 16:57:54', '1', '2016-02-16 16:57:54', '1'); +INSERT INTO `tb_video_album` VALUES ('2', '0', '电影', null, '10', '1', '2016-02-16 16:58:00', '1', '2016-02-16 16:58:00', '1'); +INSERT INTO `tb_video_album` VALUES ('3', '0', '综艺', null, '10', '1', '2016-02-16 16:58:09', '1', '2016-02-16 16:58:09', '1'); +INSERT INTO `tb_video_album` VALUES ('4', '0', '动漫', null, '10', '1', '2016-02-16 16:58:17', '1', '2016-02-16 16:58:17', '1'); +INSERT INTO `tb_video_album` VALUES ('5', '0', '娱乐', null, '10', '1', '2016-02-16 16:58:22', '1', '2016-02-16 16:58:22', '1'); +INSERT INTO `tb_video_album` VALUES ('6', '0', '新闻', null, '10', '1', '2016-02-16 16:58:26', '1', '2016-02-16 16:58:26', '1'); + +-- ---------------------------- +-- Table structure for tb_video_tags +-- ---------------------------- +DROP TABLE IF EXISTS `tb_video_tags`; +CREATE TABLE `tb_video_tags` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'id', + `video_id` int(11) DEFAULT NULL COMMENT '视频ID', + `tagname` varchar(200) DEFAULT '' COMMENT '标签内容', + `create_time` varchar(64) DEFAULT NULL COMMENT '创建时间', + `create_id` int(11) DEFAULT '0' COMMENT '创建者', + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='视频标签'; + +-- ---------------------------- +-- Records of tb_video_tags +-- ---------------------------- +SET FOREIGN_KEY_CHECKS=1; -- Gitee From cc858a376893555e78807f48f3c8d0b653bfe879 Mon Sep 17 00:00:00 2001 From: mikedream89 Date: Fri, 21 Apr 2017 10:23:49 +0800 Subject: [PATCH 4/5] [FIX] change DESUtuls ==> DES3Utils --- .../com/jflyfox/component/base/BaseProjectController.java | 4 ++-- src/main/java/com/jflyfox/component/util/JFlyFoxUtils.java | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/jflyfox/component/base/BaseProjectController.java b/src/main/java/com/jflyfox/component/base/BaseProjectController.java index 8a79e47..4891a70 100644 --- a/src/main/java/com/jflyfox/component/base/BaseProjectController.java +++ b/src/main/java/com/jflyfox/component/base/BaseProjectController.java @@ -43,7 +43,7 @@ import com.jflyfox.util.NumberUtils; import com.jflyfox.util.StrUtils; import com.jflyfox.util.cache.Cache; import com.jflyfox.util.cache.CacheManager; -import com.jflyfox.util.encrypt.DESUtils; +import com.jflyfox.util.encrypt.DES3Utils; /** * 项目BaseControler @@ -54,7 +54,7 @@ import com.jflyfox.util.encrypt.DESUtils; */ public abstract class BaseProjectController extends BaseController { - private static final DESUtils COOKIE_DES = new DESUtils("ffcookie"); + private static final DES3Utils COOKIE_DES = new DES3Utils("ffcookie"); public void renderAuto(String view) { String path = getAutoPath(view); diff --git a/src/main/java/com/jflyfox/component/util/JFlyFoxUtils.java b/src/main/java/com/jflyfox/component/util/JFlyFoxUtils.java index b666093..8f160c1 100644 --- a/src/main/java/com/jflyfox/component/util/JFlyFoxUtils.java +++ b/src/main/java/com/jflyfox/component/util/JFlyFoxUtils.java @@ -5,7 +5,7 @@ import java.util.regex.Pattern; import com.jflyfox.util.Config; import com.jflyfox.util.StrUtils; -import com.jflyfox.util.encrypt.DESUtils; +import com.jflyfox.util.encrypt.DES3Utils; public class JFlyFoxUtils { @@ -93,7 +93,7 @@ public class JFlyFoxUtils { public static final int MATERIAL_TYPE_FOLDER = 106; // 栏目 - private static final DESUtils des = new DESUtils("flyfoxxx"); + private static final DES3Utils des = new DES3Utils("flyfoxxx"); // admin:1RHFCLt64uOOViCTzgSaww== test:ldKI9edsQVM= public static void main(String[] args) { -- Gitee From 6b467a0cd764514ba6e3f1512841996525f98006 Mon Sep 17 00:00:00 2001 From: mikedream89 Date: Fri, 21 Apr 2017 11:20:57 +0800 Subject: [PATCH 5/5] =?UTF-8?q?[FIX]=20fix=20=E5=90=8E=E5=8F=B0=E6=A8=A1?= =?UTF-8?q?=E6=9D=BF=E7=AE=A1=E7=90=86=E6=B2=A1=E6=9C=89=E5=86=85=E5=AE=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../static/component/filemanager/scripts/filemanager.config.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/webapp/static/component/filemanager/scripts/filemanager.config.js b/src/main/webapp/static/component/filemanager/scripts/filemanager.config.js index c65a9cc..bba441b 100644 --- a/src/main/webapp/static/component/filemanager/scripts/filemanager.config.js +++ b/src/main/webapp/static/component/filemanager/scripts/filemanager.config.js @@ -22,7 +22,7 @@ "splitterMinWidth": 200, "dateFormat": "d M Y H:i", "serverRoot": true, - "fileRoot": "/jfinal_cms/", + "fileRoot": "/template/", "baseUrl": "http://127.0.0.1/jfinal_cms/", "logger": false, "capabilities": ["select", "download", "rename", "delete", "replace"], -- Gitee