web课程设计个人信息增删改查Word下载.docx

上传人:b****6 文档编号:8327509 上传时间:2023-05-11 格式:DOCX 页数:29 大小:943.73KB
下载 相关 举报
web课程设计个人信息增删改查Word下载.docx_第1页
第1页 / 共29页
web课程设计个人信息增删改查Word下载.docx_第2页
第2页 / 共29页
web课程设计个人信息增删改查Word下载.docx_第3页
第3页 / 共29页
web课程设计个人信息增删改查Word下载.docx_第4页
第4页 / 共29页
web课程设计个人信息增删改查Word下载.docx_第5页
第5页 / 共29页
web课程设计个人信息增删改查Word下载.docx_第6页
第6页 / 共29页
web课程设计个人信息增删改查Word下载.docx_第7页
第7页 / 共29页
web课程设计个人信息增删改查Word下载.docx_第8页
第8页 / 共29页
web课程设计个人信息增删改查Word下载.docx_第9页
第9页 / 共29页
web课程设计个人信息增删改查Word下载.docx_第10页
第10页 / 共29页
web课程设计个人信息增删改查Word下载.docx_第11页
第11页 / 共29页
web课程设计个人信息增删改查Word下载.docx_第12页
第12页 / 共29页
web课程设计个人信息增删改查Word下载.docx_第13页
第13页 / 共29页
web课程设计个人信息增删改查Word下载.docx_第14页
第14页 / 共29页
web课程设计个人信息增删改查Word下载.docx_第15页
第15页 / 共29页
web课程设计个人信息增删改查Word下载.docx_第16页
第16页 / 共29页
web课程设计个人信息增删改查Word下载.docx_第17页
第17页 / 共29页
web课程设计个人信息增删改查Word下载.docx_第18页
第18页 / 共29页
web课程设计个人信息增删改查Word下载.docx_第19页
第19页 / 共29页
web课程设计个人信息增删改查Word下载.docx_第20页
第20页 / 共29页
亲,该文档总共29页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

web课程设计个人信息增删改查Word下载.docx

《web课程设计个人信息增删改查Word下载.docx》由会员分享,可在线阅读,更多相关《web课程设计个人信息增删改查Word下载.docx(29页珍藏版)》请在冰点文库上搜索。

web课程设计个人信息增删改查Word下载.docx

(2)强调可重用的组件

绝大多数JSP页面依赖于可重用的,跨平台的组件(JavaBeans或者EnterpriseJavaBeansTM组件)来执行应用程序所要求的更为复杂的处理。

开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者或者客户团体所使用。

基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。

(3)采用标识简化页面开发

Web页面开发人员不会都是熟悉脚本语言的编程人员。

JavaServerPage技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。

标准的JSP标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。

(4)健壮性与安全性

由于JSP页面的内置脚本语言是基于Java编程语言的,而且所有的JSP页面都被编译为JavaServlet,JSP页面就具有Java技术的所有好处,包括健壮的存储管理与安全性.

(5)良好的移植性:

作为Java平台的一部分,JSP拥有Java编程语言"

一次编写,随处运行"

的特点。

(6)企业级的扩展性和性能:

当与Java2平台、企业版(J2ee)和EnterpriseJavaBeans技术整合时,JSP页面将服务器JSP页面中的程序代码的识别就是依靠一些基本指令完成.

2.3JSP技术

JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。

网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。

JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。

2.4访问WEB数据库常见技术

目前在WINDOWS环境下有多种访问WEB数据库的技术,主要有:

(1)公共网关接口CGI(CommonGatewayInterface)

CGI是较早实现的技术。

适用于多种服务器平台,如UNIX、WINDOWS等,但CGI的开发成本高、维护困难、功能有限、不具备事务处理功能、占用服务器资源较多。

(2)INTERNET数据库连接器IDC(InternetDatabaseConnector)。

IDC集成在ISAPI(InternetServerAPI)中,充分利用了DLL技术,易扩充,但编程较CGI更为复杂,只适用于小型数据库系统。

(3)先进数据库连接器ADC(AdvanceDatabaseConnector)

ADC提供了ActiveXControl来访问数据库,它的主要特点是数据查询由用户端浏览器执行,因而需将服务器端数据库中的部分记录下载到用户端,系统开销较大、响应慢,只适用于特别频繁的数据库查询操作。

(4)JAVA/JDBC语言编程

JAVA语言是一种面向对象、易移植、多线程控制的语言,可通过JDBC去连接数据库。

用JAVA/JDBC编写的软件可移植性强,适用于多种操作系统,但其执行效率和执行速度还不理想,目前无法建立高效、高速的应用。

(5)动态服务器页面JSP(ActiveServerPage)

JSP是微软公司推出的WEB应用开发技术,着重于处理动态网页和WEB数据库的开发,编程灵活、简洁,具有较高的性能,是目前访问WEB数据库的非常好的选择。

2.5本系统采用的数据库访问技术

本新闻发布系统使用JDBC访问SqlServer数据库,JDBC(JavaDataBaseConnectivity,java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。

JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯JavaAPI编写数据库应用程序,同时,JDBC也是个商标名。

有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。

换言之,有了JDBCAPI,就不必为访问Sybase数据库专门写一个程序,为访问Oracle数据库又专门写一个程序,或为访问Informix数据库又编写另一个程序等等,程序员只需用JDBCAPI写一个程序就够了,它可向相应数据库发送SQL调用。

同时,将Java语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Java语言“编写一次,处处运行”的优势。

Java数据库连接体系结构是用于Java应用程序连接数据库的标准方法。

JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。

作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。

JDBC使用已有的SQL标准并支持与其它数据库连接标准,如ODBC之间的桥接。

JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。

访问并操纵数据库服务器中的数据。

JDBC由JSP技术支持,其数据库访问模型如下图所示。

图2-1采用JDBC技术实现数据库访问模型

2.6B/S开发模式

B/S结构,即Browser/Server--浏览器/服务器结构,浏览器发送请求而服务器应答请求。

其工作原理如下

图2-2B/S结构的三层模型

前台通过IE、Firefox等浏览器向Web服务器发送HTTP请求,web服务器通过JSP和一些中间件访问后台数据库,并将操作的结果以HTML页面的形式返回给前端的浏览器。

比与C/S模式,采用B/S模式用户的操作更加简单,不像C/S需要在客户端进行客户端程序,只需要一个通用浏览器即可完成数据的请求与接收,大幅的减少了客户端的维护工作。

同时,B/S模式使用的技术是Internet的Web技术,因而更适合于网上的信息发布。

第三章运行界面

3.1登录界面

本系统登录时需要用户名与密码,当用户名为admin时其密码为123456。

登录时的密码与用户名可以在数据库中新建。

图3-1登录界面

3.2主界面

点击登录后,进入本系统的主界面。

在此界面中,右上方一行为用户操作栏,可进行用户的个人信息查询、修改密码、退出系统等操作;

左侧为菜单栏(导航菜单--个人信息—个人简历),点击导航菜单旁的箭头,可实现菜单栏的隐藏与显现。

图3-2主界面

3.3个人简历界面

点击个人简历,进入个人简历界面。

在个人简历列表中,包含了增删改查四部分,本页信息条数固定最大值为15条,超出15条自动分页。

图3-3个人简历界面

3.3.1新增界面

此界面,我将所有填写项均设定为必填项(即isvalid!

=1)。

当填写信息未将信息栏填写全点击保存时,提示“该项为必填项,请填写”。

将所有项填写完全,点击保存,则提示保存成功,并跳转回个人简历界面。

点击清空,则将所有已填好的信息清空。

点击取消,则跳转回个人简历界面。

图3-4新增界面

图3-5填写后的新增界面

3.3.2保存成功后跳转为主页面

图3-6保存成功

3.3.3未选中信息点击修改

未选中信息点击修改与未选中信息点击删除以及未选中信息点击查询的界面相同

图3-7请选中一行

3.3.4修改界面

图3-8修改界面

3.3.5选中信息点击删除

选中信息点击删除时,出现提示框,点击确定则删除此条信息,若点击取消,则返回个人简历界面。

图3-9确定、取消

3.3.6查询个人简历界面

图3-10个人简历1

图3-11个人简历2

3.4退出系统

点击右上角我的操作—退出登录,则弹出提示框。

点击取消,返回个人简历界面;

点击确定,退出系统并返回登录界面。

图3-12退出登录

第四章代码部分

4.1数据库设计

4.1.1数据字典

本系统采用SqlServer数据库,在数据库中使用数据表来储存个人信息。

字段名称

数据类型

说明

name

Varchar(50)

姓名

sex

Varchar

(2)

性别

phone

电话号码

School

学校

Profession

专业

Email

电子邮箱

jobIntention

求职意向

edubackground

Varchar(500)

教育背景

schoolWork

学校工作

seciaWork

社会工作

selfEvaluation

自我评价

isValid

Char

(1)

标志

resumeId

Bigint

唯一标识

表4-1数据表

4.1.2数据库代码

SETANSI_NULLSON

GO

SETQUOTED_IDENTIFIERON

SETANSI_PADDINGON

CREATETABLE[dbo].[PerResume](

[name][varchar](50)NULL,

[sex][varchar]

(2)NULL,

[phone][varchar](50)NULL,

[school][varchar](50)NULL,

[profession][varchar](50)NULL,

[email][varchar](50)NULL,

[jobIntention][varchar](50)NULL,

[edubackground][varchar](500)NULL,

[schoolWork][varchar](500)NULL,

[socialWork][varchar](500)NULL,

[selfEvaluation][varchar](500)NULL,

[isValid][char]

(1)NULL,

[resumeId][bigint]NOTNULL,

CONSTRAINT[PK_resumeId]PRIMARYKEYCLUSTERED

([resumeId]ASC

)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY])ON[PRIMARY]

SETANSI_PADDINGOFF

4.2部分代码

publicclassresumeextendsGenericController{

publicStringselectByCondtition(

ModelMapmap,

HttpServletRequestrequest,

@RequestParam(value="

page"

required=false)Stringpage,

rows"

required=false)StringpageSize)

throwsUnsupportedEncodingException{

Page<

Perresume>

pageInfo=newPage<

>

((null==page)?

1:

Integer.valueOf(page),(null==pageSize)?

15:

Integer.valueOf(pageSize));

List<

list=resumeService.selectList(pageInfo);

ObjectMapperobjectMapper=newObjectMapper();

objectMapper.setDateFormat(newSimpleDateFormat("

yyyy-MM-dd"

));

Stringresult="

"

;

try{

result="

{\"

total\"

:

"

+pageInfo.getTotalCount()+"

\"

rows\"

:

+objectMapper.writeValueAsString(list)+"

}"

}catch(JsonProcessingExceptione){

//TODOAuto-generatedcatchblock

e.printStackTrace();

}

returnresult;

}

@RequestMapping("

/resume"

@RequiresPermissions(value=PermissionSign.TRAIN_MAINTAIN)

publicStringpersonnelPage(

oprationResult"

required=false)StringoprationResult,

ModelMapmap){

return"

/resume/resume"

}

/insertPage"

@RequiresPermissions(value=PermissionSign.TRAIN_CREATE)

publicStringinsertPage(ModelMapmap,HttpServletRequestrequest){

/resume/insertResume"

/insert"

publicStringinsert(ModelMapmap,HttpServletRequestrequest,

resumeId"

required=false)LongresumeId)

throwsParseException{

Perresumeperresume=newPerresume();

if(null==resumeId){

perresume.setResumeid(PrimaryKeyGenerator.getLongKey());

}else{

perresume.setResumeid(resumeId);

Stringname=request.getParameter("

name"

);

Stringsex=request.getParameter("

sex"

Stringphone=request.getParameter("

phone"

Stringschool=request.getParameter("

school"

Stringprofession=request.getParameter("

profession"

Stringemail=request.getParameter("

email"

StringjobIntention=request.getParameter("

jobIntention"

Stringedubackground=request.getParameter("

edubackground"

StringschoolWork=request.getParameter("

schoolWork"

StringsocialWork=request.getParameter("

socialWork"

StringselfEvaluation=request.getParameter("

selfEvaluation"

perresume.setName(name);

perresume.setSex(sex);

perresume.setPhone(phone);

perresume.setSchool(school);

perresume.setProfession(profession);

perresume.setEmail(email);

perresume.setJobintention(jobIntention);

perresume.setEdubackground(edubackground);

perresume.setSchoolwork(schoolWork);

perresume.setSocialwork(socialWork);

perresume.setSelfevaluation(selfEvaluation);

perresume.setIsvalid("

1"

inti=0;

Stringmsg="

i=resumeService.insert(perresume);

msg=EnumOpration.INSERT_SUCCESS.getCode();

else{

i=resumeService.update(perresume);

msg=EnumOpration.UPDATE_SUCCESS.getCode();

if(i==1){

map.put("

msg);

redirect:

/resume/resume.html"

/delete"

@RequiresPermissions(value=PermissionSign.TRAIN_DELETE)

publicStringdeletereason(ModelMapmap,HttpServletRequestrequest){

/*Stringid=request.getParameter("

id"

*/

/*Map<

String,Object>

infoMap=newHashMap<

();

Stringids=request.getParameter("

ids"

//Long.parseLong()

Stringisvalid=EnumBool.NO.getCode();

String[]idsStr=ids.split("

"

Long>

idsLong=newArrayList<

for(inti=0;

i<

idsStr.length;

i++){

idsLong.add(Long.parseLong(idsStr[i]));

intresult=resumeService.deleteResume(idsLong,isvalid);

if(result>

0){

EnumOpration.DELETE_SUCCESS.getCode());

}

packagecom.bybo.hr.web.model.resume;

publicclassPerresume{

privateLongresumeid;

privateStringname;

privateStringsex;

privateStringphone;

privateStringschool;

privateStringprofession;

privateStringemail;

privateStringjobintention;

privateStringedubackground;

privateStringschoolwork;

privateStringsocialwork;

private

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2