第一篇:WEB的书店项目总结报告(个人)
项目个人报告
---Web的网上书店
在大三下学期,通过学习软件工程这门课程,使自己更加系统的认识到了在项目开发阶段,并通过作为担任项目组组长,各个环节都有其必要性和重要性,每个阶段的工作都是项目的必要组成部分。
在整个项目开发过程中,通过作为担任项目组组长,让自己有了更多对项目实施过程中,各个环节、各个组织人员相互协调、统一意见与认识的体会。
比如:在开始阶段,增进每个成员之间的认识,并统一项目的方向,培养每个人对项目本身的兴趣,增强每个人对自己任务的责任感。
开发阶段,协调、同于各个人员的工作与安排,并监督项目的实施的进度。在遇见问题,组织人员对问题的针对性的解决。
和认识到了在开发项目时,不是单纯的编写代码,而是整个开发过程中,各个环节的重要性,尤其是跟进开发进度时,文档的编写也是必不可少的。
通过学习软件工程、并在写项目时,认识到了,每个成员之间的交流很重要,并逐渐学会了在遇到问题时,自己解决问题的能力。和在项目开发过程中,在每个阶段所做工作的意义,而且体会到了项目经理的责任,和其主导作用。我相信,通过这次自己作为项目经理,所学到的东西和感受会影响自己对软件开发的理解,并在以后的项目开发过程中,更好的去写项目。
第二篇:web项目开发总结报告
唐诗宋词学习网站项目总结
1引言
当下人们生活节奏飞快,能够在紧张的工作之余细细品读几首唐诗宋词,亦不失为一件美事。作为一个具有特色的学习网站,网站提供了颇具特色的唐诗宋词的学习功能,使用户能够在轻松的状态中学习。
1.1编写目的
本次项目总结主要是对唐诗宋词网站项目的总结,希望通过总结我们在开发过程中遇到的问题和采取的方法,对以后的项目开发起到一定的指导性的意义。从而提高我们组以后开发项目的效率和规范我们的过程。从客户的需求中提取项目应该实现的功能要求,为后期的构建提供指导。
1.2背景
鉴于当前互联网的快速发展,以及国家对中国传统文化的提倡,希望建设一个学习唐诗宋词的网站,帮助推动对传统文化的传播和继承。
2实际开发结果
2.1产品
唐诗宋词学习网站
2.2主要功能和性能
● 普通的游客,以未登录的状态浏览网站的网页,本网站只提供搜索和在线阅读功能;
● 诗词搜索:用户可以根据诗名、词名、词牌名、内容关键字等词条进行搜索;
● 作者搜索:用户根据喜爱的诗人或者词人的名字进行搜索; ● 用户根据以上的搜索的结果,选择查看;
本网站为注册的会员提供了除以上的服务外,更具有吸引力的功能:
收藏列表:
● Favorite list:用户可以将自己喜爱的诗和词加入到Favorite list 中;
● New poem list:用户可以将自己喜爱的新诗词加入此列表,此表中的诗词是以后在线学习和复习的内容;
● 在线学习,并完成测试的诗词会被自动加入到Favorite list中; 收藏列表的管理:用户拥有对自己列表自主管理的权利,如增加新的诗词、删除等操作 ● 分享到微博:用户可以将喜爱的时、词分享到微博,推荐给好友阅读;
● 在线学习:用户通过在线学习的板块可以记忆自己喜爱的诗词。
学习分为三个难度等级:初等、中等、高等。网站同时为在线用户提供记忆提醒,为用户推荐最佳的复习时间、安排复习的内容。
2.3基本流程
同概要设计流程
2.4进度
系统规划阶段 需求分析阶段 项目功能实现 系统测试阶段 系统界面美化 项目验收阶段
标志性事件 开始到完成
系统需求说明书完成 11.20-11.30 基本代码的生成 测试文档产生 接受公开的测试 对项目功能的演示
12.1-12.16 12.17-12.23 12.24-12.30 12.31-1.5 3开发工作评价
3.1对生产效率的评价
本次项目中,由于组员之前缺少默契,对项目的了解程度不是很 好。所以前期的时候,小组的效率非常低,对自己能力的高估和对项目的工作量不清楚是造成效率低的主要原因。同时,随着项目的进展,采用的结对编程使组员之间形成了一种默契。鉴于对以前SSH框架的初步了解和对项目的深入理解,中后期的生产效率还是有一定的提高。但是与程序员的真实水平相差很远。
3.2对产品质量的评价
1.对于网站初期的规划的唐诗宋词的增删改查功能。2.诗词作者信息的增删改查功能。
3.收藏列表的增删改查和添加删除诗词功能。4.生诗词库的建立和考核测评功能。5.用户的注册登陆功能。
上述的各项基本功能均已经实现,可以总体运行。但是每一个功能还有很多工作要做,完善。各项功能还是有些bug,完善这些功能还需要一部分时间。同时由于我们组员对用户的需求认识不足,造成了很多反复,导致生产率效率低下。
3.3对技术方法的评价
1、使用数据库建模工具:PowerDesigner 工具来建立系统数据库模型,以方便程序员很好的理解业务流和掌握系统架构者的架构思想,更好的满足客户的功能需求。在今后的项目开发中,我们要更好的来完成系统的前期数据库模型的建立,最大的来优化系统功能。
2、系统开发框架:此系统的框架使用的是SSH结构,此框架在开发一些中小软件是比较实用的。使得程序员能够随心所欲的使用对象编程思维来操纵数据库。但是我们要是可以开发出自己的框架,把一些通用的功能开发到框架中。这样以来,在以后的系统开发中,针对系统中一些通用的功能就不需要再开发,从而也可以很好的提高我们的开发效率;减少很多维护费用。使我们的技术不断的更加成熟。
3.4出错原因的分析
主要有以下几个方面的原因需要我们可以以后注意:
1、对软件开发的流程不是很熟悉。因为这方面知识的获取只是停留在理论层面,缺乏理论经验。
2、组员之间的交流还有待提高。因为在最后的一段时间,由于课程学习和复习的原因,大家能够集中在一块进行编程的时间不多。对项目的关注程度有所降低。
3、对web开发技术了解面不够,目前只是会对SSH框架熟悉。而且其中的框架使用细节流程也不是很清楚。
4经验与教训
项目历时两个月时间,在这两个月的时间里,使我们组对于项目有了更深刻的理解。
首先是对软件工程课程的更进一步学习,理解。此次的综合训练是紧跟课程同时进行的。在课程进行的同时,老师对其用到的知识进 行了详细的讲述。包括团队的建立,题目的选择,团队中各个组员之间的关系和整个项目选择的过程模型等。
第一阶段:需求分析阶段。只有充分了解了用户的需求才能开发功能完整、性能良好的项目。在这个阶段,我们小组听取了梁丹同学对于这个网站各个功能模块的描述,并做详细的记录,这个为我们后面项目的度量提供了可靠的材料。
第二阶段:项目分析设计阶段。整个项目在这个阶段的工作要多一点,它直接关系到后一阶段的编码,所以它起到了承上启下的作用。这一阶段的主要任务包括分析项目中对象,再根据对象设计数据库,在此包括其建模设计,在完成数据库后就是数据流程图了,它大体上描述了程序走的流程,以及大体的一个架构。完成上述工作后就是类的设计了,它是根据数据流图的设计来设计的,写好每个模块的每一个类,为下一阶段做好准备。在此,我们就完成了整个系统的一个架构。
第三阶段:编码阶段。在整个项目周期中只占到了1/4的时间,用代码将整个系统的业务逻辑表达出来。其中和遇到好多问题:对java中的好多现有的类不熟悉,使得编写的代码质量不高,代码的复用性不高,好多问题还都没有解决。
第四阶段:测试和发布。这一阶段是我们项目的最后一个阶段了,主要是对项目所涉及的功能进行功能测试。发现问题及时解决。
同时鉴于我们采用的是Scrum敏捷开发模型,并采用了结对编程。下边介绍下关于团队建设方面的总结。团队的个体成员为实现一个共同目标而协同工作。团队工作就是团队成员为实现这一共同目标而共同努力。项目团队工作是否有成效会直接影响项目的成败,尽管计划以及项目经理的工作技能是必要的,但人员——项目经理和项目团队——才是项目成功的关键。项目成功需要一个有效的项目团队。
我们组每位成员都精心付出了自己的努力,相互依赖,齐心协力地进行工作,已保证项目目标的成功实施.同时我们组也做到了以下的关键几点:
1、对项目目标的清晰理解。
2、对每位成员角色和职责的明确期望。
3、目标导向。
4、高度的合作互助。
5、高度信任。
这些都是以后我们在做项目设计时候必须借鉴的。一个绩效良好的项目团队很有必要管理好时间,为有效管理时间,团队成员要明确每周的目标,每天制定一个做事表,集中精力完成当天的做事表。要控制干扰,谢绝参加那些对实现目标没有意义的活动。团队成员也要有效利用等待的时间,一次性处理好文件工作,并要为实现目标奖励自己。我们组的每位成员都尽心尽力地为这个项目付出,期待项目最后成功的实施。
通过此次项目的学习和实践,使得我们组对于软件过程和项目管理这门课程有了更深入的了解,对其中所涉及的方法和工具有新的认 识,我们组会在以后的学习中继续摸索,灵活运用各种方法,熟练对各种工具的掌握,努力提高我们组的知识水平和业务能力!同时也认识到我们组在实际的代码编写阶段出现了许多无法解决的bug,需要我们利用下来的时间进行完善,真正做到学习无止境。也使我们认清了我们现在的编程水平还很低下,对知识的掌握还不够。距成为一名合格的软件工程师还有很长的一段距离。
第三篇:网上书店项目总结报告
数据库代码:
/*================*/ /* DBMS name:
Microsoft SQL Server 2008
*/ /* Created on:
2011-11-2 9:27:06
*/ /*================*/
if exists(select 1
from sys.sysreferences r join sys.sysobjects o on(o.id = r.constid and o.type = 'F')
where r.fkeyid = object_id('Administrators')and o.name = 'FK_ADMINIST_REFERENCE_USERS')alter table Administrators
drop constraint FK_ADMINIST_REFERENCE_USERS go
if exists(select 1
from sys.sysreferences r join sys.sysobjects o on(o.id = r.constid and o.type = 'F')
where r.fkeyid = object_id('Re_status')and o.name = 'FK_RE_STATU_REFERENCE_ADMINIST')alter table Re_status
drop constraint FK_RE_STATU_REFERENCE_ADMINIST go
if exists(select 1
from sys.sysreferences r join sys.sysobjects o on(o.id = r.constid and o.type = 'F')
where r.fkeyid = object_id('books')and o.name = 'FK_BOOKS_REFERENCE_BOOKTYPE')alter table books
drop constraint FK_BOOKS_REFERENCE_BOOKTYPE go
if exists(select 1
from sys.sysreferences r join sys.sysobjects o on(o.id = r.constid and o.type = 'F')
where r.fkeyid = object_id('books')and o.name = 'FK_BOOKS_REFERENCE_PUBLISH')alter table books
drop constraint FK_BOOKS_REFERENCE_PUBLISH go
if exists(select 1
from sys.sysreferences r join sys.sysobjects o on(o.id = r.constid and o.type = 'F')
where r.fkeyid = object_id('booktype')and o.name = 'FK_BOOKTYPE_REFERENCE_BOOKTYPE')alter table booktype
drop constraint FK_BOOKTYPE_REFERENCE_BOOKTYPE go
if exists(select 1
from sys.sysreferences r join sys.sysobjects o on(o.id = r.constid and o.type = 'F')
where r.fkeyid = object_id('leaveWords')and o.name = 'FK_LEAVEWOR_REFERENCE_USERS')alter table leaveWords
drop constraint FK_LEAVEWOR_REFERENCE_USERS go
if exists(select 1
from sys.sysreferences r join sys.sysobjects o on(o.id = r.constid and o.type = 'F')
where r.fkeyid = object_id('limite')and o.name = 'FK_LIMITE_REFERENCE_ADMINIST')alter table limite
drop constraint FK_LIMITE_REFERENCE_ADMINIST go
if exists(select 1
from sys.sysreferences r join sys.sysobjects o on(o.id = r.constid and o.type = 'F')
where r.fkeyid = object_id('model')and o.name = 'FK_MODEL_REFERENCE_LIMITE')alter table model
drop constraint FK_MODEL_REFERENCE_LIMITE go
if exists(select 1
from sys.sysreferences r join sys.sysobjects o on(o.id = r.constid and o.type = 'F')
where r.fkeyid = object_id('orders')and o.name = 'FK_ORDERS_REFERENCE_SHIPPED')alter table orders
drop constraint FK_ORDERS_REFERENCE_SHIPPED go
if exists(select 1
from sys.sysreferences r join sys.sysobjects o on(o.id = r.constid and o.type = 'F')
where r.fkeyid = object_id('orders')and o.name = 'FK_ORDERS_REFERENCE_BOOKS')alter table orders
drop constraint FK_ORDERS_REFERENCE_BOOKS go
if exists(select 1
from sys.sysreferences r join sys.sysobjects o on(o.id = r.constid and o.type = 'F')
where r.fkeyid = object_id('orders')and o.name = 'FK_ORDERS_REFERENCE_USERS')alter table orders
drop constraint FK_ORDERS_REFERENCE_USERS go if exists(select 1
from sys.sysreferences r join sys.sysobjects o on(o.id = r.constid and o.type = 'F')
where r.fkeyid = object_id('sales')and o.name = 'FK_SALES_REFERENCE_ORDERS')alter table sales
drop constraint FK_SALES_REFERENCE_ORDERS go
if exists(select 1
from sys.sysreferences r join sys.sysobjects o on(o.id = r.constid and o.type = 'F')
where r.fkeyid = object_id('shipped')and o.name = 'FK_SHIPPED_REFERENCE_SALES')alter table shipped
drop constraint FK_SHIPPED_REFERENCE_SALES go
if exists(select 1
from sys.sysreferences r join sys.sysobjects o on(o.id = r.constid and o.type = 'F')
where r.fkeyid = object_id('shoppingcar')and o.name = 'FK_SHOPPING_REFERENCE_BOOKTYPE')alter table shoppingcar
drop constraint FK_SHOPPING_REFERENCE_BOOKTYPE go
if exists(select 1
from sys.sysreferences r join sys.sysobjects o on(o.id = r.constid and o.type = 'F')
where r.fkeyid = object_id('shoppingcar')and o.name = 'FK_SHOPPING_REFERENCE_BOOKS')alter table shoppingcar
drop constraint FK_SHOPPING_REFERENCE_BOOKS go
if exists(select 1
from sys.sysreferences r join sys.sysobjects o on(o.id = r.constid and o.type = 'F')
where r.fkeyid = object_id('shoppingcar')and o.name = 'FK_SHOPPING_REFERENCE_USERS')alter table shoppingcar
drop constraint FK_SHOPPING_REFERENCE_USERS go
if exists(select 1
from sys.sysreferences r join sys.sysobjects o on(o.id = r.constid and o.type = 'F')
where r.fkeyid = object_id('users')and o.name = 'FK_USERS_REFERENCE_LIMITE')alter table users
drop constraint FK_USERS_REFERENCE_LIMITE go
if exists(select 1
from sysobjects
where id = object_id('Administrators')
and
type = 'U')
drop table Administrators go
if exists(select 1
from sysobjects
where id = object_id('Re_status')
and
type = 'U')
drop table Re_status go
if exists(select 1
from sysobjects
where id = object_id('books')
and
type = 'U')
drop table books go
if exists(select 1
from sysobjects
where id = object_id('booktype')
and
type = 'U')
drop table booktype go
if exists(select 1
from sysobjects
where id = object_id('booktype2')
and
type = 'U')
drop table booktype2 go
if exists(select 1
from sysobjects
where id = object_id('discount')
and
type = 'U')
drop table discount go
if exists(select 1
from sysobjects
where id = object_id('leaveWords')
and
type = 'U')
drop table leaveWords go
if exists(select 1
from sysobjects
where id = object_id('limite')
and
type = 'U')
drop table limite go
if exists(select 1
from sysobjects
where id = object_id('model')
and
type = 'U')
drop table model go
if exists(select 1
from sysobjects
where id = object_id('orders')
and
type = 'U')
drop table orders go
if exists(select 1
from sysobjects
where id = object_id('publish')
and
type = 'U')
drop table publish go
if exists(select 1
from sysobjects
where id = object_id('sales')
and
type = 'U')
drop table sales go
if exists(select 1
from sysobjects
where id = object_id('shipped')
and
type = 'U')
drop table shipped go
if exists(select 1
from sysobjects
where id = object_id('shoppingcar')
and
type = 'U')
drop table shoppingcar go
if exists(select 1
from sysobjects
where id = object_id('users')
and
type = 'U')
drop table users go
/*================*/ /* Table: Administrators
*/ /*================*/ create table Administrators(Administrator_id
varchar(50)
not null,Username
varchar(20)
null,Administrator_name
varchar(20)
not null,Administrator_password varchar(50)
not null,“Administrator_e-mall” varchar(30)
null,constraint PK_ADMINISTRATORS primary key(Administrator_id))go
/*================*/ /* Table: Re_status
*/ /*================*/ create table Re_status(Administrator_id
varchar(50)
not null,Username
varchar(10)
not null,Re_status_date
datetime
not null,Subject
varchar(10)
not null,re_ststus_texe
varchar(2000)
null,Re_status
varchar(2)
not null,constraint PK_RE_STATUS primary key(Administrator_id))go
/*================*/ /* Table: books
*/ /*================*/ create table books(bookID
varchar(50)
not null,Smalltype_id
varchar(50)
null,Pub_id
varchar(50)
null,title
varchar(80)
not null,price
double precision
not null,author
varchar(10)
not null,Version
varchar(20)
null,Publishdate
datetime
null,introduction
varchar(2000)
null,type
varchar(50)
not null,stock_qty
int
null,constraint PK_BOOKS primary key(bookID))go
/*================*/ /* Table: booktype
*/ /*================*/ create table booktype(Smalltype_id
varchar(50)
not null,Bigtype_id
varchar(50)
not null,Bigtype_name
varchar(50)
not null,constraint PK_BOOKTYPE primary key(Smalltype_id))go
/*================*/ /* Table: booktype2
*/ /*================*/ create table booktype2(Smalltype_id
varchar(50)
not null,Smalltype_name
varchar(50)
not null,Bigtype_id
varchar(50)
not null,constraint PK_BOOKTYPE2 primary key(Smalltype_id))go
/*================*/ /* Table: discount
*/ /*================*/ create table discount(datetime
varchar(10)
not null,discount
double precision
not null,remark
datetime
not null,constraint PK_DISCOUNT primary key(datetime))go
/*================*/ /* Table: leaveWords
*/ /*================*/ create table leaveWords(Lword_id
varchar(50)
not null,use_Username
varchar(20)
null,Username
varchar(6)
not null,Subject
varchar(6)
not null,Submit_date
datetime
null,Lword_texe
varchar(4000)
null,Re_status
varchar(10)
null,constraint PK_LEAVEWORDS primary key(Lword_id))go
/*================*/ /* Table: limite
*/ /*================*/ create table limite(username
varchar(20)
not null,Administrator_id
varchar(50)
null,user_limite
varchar(2)
not null,constraint PK_LIMITE primary key(username))go
/*================*/ /* Table: model
*/ /*================*/ create table model(model_id
varchar(10)
not null,username
varchar(20)
null,modelname
varchar(20)
not null,remark
varchar(20)
not null,constraint PK_MODEL primary key(model_id))go
/*================*/ /* Table: orders
*/ /*================*/ create table orders(Order_id
varchar(50)
not null,bookID
varchar(50)
null,Username
varchar(20)
null,Ship_id
varchar(50)
null,shipaddress
varchar(50)
not null,Order_date
datetime
not null,Book_id
varchar(50)
not null,quantity
int
not null,status
varchar(2)
not null,constraint PK_ORDERS primary key(Order_id))go
/*================*/ /* Table: publish
*/ /*================*/ create table publish(Pub_id
varchar(50)
not null,Pub_name
varchar(50)
not null,Pub_phone
varchar(15)
not null,Pub_add
varchar(50)
not null,constraint PK_PUBLISH primary key(Pub_id))go
/*================*/ /* Table: sales
*/ /*================*/ create table sales(Sale_id
varchar(50)
not null,Order_id
varchar(50)
null,Sale_date
datetime
null,Saler
varchar(20)
not null,Sale_status
varchar(2)
null,constraint PK_SALES primary key(Sale_id))go
/*================*/ /* Table: shipped
*/ /*================*/ create table shipped(Ship_id
varchar(50)
not null,Sale_id
varchar(50)
null,receive_name
varchar(10)
not null,receive_address
varchar(50)
not null,Ship_date
datetime
not null,Ship_man
varchar(10)
not null,receive_postcode
varchar(6)
not null,receive_telephone
varchar(20)
not null,constraint PK_SHIPPED primary key(Ship_id))go
/*================*/ /* Table: shoppingcar
*/ /*================*/ create table shoppingcar(shoppingcarid
varchar(10)
not null,Smalltype_id
varchar(50)
null,bookID
varchar(50)
null,Username
varchar(20)
null,totalprice
double precision
not null,constraint PK_SHOPPINGCAR primary key(shoppingcarid))go
/*================*/ /* Table: users
*/ /*================*/ create table users(Username
varchar(20)
not null,lim_username
varchar(20)
null,Password
varchar(10)
not null,degree
varchar(2)
not null,Phone
varchar(15)
null,“E-mall”
varchar(30)
null,Address
varchar(100)
not null,True_name
varchar(10)
not null,Postcode
varchar(6)
not null,constraint PK_USERS primary key(Username))go
alter table Administrators
add constraint FK_ADMINIST_REFERENCE_USERS foreign key(Username)
references users(Username)go
alter table Re_status
add constraint FK_RE_STATU_REFERENCE_ADMINIST foreign key(Administrator_id)
references Administrators(Administrator_id)go
alter table books
add constraint FK_BOOKS_REFERENCE_BOOKTYPE foreign key(Smalltype_id)
references booktype(Smalltype_id)go
alter table books
add constraint FK_BOOKS_REFERENCE_PUBLISH foreign key(Pub_id)
references publish(Pub_id)go
alter table booktype
add constraint FK_BOOKTYPE_REFERENCE_BOOKTYPE foreign key(Smalltype_id)
references booktype2(Smalltype_id)go
alter table leaveWords
add constraint FK_LEAVEWOR_REFERENCE_USERS foreign key(use_Username)
references users(Username)go
alter table limite
add constraint FK_LIMITE_REFERENCE_ADMINIST foreign key(Administrator_id)
references Administrators(Administrator_id)go
alter table model
add constraint FK_MODEL_REFERENCE_LIMITE foreign key(username)
references limite(username)go
alter table orders
add constraint FK_ORDERS_REFERENCE_SHIPPED foreign key(Ship_id)
references shipped(Ship_id)go
alter table orders
add constraint FK_ORDERS_REFERENCE_BOOKS foreign key(bookID)
references books(bookID)go
alter table orders
add constraint FK_ORDERS_REFERENCE_USERS foreign key(Username)
references users(Username)go
alter table sales
add constraint FK_SALES_REFERENCE_ORDERS foreign key(Order_id)
references orders(Order_id)go
alter table shipped
add constraint FK_SHIPPED_REFERENCE_SALES foreign key(Sale_id)
references sales(Sale_id)go
alter table shoppingcar
add constraint FK_SHOPPING_REFERENCE_BOOKTYPE foreign key(Smalltype_id)
references booktype2(Smalltype_id)go
alter table shoppingcar
add constraint FK_SHOPPING_REFERENCE_BOOKS foreign key(bookID)
references books(bookID)go
alter table shoppingcar
add constraint FK_SHOPPING_REFERENCE_USERS foreign key(Username)
references users(Username)go
alter table users
add constraint FK_USERS_REFERENCE_LIMITE foreign key(lim_username)
references limite(username)go
DB类:
using System;using System.Collections.Generic;using System.Text;
namespace DBLib { ///
/// 提供访问SQL Server的基本方法
/// public class DB { public DB(){ }
//connStr为访问SQL Server2000的连接字符串
//下面是临时调试使用的方法,直接设置联接字符串。
string connStr = “server=.;database=bookstore;integrated security=SSPI”;
#region 获取查询结果,DataSet GetSqlDataSet(string sqlString)///
/// public DataSet GetSqlDataSet(string sqlString){ //定义返回变量
//实例化数据集DataSet,对象名为ds DataSet ds = new DataSet();try { //实例化连接对象SqlConnection,对象名为sqlConn SqlConnection sqlConn = new SqlConnection(connStr);
//用查询的SQL(sqlString)语句和连接对象sqlConn实例化数据接口SqlDataAdapter //对象名为da SqlDataAdapter da = new SqlDataAdapter(sqlString, sqlConn);
//da.Fill(ds)是数据接口(SqlDataAdapter)提供的方法
//具体作用为:
//打开与数据库的连接
//将查询的SQL语句发送到数据库服务器 //接受返回的查询结果
//并将结果填充到数据集对象ds中
//关闭与数据库的连接 da.Fill(ds);} catch(Exception e){ //抛出捕捉到的异常
throw(e);} //返回查询到的结果
return ds;} #endregion
#region 执行增、删或改的SQL语句 int ExecuteSql(string sqlString)///
/// 返回值为受影响的行数(记录数)
/// sqlString 参数为增、删或改的SQL语句
/// public int ExecuteSql(string sqlString){ int i = 0;try { ////实例化连接对象SqlConnection,对象名为sqlConn SqlConnection sqlConn = new SqlConnection(connStr);
//用查询的SQL(sqlString)语句和连接对象sqlConn实例化SqlCommand //对象名为sqlCmd SqlCommand sqlCmd = new SqlCommand(sqlString, sqlConn);
//打开与数据库的连接 sqlConn.Open();
//将增、删或改的SQL语句发送到数据库服务器
//并接受返回的结果,返回的结果为受影响的行数(记录数)i = sqlCmd.ExecuteNonQuery();
//关闭与数据库的连接 sqlConn.Close();} catch(Exception e){ Exception ee = new Exception(sqlString + e.Message);throw(ee);} return i;} #endregion
} }
Administrators类: using System;using System.Collections.Generic;using System.Text;
namespace DBlib { class Administrators { string Administrator_id;public string Administrator_Id { get { return Administrator_id;} set { Administrator_id = value;} } string Username;public string UserName { get { return Username;} set { Username = value;} } string Administrator_name;public string Administrator_Name { get { return Administrator_name;} set { Administrator_name = value;} } string Administrator_password;public string Administrator_Password { get { return Administrator_password;} set { Administrator_password = value;} } string Administrator_e_mall;public string Administrator_E_Mall { get { return Administrator_e_mall;} set { Administrator_e_mall = value;} } DB db = new DB();public bool Insert(){ try { string sql = “insert into Administrators(Administrator_id ,Username,Administrator_name,Administrator_password,Administrator_e_mall)values('” + this.Administrator_id + “','” + this.Username + “','” + this.Administrator_name + “','” + this.Administrator_password + “','” + this.Administrator_e_mall + “')”;db.ExecuteSql(sql);return true;} catch { return false;} } public bool Delete(){ try { string sql = “delete from Administrators where Administrator_id='” + this.Administrator_id + “'”;db.ExecuteSql(sql);return true;} catch { return false;} } public bool Update(){ try { string sql = “update Administrators set Administrator_id='” + this.Administrator_id + “',Username='” + this.Username + “',Administrator_name='” + this.Administrator_name + “',Administrator_password='” + this.Administrator_password + “',Administrator_e_mall='” + this.Administrator_e_mall + “'”;db.ExecuteSql(sql);return true;} catch { return false;} } public DataSet SelectAll(){
string sql = “select * from Administrators”;DataSet ds = db.GetSqlDataSet(sql);return ds;} public DataSet Select(){
string sql = “select * from Administrators where Administrator_name like '%” + this.Administrator_name + “%'”;DataSet ds = db.GetSqlDataSet(sql);return ds;}
public bool IsExist(){ string sql = “select * from Administrators where Administrator_id='” + this.Administrator_id + “'”;DataSet ds = db.GetSqlDataSet(sql);if(ds.Tables[0].Rows.Count == 1){ return true;} else { return false;} } } }
第四篇:web项目总结
Web项目总结
转眼间,已经完成了四周的web电信项目。总体上来说在这段时间里还是学习了许多平时没有学到的东西,对项目的理解也不象以前那么肤浅了。下面就在这段时间的收获与大家分享一下:
这次项目与前一个java项目可以说有很大的不同。整个实施上也不象java项目那么盲目,全都是按照标准化流程走下去的,这是前一个项目所没有经历的阶段。对于一个程序员树立这种模式体系也是非常重要的。
第一阶段:需求分析阶段。其实我们以后在企业去,拿到一个项目都是从需求分析开始的,只有充分了解了用户的需求才能开发出功能完整,性能良好的项目。然而对于这样一个项目的开发来说不是一件容易的事情,必须作好这个阶段。了解客户需求就必须从客户的需求说明书开始分析,而我们这次就是在次基础上来作界面原形的,其实做界面原形也是一个有效了解需求的方式,这就是所谓的界面原型法。在完成界面原型后就得编写测试文档,以保证整个流程大体正确。现在我们都是在用面向对象的思维去设计程序的,那么就得把客户的需求以模块化的形式转化为一个一个的对象,总体上以模块化的形式把握整个大的项目。
第二阶段:项目分析设计阶段。在整个项目中就是这个阶段的工作要多一点,它也直接关系到后一阶段的编码,所以它在总体上起到了承上启下的作用。这一阶段的主要任务包括分析项目中对象,再根据对象设计数据库,在此包括其建模设计,在完成数据库后就是数据流图了,它大体上描述了程序走的流程,以及大体的一个架构。完成上述工作后就是类的设计了,它是根据数据流图的设计来设计的,写出每一个模块的每一个类,为下一个阶段做好准备。在此,我们就完成了整个系统的一个架构。
第三阶段:编码阶段。在整个项目中它不象java项目那么注重编码与算法,相反它注重的是设计思想以及其中的业务逻辑。一些大型项目之所以难其实也就是在业务逻辑上难以理解。所以编码阶段所占用的时间其实是很少的,对于我们开发这个项目总共用了整个项目时间的四分之一,其实在 实际工作中编码也是差不多的,重点在分析设计与后期的维护与调试。
第四阶段:测试及发布。这一阶段差不多也就是我们整个项目的最后一个阶段了,因为它没有涉及到具体的维护。不过在项目中我们对此项目的后期维护也还是作了一些考虑,比如多个用户并发时用到的事物,区域与级别在数据库中的读取,都能很好的适应客户的操作,同时也很大程度上提高了代码的可重用性,使得后期的维护更加简单方便。
到此,这四周我们就经历了这四个阶段,体会了一个项目开发从需求分析到试用的整个过程,同时也对前面所学的知识得到了全面的巩固与复习,学到了一些以后经常用到的技术(比如文件的上传,过滤器,分页技术),在此我也不做详细说明。
总之,经过这次项目让我受益非浅,思维也得到了锻炼。我想这就是所谓的工作经历吧!
周毅
10.30
第五篇:web项目总结
第二阶段项目总结
这是第二次做项目了,虽然每次做的并不是什么很大的项目,但做项目的过程中却真正体会了其中的艰辛与快乐。一个个问题解决时的快意,一个个问题产生后的迷茫,都让我回味无穷。乱七八糟的讲呢也不知道从哪讲起,所以总结了以下几点心得:
1.对于网站开发,是离不开数据库的,数据库的结构设计也是重中之重。我们团队在做的过程中对表进行了一些修改,导致很多不必要的问题。因为数据库结构设计的更改,有时会导致一定程度的返工,这时修改代码所消耗的时间会让我们得不偿失的,数据库结构设计的好坏在很大程度上决定了软件设计的速度。
2.代码书写的问题。程序代码都具有严格的规范性,所以有时一个不起眼的问题,在造成问题的同时我们也很难发现,我在读取数据库的资料时就犯了这样的问题。还有就是代码的精简度,是衡量一个优秀软件的重要指标,对于这方面我很少做考虑。
3.整体性能与用户需求。事实确实如此,我们会被很多习惯限制自己的思维,在项目中我们根本没有考虑到并发和吸引用户等问题,我想这是当下要慢慢去想的。
4.对学过的知识的掌握。做项目肯定会用到以前的一些知识点,我平常很少花时间去复习学过的知识,就是等到哪里用到了就去找,最后才发现已经忘了这个知识点是出现在那一次课了。所以对学过的知识有一个复习和很好的归纳是有必要的。
5.分工与合作。项目完成以后,我体会到任务分配的好的话,会带来很多好处,任务分配下去,不同的人要做不相干的模块,这样在整合项目的时候也会省事很多。
这次项目已经是告一段落了,但不管是项目也好个人也好,都存在很多要改进的地方,希望通过不断地总结经验、吸取教训,我们都能收获满意的自己。