dao 之添加用户| 学习笔记

简介: 快速学习 dao 之添加用户

开发者学堂课程【 Java Web 项目实战1:注册登录、客户关系管理系统dao之添加用户】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/39/detail/898


dao之添加用户


内容简介:


一、添加用户步骤

二、保存文档

三、注册

四、工作

  

一、添加用户

1.得到 document

2.通过 document 得到 root 元素!<users>

3.使用参数 user,转发成 element 对象

4.把 element 添加到 root 元素中

5.保存 document

6.得到 document

7.得到根元素

8.通过根元素创建新元素

element userele=root.element(user)

为userele设置属性

userele.addattribute(username,user.getusername

catch(documentexception e)

throw new runtimeexception(e)

 

二、保存文档

创建输出格式化器

outputformat  format=new outputformat(\true)://缩进使用\t,是否换行,使用是!

新加一个<user username“张三”password=“123”/>

format.settrimtext(true);//清空原有的换行和缩进

writer.writer(doc);//保存document对象

 

 

三、注册

reqist.jsp

>第一步:完成reqist.jsp的基本功能!

reqistservlet

>封装单表数据,封装到user对象中。

>调用service的reqist()方法

①如果这个方法没有出问题,输出“注册成功”

②如果这个方法抛出了异常,把错误信息保存到 request 域,转发到 reqist.jsp (显示错误信息)

userservice regist

>没有返回值,但注册失败抛出一个自定义的异常!可以在异常中添加异常信息!(自定义一个异常类)

>校验用户名是否已被注册(通过用户名查询用户),如果已被注册,抛出异常,异常信息为“用户名已被注册!”

>添加用户

userdao: 通过业务分析,得到结果:需要提供两个方法

>按用户名查询用户对象 :user findbyusername(string username)

>插入一个用户到数据库中 :void add(user user)

 

四、工作:

1.在 service 层添加一个 userexception

2.dao

user findbyusername(string username)

void add (user user)

3.service

void regist()throws userexception

4.servlet

1).封装表单数据到 user 对象中

2).使用 user 调用 service 的 regist 方法

3)如果得到 userexception ,那么把异常信息保存到 request 域中,转发回regist.jsp

4).输出“注册成功”

相关文章
|
存储 XML 移动开发
前端大厂面试真题
前端大厂面试真题
|
设计模式 算法 Java
策略模式与模版模式的区别与应用
策略模式与模版模式的区别与应用
192 4
|
流计算
电力系统潮流计算(牛顿-拉夫逊法、高斯-赛德尔法、快速解耦法)【6节点 9节点 14节点 26节点 30节点 57节点】(Matlab代码实现)
电力系统潮流计算(牛顿-拉夫逊法、高斯-赛德尔法、快速解耦法)【6节点 9节点 14节点 26节点 30节点 57节点】(Matlab代码实现)
465 0
|
Linux
Centos yum报错: BDB1507 Thread died in Berkeley DB library
Centos yum报错: BDB1507 Thread died in Berkeley DB library
306 0
|
JSON Kubernetes Go
无缝集成:在IntelliJ IDEA中利用Kubernetes插件轻松管理容器化应用
无缝集成:在IntelliJ IDEA中利用Kubernetes插件轻松管理容器化应用
657 0
无缝集成:在IntelliJ IDEA中利用Kubernetes插件轻松管理容器化应用
|
机器学习/深度学习 PyTorch 算法框架/工具
详解Batch Normalization并基于PyTorch实操(附代码)
详解Batch Normalization并基于PyTorch实操(附代码)
364 2
|
机器学习/深度学习 算法 PyTorch
YOLO的版本有哪些,以及功能差异?
YOLO的版本有哪些,以及功能差异?
|
JavaScript Java 网络安全
从零玩转之JPOM自动化部署本地构建 + SSH 发布 java 项目
从零玩转之JPOM自动化部署本地构建 + SSH 发布 java 项目
579 0
从零玩转之JPOM自动化部署本地构建 + SSH 发布 java 项目
CMMI之技术预研
CMMI之技术预研
848 0
基于 FFI 的 PyFlink 下一代 Python 运行时介绍
PyFlink 现有的 Python 运行时及基于 JCP 构建的下一代 Python 运行时的架构及优势。
基于 FFI 的 PyFlink 下一代 Python 运行时介绍