DAo设计模式Word下载.docx

上传人:b****6 文档编号:16188945 上传时间:2022-11-21 格式:DOCX 页数:15 大小:53.21KB
下载 相关 举报
DAo设计模式Word下载.docx_第1页
第1页 / 共15页
DAo设计模式Word下载.docx_第2页
第2页 / 共15页
DAo设计模式Word下载.docx_第3页
第3页 / 共15页
DAo设计模式Word下载.docx_第4页
第4页 / 共15页
DAo设计模式Word下载.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

DAo设计模式Word下载.docx

《DAo设计模式Word下载.docx》由会员分享,可在线阅读,更多相关《DAo设计模式Word下载.docx(15页珍藏版)》请在冰豆网上搜索。

DAo设计模式Word下载.docx

}

}

publicConnectiongetConnection(){

returnthis.conn;

publicvoidclose(){

this.conn.close();

}

5.VO类:

是一个包含属性和表中字段完全对应的类,并在该类中含有getter/setter方法。

packageDB;

publicclassUser{

//用户id

privateintuserid;

//用户名

privateStringusername;

//用户密码

privateStringpassword;

//获得用户id

publicintgetUserid(){

returnuserid;

//设置用户id

publicvoidsetUserid(intuserid){

this.userid=userid;

//获得用户名

publicStringgetUsername(){

returnusername;

//设置用户名

publicvoidsetUsername(Stringusername){

this.username=username;

//获得密码

publicStringgetPassword(){

returnpassword;

//设置密码

publicvoidsetPassword(Stringpassword){

this.password=password;

6.DAO接口:

定义所有用户的操作:

如添加记录,删除记录,及查询记录。

因为是接口,所以仅仅是定义,需要子类实现

importjava.util.*;

//定义数据库操作方法

publicinterfaceUserDAO{

//增加操作

publicvoidinsert(Useruser)throwsException;

//修改操作

publicvoidupdate(Useruser)throwsException;

//删除操作

publicvoiddelete(intuserid)throwsException;

//按ID查询操作

publicUserqueryById(intuserid)throwsException;

//查询全部

publicListqueryAll()throwsException;

//模糊查询

publicListqueryByLike(Stringkeyword)throwsException;

7.DAO实现类

DAO实现类实现了DAO接口,并实现了DAO接口定义的所有方法:

importjava.sql.PreparedStatement;

importjava.sql.ResultSet;

importjava.util.ArrayList;

importjava.util.List;

importusebean.Person;

//引入usebean下得Person类

publicclassUserDAOImplimplementsUserDAO{

//删除操作

publicvoiddelete(intuserid)throwsException{

Stringsql="

deletefromuserwhereuserid=?

"

PreparedStatementpstmt=null;

DataBaseConnectiondbc=null;

//下面是针对数据库的操作

try{

//连接数据库

dbc=newDataBaseConnection();

pstmt=dbc.getConnection().prepareStatement(sql);

pstmt.setInt(1,userid);

//进行数据库更新操作

pstmt.executeUpdate();

pstmt.close();

}catch(Exceptione){

thrownewException("

操作出现异常"

);

}finally{

//关闭数据库连接

dbc.close();

}

//添加操作

publicvoidinsert(Useruser)throwsException{

Stringsql="

insertintouser(username,password)values(?

?

)"

PreparedStatementpstmt=null;

DataBaseConnectiondbc=null;

//下面是针对数据库的具体操作

try{

//连接数据库

dbc=newDataBaseConnection();

pstmt=dbc.getConnection().prepareStatement(sql);

//pstmt.setInt(1,user.getUserid());

pstmt.setString(1,user.getUsername());

pstmt.setString(2,user.getPassword());

pstmt.executeUpdate();

pstmt.close();

}catch(Exceptione){

thrownewException("

}finally{

//关闭数据库连接

dbc.close();

publicListqueryAll()throwsException{

List<

User>

all=newArrayList<

();

select*fromuser"

//下面是针对数据库的操作

//进行数据库查询

ResultSetrs=pstmt.executeQuery();

while(rs.next()){

//查询出内容,之后将查询出得内容赋值给user对象

Useruser=newUser();

user.setUserid(rs.getInt

(1));

user.setUsername(rs.getString

(2));

user.setPassword(rs.getString(3));

//将查询出来的数据加入到list对象之中

all.add(user);

}

rs.close();

returnall;

//按id查询

publicUserqueryById(intuserid)throwsException{

Useruser=null;

select*fromuserwhereuserid=?

//针对数据库的具体操作

pstmt.setInt(1,userid);

//进行数据库查询操作

if(rs.next()){

//查询出内容,之后将查询的内容赋值给user对象

user=newUser();

returnuser;

//修改操作

publicvoidupdate(Useruser)throwsException{

updateusersetusername=?

password=?

whereuserid=?

pstmt.setString(1,user.getUsername());

pstmt.setInt(3,user.getUserid());

//进行数据库更新

}catch(Exceptione){

//关闭数据库

publicListqueryByLike(Stringkeyword)throwsException{

List<

//定义集合,接收全部数据

select*fromuserwhereusernamelike?

//进行数据库查询

pstmt.setString(1,"

%"

+keyword+"

ResultSetrs=pstmt.executeQuery();

while(rs.next()){

//查询出内容,之后将查询出得内容赋值给user对象

Useruser=newUser();

user.setUserid(rs.getInt

(1));

user.setUsername(rs.getString

(2));

user.setPassword(rs.getString(3));

//将查询出来的数据加入到list对象之中

all.add(user);

rs.close();

returnall;

8.DAO工厂类:

通过该DAO工厂类的一个静态方法获得DAO实现类实例

publicclassDAOFactory{

publicstaticUserDAOgetUserDAOInstance(){

returnnewUserDAOImpl();

9.添加记录:

<

title>

添加用户记录<

/title>

body>

<

formaction="

QueryAll.jsp"

method="

post"

>

tablealign="

center"

tr>

td>

用户名:

/td>

inputtype="

text"

name="

username"

/tr>

密码:

password"

reset"

value="

重置"

submit"

添加"

/table>

/form>

10.查询所有记录:

%@pagelanguage="

java"

import="

java.util.*"

pageEncoding="

gb2312"

%>

%@pageimport="

DB.*"

%>

查询所有用户记录<

%request.setCharacterEncoding("

%

Stringusername=request.getParameter("

Stringpassword=request.getParameter("

 

//通过DAO工厂获得DAO实现类实例

//UserDAOuserDAO=DAOFactory.getUserDAOInstance();

UserDAOuserDAO=newUserDAOImpl();

//设置需要添加的用户

Useruser=newUser();

//user.setUserid(19);

user.setUsername(username);

user.setPassword(password);

try{

userDAO.insert(user);

}catch(Exceptione)

{

%

//通过DAO工厂获得DAO实现类实例

UserDAOuserDAo=DAOFactory.getUserDAOInstance();

//设置新用户

all=userDAo.queryAll();

Iterator<

iter=all.iterator();

tableborder="

1"

bgcolor="

#c0c0c0"

align="

用户序列号<

用户名<

密码<

while(iter.hasNext()){

Useruser1=iter.next();

%=user1.getUserid()%>

%=user1.getUsername()%>

%=user1.getPassword()%>

效果图:

11.更新操作:

更新用户记录<

/head>

Useruser=newUser();

user.setUserid(4);

user.setUsername("

king"

user.setPassword("

666666"

//执行更新操作

userDAo.update(user);

12.删除操作

删除用户记录<

//执行删除操作

userDAo.delete(25);

13.模糊查询:

模糊查询所有用户记录<

Stringusername=request.getParameter("

all=userDAo.queryByLike(username);

formmethod="

action="

likeSelect.jsp"

请输入要查询的用户名:

length="

10"

模糊查询"

width="

80%"

center>

Useruser=iter.next();

%=user.getUserid()%>

%=user.getUsername()%>

%=user.getPassword()%>

界面图:

14.按ID查询

查询用户记录<

Useruser=userDAo.queryById(12);

out.println("

+user.getUsername());

+user.getPassword());

15.注意:

如果往数据库里添加不进去汉字,需要首先检测一下数据库的编码。

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

当前位置:首页 > 法律文书 > 起诉状

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1