《新闻发布系统》的设计与开发

实验目的:

  了解web应用程序开发的流程

  了解MVC设计思想

  进一步提高Java面向对象编程的能力

  掌握MySQL数据库的基本操作

  掌握Java访问/操作MySQL数据库的基本操作

实验步骤:

一、需求分析

二、设计

1、数据库设计

(1)角色表role

字段名

字段类型

备注

roleId

int

角色编号(主键,自动编号)

roleName

varchar(20)

角色名(本系统两种角色,分别是普通用户和管理员)

输入两条记录

roleId

roleName

2

普通用户

1

管理员

(2)用户表member

字段名

字段类型

备注

userId

int

用户编号(自动编号,主键)

userName

varchar(50)

用户名(唯一)

password

varchar(255)

密码

roleId

int

角色编号(外键)

realName

varchar(50)

姓名

输入2条记录进行测试:

userId

userName

password

roleId

realName

1

mike

123456

0

刘玄德

2

admin

123456

1

任我行

(3)分类表 category

字段名

字段类型

备注

categoryId

int

分类编号(主键,自动编号)

categoryName

varchar(50)

分类名称

(4)新闻表 news

字段名

字段类型

备注

newsId

int

新闻编号(主键,自动编号)

title

varchar(255)

新闻标题

content

varchar(5000)

新闻内容

userId

int

作者(即用户编号,外键)

postTime

datetime

发表时间(默认值为当前时间(Current_timestamp())

hits

int

点击次数(默认值为0)

categoryId

int

分类编号(外键)

2、项目设计

(1)新建web项目news

(2)web UI(用户界面)设计

  bootstrap

  a.设计统一的导航栏

   b.设计登录界面(模态框)

   c.设计注册界面(模态框)

三、开发

1、实现登录功能。

 mysql加密函数:

password():早期的加密函数,8.x已移除了。

md5():5.x or 8.x

sha():5.x or 8.x

  (1)登录验证

  (2)cookie记住用户名和密码

  (3)session存储登录用户的信息

2、实现注册功能

  (1)将填写的用户信息写入数据库

  (2)在写入之前进行数据验证

   客户端验证(js验证):

  html+css+js

  js:行为,表单验证和增强网页动态效果。

  js代码可以在网页的任何位置嵌入,以<script>来标记。

  获取DOM对象的方法:

  如果是表单元素,可以直接通过name得到。

  比如:form2.userName.value

  正则表达式

  正则表达式对象:

  (1)/<正则表达式>/[参数]

  (2)new Regex(<正则表达式>)

  调用正则表达式的方法:

  格式:<正则表达式对象>.test(<字符串>)

  功能:判断指定的字符串是否匹配正则表达式,返回值是bool型。

  正则表达式的模式:

  ^:字符开始,例如:^[0-9]

  $:字符结束,例如:[a-f]$

  汉字的Unicode编码范围:u4E00-u9FA5

  

  客户端数据验证

  服务器端数据验证

  

  检测用户名是否存在

  

  onblur:是一个失去焦点事件

  

  

  

原文地址:https://www.cnblogs.com/beast-king/p/12693366.html