当前课程知识点:软件开发实训--动态网站开发 > 5 环境搭建与开发 > 5.3创建用户实体 > 5.3.1用户实体创建
同学你好
欢迎回到软件开发实训课堂
上节课咱们把环境搭建好了
那么从这节课开始
咱们就开始实施我们的代码编写
那么首先我们来看一下用户的实体
与数据库的创建
首先我们来创建一个数据库
我们打开my circle的数据库客户端
通过命令行登陆它
这里边登录的时候注意使用root来登进去
并创建用户
以及它的数据库
我们来首先创建一个数据库
因为我们的用户已经存在了
创建数据库的命令是creat databa
然后跟上我们的数据库名称
我们这里就叫做sitedb
当你看到Query OK时就已经创建好了
这样我们可以用show databases
来看一下
我们数据库是否已经出现在我们的库里了
已经有了
然后我们给它授权
让用户对数据库具有操作的权限
授权的命令是grant
我们把数据库的所有权限都授给它
grant all on
sitedb.*
对于sitedb这个数据库呢
所有的内容
它的所有权限
to给一个用户
我们这里还是使用我们自己的用户
用户名加上一个@
然后加上主机
通常情况下我们在开发时只需要让用户在本机
链接数据库就可以了
如果你的数据库不在本机上
你这里需要写出它的域名或者是ip地址
最后把密码给它
我们的密码还是使用它的原来的密码
这样我们就把用户权限给了它
现在我们退出my circle的命令行
然后通过我们的客户端再去测试一下当前用户
是否能够登录到系统里
看到我们新建的数据库
通过命令显示
sitedb已经出现在了我们的列表里
这就说明用户能够操作数据库了
回到我们的开发环境
在这里我们需要修改一下我们的数据库
打开我们的配置文件
application.properties
在这里找到我们的数据源url这个配置信息
把数据库名改成sitedb就可以了
这样我们这个数据库它就是一个空库
它里面没有任何的表现
现在呢,我们就来创建我们需要的实体和数据库
对于JPA来讲
我们通过spring平台来开发时
它能够通过hibernate的自动的创建功能
去创建数据库
所以我们只需要把实体定义出来就可以了
现在我们来定义实体
首先我们新建一个Java类
这个类根据我们设计
对于用户实体来讲
我们使用的是User
这个类名
然后包我们可以给它写上
在我们默认包的后面加上一个domain
然后点击完成
这样你就看到了一个新建好的Java类
为了让它能够成为JPA的实体
我们需要增加一个注解Entity
来表明它是实体
同时根据我们的设计
对应的表明
我们只是需要在它后边加一个S
还有就是全部字母用小写
因此我们要通过Table注解
来把名称给出来
这样在数据库里边它将会使用users
来作为我们实体user对应的表
把对应的相关类给它导进来
对于用户
我们可以查看一下我们的文档
它具体所包含的有关字段
通过查阅我们前面所写的数据字典
可以看到它
好
我们对照着我们的数据字典
一个一个的来定义
它的字段
第一个是用户的编号
名称为uid
第二个是登录时使用的账号
它是一个字符串
这里边给出了它的长度30
所以我们需要去定义它的长度
用Colum注解给出长度
Colum注解的属性length
就可以定义一个字段的长度了
而uid是我们的主键
并且
我们让它自动的去产生值
自动产生值的策略
我们使用数据库自带的策略
GenerationType为等ID
我们把这需要的注解类都给它导进来
好
这样的话我们的主键它就是自增形的了
就不需要我们去关注它的值
下一个是密码
而密码它的长度也是30
这两个信息它是不允许为空的
所以我们需要用NotNull注解
来表明字段不可以为空
再就是name姓名
根据设计它的长度
也是30
性别
长度是char1
但是对于汉字来讲
char1它有可能存不下汉字
所以我们可以用字符来存储
也可以使用整形来存储
把它
如果说你要用汉字的话
把那char1可以改为char2
这里边我们就用汉字
所以我们在修改的时候
先要去修改一下我们的文档
把文档修改后再回过头来去修改我们内容
那么对于性别来讲
我们可以给它用枚举类型来进行处理
所以我们需要在这里定一个枚举类型
public enum
Sex
然后在这里输入男,女
再来定义我们的字段
sex
对于日期
我们设计的时候
可以使用整型也可以使用这个日期型
而Java8对日期的处理
可以说是已经非常灵活了
而这里使用的是整型
整型的话我们也可以通过java 来进行转换
把日期转换成我们需要的整型
可是对于java来讲
用Java8的日期处理类更容易一些
不需要相对应的转换
所以我们这里直接可以去修改我们的设计文档
将它改成日期型
当然了
如果你使用的是其他语言
比如说pmp它更适合于处理整型
我们这里把它改成
datatime
或者是timestempe
我们来定义它
可以通过LocoalDatetime
来定义它的日期
再来定义我们的手机号码
手机号的长度
通常就是11位的
长度为11位
导入我们需要的
email往往比较长
我们可以用它的默认的255
也可以根据设计
把它的值固定为
为一百
长度固定为一百
最后登录时间
那么java的整形时间该怎么处理呢
这里我们为了示例
把这个时间就用整型来进行处理
这是一个
最后登录时间
把它注释一下
要不然你不知道它是什么了
然后我们这个用户他登录了多少次
可以用logincount来记录它登录次数
对于用户通常情况下我们不删除他
仅仅只是让他失去效果
就不能再登录了
把它锁定了
这个时候
我们定义一个
整型来标志它的状态
这个定义的顺序要注意
这是用户是否有效
是否被锁定了
对
前面那些个单词看到后你就知道
它含义的成员你可以不加注释
大家一看都知道
但是后面这些个
你看了以后还得去思考它是什么
那你就加上注释
这样的话一眼就能看明白了
好
有关用户的实体
它的字段我们就输入完成了
现在我们来通过工具生成
它的setter getter的方法以及
相关的hashCode和equals
点击右键插入代码
或者按快捷键Alt加insert
然后会弹出生成的对话框
我们选择全部
这样我们就生成了setter getter方法
在最后呢
我们再来生成它的hash以及
这个
比较的equals方法
好
这节课有关实体和数据库的创建就讲这么多
下节课我们再见
-1.1课程介绍
--1.1.3随堂测试
-1.2网站需求分析
--1.2.4随堂测试
-1.3网站首页分析
--1.3.3随堂测试
-1.4导航菜单分析
--1.4.3随堂测试
-1.5内容区域分析
--1.5.3随堂测试
-1.6内容副页面分析
-1.7编写需求文档
-2.1后端页面总体分析
--2.1.3随堂测试
-2.2用户管理功能设计
--2.2.3随堂测试
-2.3内容与分类功能分析
--2.3.3随堂测试
-2.4网站配置功能设计
--2.4.4随堂测试
-2.5数据库及表结构分析
-总体设计文档
-3.1前台模板约定
--3.1.3随堂测试
-3.2网站配置接口设计
--3.2.3随堂测试
-3.3菜单接口设计
--3.3.3随堂测试
-3.4内容接口设计
--3.4.3随堂测试
-3.5幻灯片接口设计
--3.5.3随堂测试
-补充设计文档
-4.1用户管理功能设计
--4.1.3随堂测试
-4.2菜单管理功能设计
--4.2.3随堂测试
-4.3内容管理功能设计
--4.3.3随堂测试
-4.4网站配置信息设计
--4.4.3随堂测试
-完成设计文档
-4.6随堂测试
-5.1开发环境搭建
--5.1.2随堂测试
-5.2Web前端环境搭建
-5.3创建用户实体
--5.3.2随堂测试
-5.4用户实体表创建与初始化
--5.4.2随堂测试
-5.5用户数据访问接口实现
--5.5.2随堂测试
-5.6环境搭建问题
-6.1用户服务层接口实现
--6.1.2随堂测试
-6.2用户列表和编辑控制器实现
--6.2.2随堂测试
-6.3用户存储和删除控制器实现
-6.4用户添加、编辑界面实现
-6.5用户管理添加用户调试
-7.1用户查询模板实现
--7.1.2随堂测试
-7.2用户信息编辑的实现
-7.3单个用户删除实现
-7.4多个用户删除实现
-8.1用户列表分页基本实现
-8.2用户列表查询结果分页实现
-8.3通用日期处理
-8.4整型日期处理
--8.4.2随堂测试
-8.5枚举数据的应用
-9.1登录逻辑实现
--9.1.2随堂测试
-9.2登录界面及流程调试
--9.2.2随堂测试
-9.3管理主界面实现
--9.3.2随堂测试
-9.4授权验证拦截器实现
--9.4.2随堂测试
-9.5拦截器调试
-10.1分类接口实现
-10.2分类添加、编辑实现
-10.3分类树结构实现
-10.4分类删除实现
--10.4.2随堂测试
-11.1内容实体定义
-11.2相关接口定义
-11.3服务接口实现
-11.4内容添加、编辑模板实现
-11.5内容添加、编辑控制器实现
-11.6内容检索页面实现
-11.7内容分类树实现
-12.1修改UEditor相关问题
-12.2整合UEditor到内容编辑界面
-12.3UEditor图片对话框应用
-12.4文件上传问题处理
-13.1网站配置相关类实现
-13.2网站配置界面模板实现
-13.3网站配置调试
-14.1网站首页布局实现
-14.2菜单Vue组件实现
--14.2.2随堂测试
-14.3幻灯片Vue组件实现
-14.4滚动Vue组件实现
--14.4.2随堂测试
-14.5滚动接口实现
-14.6滚动接口调试
-14.7幻灯片接口实现
-15.1首页区域实现
-15.2首页内容脚本实现
-15.3首页完善
-15.4Vue组件放入单文件
-15.5详细页面实现
-16.1网站测试介绍
-16.2功能测试
-16.3打包发布
-16.4部署运行
--16.4.2随堂测试