欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

bos开发日记一

程序员文章站 2022-04-15 16:39:17
BOS项目 第1天 项目12天安排: 1-2天:项目概述、搭建开发环境、主页设计、持久层和表现层设计 3-6天:项目业务开发(取派员、区域、分区、定区、业务受理) 整个项目分为基础设置、取派、中转、路由、报表 7-8天:权限控制、权限管理 apache shiro 9-11天:工作流开发 activ ......

bos项目 第1

 

项目12天安排:

 

1-2天:项目概述、搭建开发环境、主页设计、持久层和表现层设计

 

3-6天:项目业务开发(取派员、区域、分区、定区、业务受理)---整个项目分为基础设置、取派、中转、路由、报表

 

7-8天:权限控制、权限管理----apache shiro

 

9-11天:工作流开发----activiti

 

12天:总结

 

今天内容安排:

 

1、项目概述(背景、常见软件类型、软件开发流程(瀑布模型))

 

2、搭建开发(数据库、web项目、svn管理项目)

 

3、主页设计(jquery easyui

 

4、uml工具使用powerdesigner

 

本项目属于宅急送公司二期改造项目

 

 bos开发日记一

项目的团队人数20多个人,项目开发周期1年多(13个月),编码阶段4个月。

 

1.1 常见的软件类型

oa:办公自动化系统

crm:客户关系管理系统

erp:企业资源计划平台

cms:content mangement system

 

1.2 软件开发流程(瀑布模型)

0、可行性分析

1、需求调研分析----需求规格说明书

2、设计阶段(概要设计、详细设计)----数据库设计、原型设计

3、编码阶段(单元测试)

4、测试阶段(系统测试、白盒测试、黑盒测试)

5、上线和运维

敏捷开发

 

1.3开发环境

 bos开发日记一

1.4技术选型

 bos开发日记一

 

 

2. 搭建开发环境

2.1 数据库环境

第一步:创建一个数据库

 bos开发日记一

第二步:创建一个数据库用户

 bos开发日记一

第三步:为创建的用户授权

 bos开发日记一

第四步:使用新创建的数据库用户登录mysql系统

 bos开发日记一

2.2 web项目环境

第一步:创建一个动态web项目

bos开发日记一

 

第二步:导入jar包(sshspring依赖、日志、数据库驱动)

bos开发日记一

第三步:配置web.xmlstruts2的过滤器、spring监听器、解决hibernate延迟加载问题的过滤器、解决中文乱码的过滤器)

bos开发日记一

bos开发日记一

bos开发日记一

bos开发日记一

bos开发日记一

 

第四步:创建项目目录结构

 bos开发日记一

第五步:在config目录中提供struts2的配置文件

 bos开发日记一

第六步:在config目录下提供spring的配置文件applicationcontext.xml

<!-- 配置公共项 -->
<!-- 加载数据源配置文件 -->
<context:property-placeholder location="classpath:jdbcinfo.properties"/>
<!-- 配置数据源 -->
<bean id="datasource" class="com.mchange.v2.c3p0.combopooleddatasource">
<property name="dirverclass" value="${jdbc.driverclass}"></property>
<property name="jdbcurl" value="${jdbc.jdbcurl}"></property>
<property name="user" value="${jdbc.user}"></property>
<property name="password" value="${jdbc.password}"></property>
</bean>
<!-- 配置sessionfactory -->
<bean id="sessionfactory" class="org.springframework.orm.hibernate3.localsessionfactorybean">
<property name="datasource" ref="datasource"></property>
<!-- 数据库方言配置 -->
<property name="hibernateproperties">
<props>
<!-- 数据类型 -->
<prop key="hibernate.dialect"> org.hibernate.dialect.mysql5dialect</prop>
<!-- 打印sql语句 -->
<prop key="hibernate.show_sql">true</prop>
<!-- 格式化sql语句 -->
<prop key="hibernate.format_sql">true</prop>
<!-- 自动创建|更新|验证表结构 -->
<prop key="hibernate.hbm2ddl.auto">update</prop>
</props>
</property>
<!-- 注入hibernate的映射文件 -->
<property name="mappingdirectorylocations">
<list>
<value>classpath:com/guo/bos/domain</value>
</list>
</property>
</bean>
<!-- 事务管理 -->
<bean id="txmanager" class="org.springframework.orm.hibernate3.hibernatetransactionmanager">
<property name="sessionfactory" ref="sessionfactory"></property>
</bean>
<!-- 用注解 要 组件扫描 -->
<context:component-scan base-package="com.guo.bos"></context:component-scan>
<!-- 引入注解解析器    controller service repository  注入: resource autowrired -->
<context:annotation-config></context:annotation-config>
<!-- 事务注解 -->
<tx:annotation-driven/>

第七步:提供项目所需的资源文件

 bos开发日记一

注意,web.xml中配置服务器内部转发经过struts2过滤器处理

 bos开发日记一

2.3 使用svn管理项目代码

第一步:创建一个svn仓库

bos开发日记一

第二步:修改svn的配置文件

svnserve.conf:

 bos开发日记一

passwd:

 bos开发日记一

authz:

 bos开发日记一

第三步:启动svn服务,使用批处理文件

 bos开发日记一

 eclipse svn 插件安装:https://blog.csdn.net/zhanlv/article/details/76504414

 

第四步:将搭建的web项目共享到svn仓库

 bos开发日记一

 

 bos开发日记一

bos开发日记一

 

3. 主页设计---jquery easyui插件

 

jquery easyui目录结构:

 bos开发日记一

jsp页面中引入easyui相关的资源文件

 

<link rel="stylesheet" type="text/css" href="${pagecontext.request.contextpath }/js/easyui/themes/default/easyui.css">

<link rel="stylesheet" type="text/css" href="${pagecontext.request.contextpath }/js/easyui/themes/icon.css">

<script type="text/javascript" src="${pagecontext.request.contextpath }/js/jquery-1.8.3.js"></script>

<script type="text/javascript" src="${pagecontext.request.contextpath }/js/easyui/jquery.easyui.min.js"></script>

 

3.1 layout页面布局

这个布局容器,有五个区域:北、南、东、西和中心。 他中心地区面板是必需的,但是边缘地区面板是可选的。每一个边缘地区面板可以缩放的拖动其边境, 他们也可以通过点击其收缩触发.布局可以嵌套,从而用户可以建立复杂的布局,他想要的。

<body class="easyui-layout">

<!-- 使用div指定区域 -->

<div title="xx管理系统" data-options="region:'north'" style="height: 100px">北部区域</div>

<div title="系统菜单" data-options="region:'west'" style="width: 200px">西部区域</div>

<div data-options="region:'center'">中心区域</div>

<div data-options="region:'east'" style="width: 100px">东部区域</div>

<div data-options="region:'south'" style="height: 50px">南部区域</div>

</body>

bos开发日记一

3.2accordion折叠面板

 

!-- 折叠面板效果 -->

<div class="easyui-accordion" data-options="fit:true">

<!-- 每个子div是其中的一个面板 -->

<div title="面板一">棉衣一</div>

<div title="面板二">test2</div>

<div title="面板三">test3</div>

</div>

bos开发日记一

<!-- 选项卡面板效果 -->

<div class="easyui-tabs" data-options="fit:true">

<!-- 每个子div是其中的一个面板 -->

<div data-options="closable:true,iconcls:'icon-help'" title="面板一">棉衣一</div>

<div title="面板二">test2</div>

<div title="面板三">test3</div>

</div>

bos开发日记一

 

3.4 动态添加选项卡

 

<a class="easyui-linkbutton" onclick="doadd();">百度</a>

<script type="text/javascript">

function doadd(){

//动态添加一个选项卡面板

$("#tt").tabs("add",{

title:'这个可是动态的',

content:'<iframe frameborder="0" width="100%" height="100%" src="page_base_staff.action"></iframe>',

closable:true,

iconcls:'icon-search'

});

}

</script>

4. ztree树形插件---jquery插件

 bos开发日记一

jsp页面中引入ztree相关的资源文件

<script type="text/javascript" src="${pagecontext.request.contextpath }/js/jquery-1.8.3.js"></script>

<link rel="stylesheet" href="${pagecontext.request.contextpath }/js/ztree/ztreestyle.css" type="text/css">

<script type="text/javascript" src="${pagecontext.request.contextpath }/js/ztree/jquery.ztree.all-3.5.js"></script>

4.1 使用标准json数据构造ztree

<!-- 展示树形菜单 :使用标准json数据构造-->

<ul id="ztree1" class="ztree"></ul>

<script type="text/javascript">

$(function(){

//当页面加载完成后,动态创建ztree菜单

var setting = {};//设置ztree相关的属性

//构造json数据

var znodes = [

              {name:'系统管理'},//每个json对象对应一个节点数据

              {name:'用户管理',children:[

                                      {name:'用户添加'},

                                      {name:'用户修改'}

                                     ]},//每个json对象对应一个节点数据

              {name:'权限管理'}//每个json对象对应一个节点数据

              ];

//创建ztree

$.fn.ztree.init($("#ztree1"),setting,znodes);

});

</script>

 

4.2 使用简单json数据构造ztree(建议)

<!-- 展示树形菜单 :使用简单json数据构造-->

<ul id="ztree2" class="ztree"></ul>

<script type="text/javascript">

$(function(){

//当页面加载完成后,动态创建ztree菜单

var setting2 = {

data: {

simpledata: {

enable: true//启用简单json数据描述节点数据

}

}

};//设置ztree相关的属性

//构造json数据

var znodes2 = [

              {id:'1',pid:'0',name:'系统管理'},//每个json对象对应一个节点数据

              {id:'2',pid:'0',name:'用户管理'},//每个json对象对应一个节点数据

              {id:'21',pid:'2',name:'用户添加'},//每个json对象对应一个节点数据

              {id:'22',pid:'2',name:'用户修改'},//每个json对象对应一个节点数据

              {id:'3',pid:'0',name:'权限管理'}//每个json对象对应一个节点数据

              ];

//创建ztree

$.fn.ztree.init($("#ztree2"),setting2,znodes2);

});

</script>

 

效果:

 bos开发日记一

4.3 发送ajax请求获取菜单数据构造ztree

<ul id="ztree3" class="ztree"></ul>

<script type="text/javascript">

$(function(){

var setting3 = {

data : {

simpledata : {

enable : true

//启用简单json数据描述节点数据

}

}

};//设置ztree相关的属性

    //发送ajax请求获取json数据构造ztree

    var url = "${pagecontext.request.contextpath}/json/menu.json";

$.post(url,{},function(data){

//创建ztree

$.fn.ztree.init($("#ztree3"), setting3, data);

},'json');

});

</script>

 bos开发日记一

1.1 ztree节点绑定事件

<ul id="ztree3" class="ztree"></ul>

<script type="text/javascript">

$(function(){

var setting3 = {

data : {

simpledata : {

enable : true

//启用简单json数据描述节点数据

}

},

callback: {//绑定事件

onclick: function(a,b,treenode){

var page = treenode.page;

if(page != undefined){//需要打开选项卡

//判断当前选项卡是否已经打开

var e = $("#tt").tabs("exists",treenode.name);

if(e){

//已经打开

$("#tt").tabs("select",treenode.name);

}else{

$("#tt")

.tabs(

"add",

{

title : treenode.name,

content : '<iframe frameborder="0" width="100%" height="100%" src="'+page+'"></iframe>',

closable : true,

iconcls : 'icon-edit'

});

}

}

}

}

};//设置ztree相关的属性

    //发送ajax请求获取json数据构造ztree

    var url = "${pagecontext.request.contextpath}/json/menu.json";

$.post(url,{},function(data){

//创建ztree

$.fn.ztree.init($("#ztree3"), setting3, data);

},'json');

});

</script>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

上一篇: 多任务原理

下一篇: 你有多努力?