项目概述
项目背景介绍
甲方:X急送
乙方:X友科技
二期工程,一期是一个c/s的结构,二期是b/s结构的
软件开发流程(瀑布模型)
1、可行性研究—项目经理职位以上
2、需求调研—项目经理(高级开发)—《项目需求规格说明书》
3、概要设计—技术总监|技术经理–《概要设计》(项目的模块划分+技术的选型+用例)
4、详细设计—技术经理|高级开发—《详细设计》(接口+实现类+方法+方法的伪代码)
5、开发—程序员(1:2:1)–代码
6、测试—测试团队—测试用例—测试报告 黑盒测试 冒烟测试 系统测试
7、试运行 15天—30天 试运行报告
8、正式运行
9、运维 2-3个月免费维护 20-30W/年
技术选型
搭建项目开发环境
数据库环境
--1、创建表空间和数据文件
create tablespace bos_62_space
datafile 'c:\\bos_62.dbf'
size 100M
autoextend on
next 10M
--2、创建用户
create user bos_62
identified by bos_62
default tablespace bos_62_space
--3、赋权限
grant resource to bos_62
grant connect to bos_62
select * from session_privs --查询当前用户的权限
角色:DBA resource connect
动态添加选项卡
$(function(){
$("#btn").click(function(){
// 动态添加选项卡,添加之前判断tabs中是否已存在
// exists方法
var exists=$("#myTabs").tabs('exists','面板三');
// 如果已存在 选中状态
if(exists){
// select方法
$("#myTabs").tabs('select','面板三');
}else{
// 如果不存在就添加
// add方法
$('#myTabs').tabs('add',{
title: '面板三',
selected: true,
closable:true,
content:"<iframe scrolling='no'
src='http://www.baidu.com' style='width:100%;height:100%'></iframe>"
});
}
})
})
jQuery ztree插件使用
先引入ztree插件到项目
ztree有三种写法下面逐个介绍
1复杂写法
var ztreeObj;
var setting={
};
var zNodes=[{"name":"网站导航", open:true, children: [
{ "name":"google", "url":"http://g.cn", "target":"_blank"},
{ "name":"baidu", "url":"http://baidu.com", "target":"_blank"},
{ "name":"sina", "url":"http://www.sina.com.cn", "target":"_blank"}
]
},
{"name":"sssss"}
];
$(function(){
ztreeObj = $.fn.zTree.init($("#myTree"), setting, zNodes);
})
2基于简单json数据构造ztree
var ztreeObj;
var setting={
data:{
simpleData:{
enable:true
}
}
};
var zNodes=[{"id":1,"name":"网站导航", open:true} ,
{"id":11,"pId":1, "name":"google", "url":"http://g.cn", "target":"_blank"},
{"id":12,"pId":1, "name":"baidu", "url":"http://baidu.com", "target":"_blank"},
{"id":13,"pId":1, "name":"sina", "url":"http://www.sina.com.cn", "target":"_blank"}
];
$(function(){
ztreeObj = $.fn.zTree.init($("#myTree"), setting, zNodes);
})
3基于ajax加载远程json数据构造ztree
var ztreeObj;
var setting={
data:{
simpleData:{
enable:true
}
}
};
$(function(){
$.ajax({
url:'../data/menu.json',
type:'post', //默认get
dataType:'json', //回调数据的格式 ‘text’
success:function(data){
ztreeObj = $.fn.zTree.init($("#myTree"), setting, data);
}
})
})
为ztree节点绑定事件动态添加选项卡
var ztreeObj;
var setting={
data:{
simpleData:{
enable:true
}
},
callback: {
onClick: function(event, treeId, treeNode){
if(treeNode.page==undefined){//父节点上没有page
return;
}
// 动态添加选项卡,添加之前判断tabs中是否已存在
// exists方法
var exists=$("#myTabs").tabs('exists',treeNode.name);
// 如果已存在 选中状态
if(exists){
// select方法
$("#myTabs").tabs('select',treeNode.name);
}else{
// 如果不存在就添加
// add方法
$('#myTabs').tabs('add',{
title: treeNode.name,
selected: true,
closable:true,
content:"<iframe scrolling='no' src='../"+treeNode.page+"' style='width:100%;height:100%'></iframe>"
});
}
}
}
};
$(function(){
$.ajax({
url:'../data/menu.json',
type:'post', //默认get
dataType:'json', //回调数据的格式 ‘text’
success:function(data){
ztreeObj = $.fn.zTree.init($("#myTree"), setting, data);
}
})
})