| 注册
home doc ppt pdf
请输入搜索内容

热门搜索

年终总结个人简历事迹材料租赁合同演讲稿项目管理职场社交

JAVA学习网站的设计与实现毕业设计

文***品

贡献于2020-12-15

字数:16322



毕业文(设计)

题 目  JAVA学网站设计实现     

院 系
专 业 计算机科学技术
学生姓名
学 号
指导教师
职  称   副教授  


二O 年 X 月 X日



声 明

郑重声明:
1 持求实创新科学精神事研究工作
2 文导师指导进行研究工作取研究成果
3 文中引文外实验数关材料均真实
4 文中引文致谢容外没抄袭机构已发表撰写研究成果
5 志研究做贡献均已文中作声明表示谢意




作者签名:
日 期:    
目 录
1前言 1
2 开发技术相关工具简介 1
21 JSP技术 1
22 MyEclipse+Eclipse简介 2
23 Tomcat简介 3
24 SQL Server 2005数库 3
3系统概述设计 4
31系统功需求 4
32 系统结构设计 5
33 系统功模块划分 5
4数库结构设计实现 6
41 数库概念结构设计 6
42数库逻辑结构设计 8
5组件设计 9
51数库连接 9
52户Bean编写 9
53户相关处理Bean编写 10
54文章Bean编写 13
55 文章处理Bean 13
56 资源Bean编写 13
57 资源处理Bean 14
58 书籍Bean编写 14
59书籍处理Bean 14
6普通户设计 14
6.1登录 14
62精品文章界面 16
63资料载界面 16
64书籍推荐界面 18
7理员设计 19
71理户 19
72理文章 21
73理载 22
74 理图书 26
结束语 27


JAVA学网站


摘:设计介绍完整Java学网站包括系统概述设计数库结构设计实现详细设计等部分系统户提供学Java台系统概述设计包含系统功需求系统结构设计系统功模块划分等容数库结构设计中构造出ER图完成户理文章理户评载理书籍理等功详细设计包含系统功模块具体实现
关键词:JAVA 学 传载JSP文章浏览
1前言
Java仅开发型桌面应程序特适合Internet应开发目前Java语言仅门正广泛编程语言已成软件设计开发者应掌握门基础语言Java语言面象编程涉网络线程等重基础知识新技术领域涉Java语言学掌握Java已成识国外许学已Java语言列入科教学计划IT行业Java需求正断增长
Java涉方面较容较广学起容易迷失方找正确路线鉴设计样系统
系统Java学网站提供文章阅读书籍推荐资料载等全方面功希想学Java学提供学台予定帮助
文章阅读模块提供网络收集Java关典文章包括技术理解学方法介绍等
书籍推荐读者介绍学Java典书籍资料载提供课件教学视频等式样学资源载功
2 开发技术相关工具简介
21 JSP技术
JSP技术Java编程语言编写类XMLtagsscriptlets封装产生动态网页处理逻辑网页通tagsscriptlets访问存服务端资源应逻辑JSP网页逻辑网页设计显示分离支持重基组件设计基Web应程序开发变迅速容易
Web服务器遇访问JSP网页请求时首先执行中程序段然执行结果连JSP文件中HTML代码起返回客户插入Java程序段操作数库重新定网页等实现建立动态网页需功
JSPJava Servlet样服务器端执行通常返回客户端HTML文客户端浏览器浏览
JSP10规范版1999年9月推出12月推出11规范目前较新JSP12规范JSP20规范征求意见稿已出台
JSP页面HTML代码嵌入中Java代码组成服务器页面客户端请求Java代码进行处理然生成HTML页面返回客户端浏览器Java Servlet JSP技术基础型Web应程序开发需Java ServletJSP配合完成JSP具备Java技术简单易完全面象具台关性安全面特网特点
JSP推出众公司支持JSP技术服务器IBMOracleBea公司等JSP迅速成商业应服务器端语言
JSP种简单易懂等式表示:HTML+JavaJSP

22 MyEclipse+Eclipse简介
Eclipse 开放源代码基 Java 扩展开发台身言框架组服务通插件组件构建开发环境幸运Eclipse 附带标准插件集包括 Java 开发工具(Java Development ToolsJDT)
Eclipse著名跨台集成开发环境(IDE)初Java语言开发目前通插件作计算机语言C++Python开发工具Eclipse身框架台众插件支持Eclipse拥功相固定IDE软件难具灵活性许软件开发商Eclipse框架开发IDE
Eclipse 初OTIIBM两家公司IDE产品开发组创建起始1999年4月IBM提供初Eclipse代码基础包括PlatformJDT PDE目前IBM牵头围绕着Eclipse项目已发展成庞Eclipse联盟150家软件公司参Eclipse项目中中包括BorlandRational SoftwareRed HatSybase等Eclipse开发源码项目实 Visual Age for Java代品界面先前Visual Age for Java差开放源码免费基础开发插件越越受关注期包括Oracle许公司纷纷加入该项目宣称Eclipse成进行语言开发IDE集成者者需载种语言插件
MyEclipse十分优秀开发Java J2EEEclipse插件集合MyEclipse功非常强支持十分广泛尤种开元产品支持十分错
MyEclipse企业级工作台(MyEclipse Enterprise Workbench 简称MyEclipse)Eclipse IDE扩展利数库JavaEE开发发布应程序服务器整合方面极提高工作效率功丰富JavaEE集成开发环境包括完备编码调试测试发布功完整支持HTML Struts JSF CSS Javascript SQL Hibernate

23 Tomcat简介
Tomcat 受广程序员喜欢运行时占系统资源扩展性支持负载衡邮件服务等开发应系统常功断改进完善中感兴趣程序员更改中加入新功
Tomcat 型轻量级应服务器中型系统发访问户场合普遍开发调试JSP 程序首选初学者说样认台机器配置Apache 服务器利响应HTML 页面访问请求实际Tomcat 部分Apache 服务器扩展独立运行运行tomcat 时实际作Apache 独立进程单独运行
里诀窍配置正确时Apache HTML页面服务Tomcat 实际运行JSP 页面Servlet外TomcatIISApache等Web服务器样具处理HTML页面功外ServletJSP容器独立Servlet容器Tomcat默认模式Tomcat处理静态HTML力Apache服务器
24 SQL Server 2005数库
SQL Server 2005 全面数库台集成商业智 (BI) 工具提供企业级数理SQL Server 2005 数库引擎关系型数结构化数提供更安全存储功您构建理业务高高性数应程序SQL Server 2005 数引擎企业数理解决方案核心外 SQL Server 2005 结合分析报表集成通知功您企业构建部署济效 BI 解决方案帮助您团队通记分卡DashboardWeb services 移动设备数应推业务领域
Microsoft Visual StudioMicrosoft Office System 新开发工具包(包括 Business Intelligence Development Studio)紧密集成 SQL Server 2005 众您开发员数库理员信息工作者决策者SQL Server 2005 您提供创新解决方案帮助您数中更获益

3系统概述设计
系统采目前较流行BS架构整系统采JSP技术应服务器端Tomcat服务器数库服务器采微软SQL Server 2005
31系统功需求
户分普通户理员户两类
普通户拥注册登录查精品文章评文章查推荐书籍载资源等功
理员拥理户理文章理书籍理载四模块
理户模块
(1)查户
(2)修改户信息
(3)添加户
(4)删户
理文章
(1)查文章信息
(2)修改文章
(3)添加文章
(4)删文章
理书籍
(1) 查书籍信息
(2) 修改书籍信息
(3) 添加书籍信息
(4) 删书籍信息
理载
(1)查载资料信息
(2)删载信息
(3)传文件

32 系统结构设计
根系统功模块划分系统结构设计图31示

图31 系统结构设计图
33 系统功模块划分
1普通户权限图32示:

图32 普通户权限
2理员户权限图33示:


图33 理员户权限图
4数库结构设计实现
41 数库概念结构设计
数库系统中起着十分重作数库设计坏直接影响系统效率实现效果
实例实体:户信息实体文章信息实体户评实体推荐书籍实体载资源实体

户ID
户名
户邮箱
户级
户信息实体属性图图41示
图41 户信息属性
文章
文章ID
户标题
文章容
文章信息实体属性图图42示
图42文章信息属性图

评ID
评者
评容
文章ID
户评实体属性图图43示:
图43 户评实体属性图

书籍
书籍ID
书籍名称
书籍介绍
书籍封面图
推荐书籍实体属性图图44示:
图44 推荐书籍实体属性图
资源
资源ID
资源标题
资源链接图
载资源实体属性图图45示:
图45 载资源实体属性图

42数库逻辑结构设计
数库概念结构设计完现数库概念结构转化数库系统支持实际数模型数库逻辑结构
系统SQL Server数库表设计结果表41表45示表格表示数库中表
户信息表users表41示记录理员普通户信息
表41户表(users)
列名
数类型
允许空
说明
useId
int

户ID
username
Varchar(20)
yes
户名
passwd
Varchar(20)
yes
户密码
email
Varchar(30)
yes
户邮箱
grade
int
yes
户级
文章表表42示记录文章信息
表42文章表(article)
列名
数类型
允许空
说明
id
int

文章ID
title
Varchar(50)
yes
文章标题
detail
text
yes
文章容
评表表43示记录评信息
表43评表(remark)
列名
数类型
允许空
说明
id
int

评ID
username
Varchar(20)
yes
评者
content
text
yes
评容
articleid
int
yes
文章ID
推荐书籍表表44示记录书籍信息
表44推荐书籍表(books)
列名
数类型
允许空
说明
bookId
int

书籍ID
bookname
Varchar(20)
yes
书籍名称
bookinfo
text
yes
书籍简介
photo
Varchar(20)
yes
书籍封面图
载资源表表45示记录载资源信息
表45载资源表(resourse)
列名
数类型
允许空
说明
id
int

资源ID
title
Varchar(50)
yes
资源标题
Link
Varchar(50)
yes
资源链接
5组件设计
51数库连接
数库连接ConnBjava文件中返回数库连接公类类果连接数库需构造类象源代码示:
public class ConnB {
Connection ctnull
public Connection getCon(){
try{
ClassforName(commicrosoftsqlserverjdbcSQLServerDriver)
连接
ctDriverManagergetConnection
(jdbcsqlserverlocalhost1433databaseNameuserusersapassw ord37917290)
}catch(Exception e){
eprintStackTrace()
}

return ct
}

}
52户Bean编写
户类UserBean负责描述户属性属性getset方法源代码中省略部分属性getset方法户类代码示:
public class UserBean {
private int userId
private String userName
private String passwd
private String email
private int grade
public int getUserId() {
return userId
}
处代码省略
public void setGrade(int grade) {
thisgrade grade
}
}
53户相关处理Bean编写
户分普通户理员进行户操作时判断户属种身份户相关处理存放UserBeanCLjava文件中

public class UserBeanCL {
private Connection ctnull
private Statement smnull
private ResultSet rsnull
private int pageCount0
private int rowCount0
private int pageSize3
页数
public int getPageCount()
{
try{
ctnew ConnB()getCon()
smctcreateStatement()
ResultSet rssmexecuteQuery(select count(*) from users)
if(rsnext()){
rowCountrsgetInt(1)
}
if(rowCountpageSize0){
pageCountrowCountpageSize
}else{
pageCountrowCountpageSize+1
}
}
catch(Exception e){
eprintStackTrace()
}finally{
thisclose()
}
return pageCount

}
通页数返回户详细信息示输入页数会返回该页数应该显示容集合
public ArrayList result(int pageNow)
{
ArrayList alnew ArrayList()
try {
ctnew ConnB()getCon()
sm ctcreateStatement()
rs smexecuteQuery(select top + pageSize
+ * from users where userId not in (select top
+ pageSize * (pageNow 1) + userId from users) )
while (rsnext()) {
UserBean ub new UserBean()
ubsetUserId(rsgetInt(1))
ubsetUserName(rsgetString(2))
ubsetPasswd(rsgetString(3))
ubsetEmail(rsgetString(4))
ubsetGrade(rsgetInt(5))
aladd(ub) al放arrayList中
}
}
catch(Exception e){
eprintStackTrace()
}
finally{
thisclose()
}
return al
}
根输入户名密码级判断否允许户登录代码示:
public boolean compare(String pString uint g)
{
boolean bfalse
try{
ctnew ConnB()getCon()
smctcreateStatement()
rssmexecuteQuery(select top 1 passwdgrade from users where username'+u+')
if(rsnext()){
String passwdrsgetString(1)
int gradersgetInt(2)
Systemoutprint(grade)
if(passwdequals(p)&&gradeg){
btrue
}
}

}catch(Exception e){
eprintStackTrace()
}finally{
thisclose()
}
return b
}
54文章Bean编写
文章Bean应文件ArticleBeanjavabean描述文章资源基属性属性值getset方法代码中省略部分属性getset方法
public class ArticleBean {
private int id
private String title
private String content
public int getId() {
return id
}
处代码省略
public void setContent(String content) {
thiscontent content
}
}
55 文章处理Bean
处代码户处理Bean类似代码ArticleCljava文件中查源文件处详细列出
56 资源Bean编写
文章Bean应文件ArticleBeanjavabean描述文章资源基属性属性值getset方法代码中省略部分属性getset方法
public class ResourseBean {
private int id
private String title
private String link
public int getId() {
return id
}
处代码省略
public void setLink(String link) {
thislink link
}
}
57 资源处理Bean
处代码户处理Bean类似代码ResourseBeanCljava文件中查源文件处详细列出
58 书籍Bean编写
public class BooksBean {
private int id
private String bookname
private String bookinfo
private String photo
public int getId() {
return id
}
处代码省略
public void setPhoto(String photo) {
thisphoto photo
}
}
59书籍处理Bean
处代码户处理Bean类似代码BookBeanCljava文件中处详细列出
6普通户设计
6.1登录
网站需登录方进入需输入户名密码登录界面图61示:

图61 登录界面
户登录输入户名密码然选择身份(户理员)然单击登录钮户信息提交logincljsplogincljsp页面完成数库认证验证成功根户身份动跳转相应页面户信息保存进session供页面判断户否已登录Logincljsp代码示:
<
String passwordrequestgetParameter(password)
String usernamerequestgetParameter(user)
int gradeIntegerparseInt(requestgetParameter(grade))
UserBeanCL ubcnew UserBeanCL()
if(ubccompare(passwordusernamegrade)){
sessionsetAttribute(unameusername)
sessionsetAttribute(gradegrade+)
switch (grade)
{
case 1responsesendRedirect(firstjsp)break 登录户学生
case 2responsesendRedirect(adminjsp)break 登录户理员
defaultresponsesendRedirect(firstjsp)break
}
} else{
responsesendRedirect(indexjsp)
}
>
62精品文章界面
该界面显示文章超链接点击链接会显示文章详情运行效果图62示:

图62 文章列表

篇文章相应评区域户文域中输入想评容单击发表评钮实现评功效果截图(图63)

图63 评界面
63资料载界面
该界面提供Java相关学资源载点击想载文件应链接时会弹出载话框代码包含resourcejsp文件中代码示:
<
for(int i0i {
ResourseBean rbnew ResourseBean()
rb(ResourseBean)alget(i)
>
    >载
<
}
>
运行效果图6465示:

图64 课件载界面
点击载弹出载话框:

图65 载话框
64书籍推荐界面
书籍推荐界面户推荐利JAVA学典书籍分成两行显示行显示三书包括书封面图书籍名称单击书籍名称时会进入书籍简介界面运行效果截图6667示:

图66 书籍推荐界面
点击书籍名称应书籍简介界面:

图67 书籍简介界面
7理员设计
户理员身份登录进入理员界面提供理户理文章理书籍理载资源等功
71理户
理户界面完成显示户列表删户修改户等功运行截图图71示:

图71 户理界面
户点击修改户时讲进入修改户界面中户ID读修改属性均做相应修改效果图72示:

图72 修改户界面
修改户界面应代码包含updateUserjsp文件中代码示:

修改户信息









户ID>
户名>
密码>
户级>


  



修改完单击修改户钮修改数提交UsersClServletUsersClServlet调相应组件数库中存放数进行修改修改户信息代码存放UserBeanCl中核心代码示:
public boolean updateUser(String idString nameString passwdString grade){
boolean bfalse
try{
ctnew ConnB()getCon()
smctcreateStatement()
int asmexecuteUpdate(update users SET username'+name+'passwd'+passwd+'grade'+grade+' where userId'+id+')
a修改记录数
if(a1){
btrue
}
}catch(Exception e){
eprintStackTrace()
}
return b
}
户单击删户讲弹出话框询问否确定删应JavaScript代码示: