方法返回值问题
一个方法返回值类型是个布尔类型但实现的是一些曾删改查操作,返回值是布尔型的作用是什么?publicbooleandoCreate(Useruser)throwsExcep...
一个方法返回值类型是个布尔类型但实现的是一些曾删改查操作,返回值是布尔型的作用是什么?
public boolean doCreate(User user) throws Exception {
boolean flag = false;
PreparedStatement pstmt = null;
String sql = "INSERT INTO user(name,sex,birthday) VALUES (?,?,?) ";
try {
pstmt = this.conn.prepareStatement(sql);
pstmt.setString(1, user.getName()); // 所有的内容从user类中取出
pstmt.setString(2, user.getSex()); // 所有的内容从user类中取出
pstmt.setDate(3, new java.sql.Date(user.getBirthday().getTime()));
if (pstmt.executeUpdate() > 0) {// 至少已经更新了一行
flag = true;
}
} catch (Exception e) {
throw e;
} finally { // 不管如何抛出,最终肯定是要进行数据库的关闭操作的
if (pstmt != null) {
try {
pstmt.close();
} catch (Exception e1) {
}
}
this.dbc.close();
}
return flag;
}
这个方法用了布尔作为返回值和不用有什么区别呢? 展开
public boolean doCreate(User user) throws Exception {
boolean flag = false;
PreparedStatement pstmt = null;
String sql = "INSERT INTO user(name,sex,birthday) VALUES (?,?,?) ";
try {
pstmt = this.conn.prepareStatement(sql);
pstmt.setString(1, user.getName()); // 所有的内容从user类中取出
pstmt.setString(2, user.getSex()); // 所有的内容从user类中取出
pstmt.setDate(3, new java.sql.Date(user.getBirthday().getTime()));
if (pstmt.executeUpdate() > 0) {// 至少已经更新了一行
flag = true;
}
} catch (Exception e) {
throw e;
} finally { // 不管如何抛出,最终肯定是要进行数据库的关闭操作的
if (pstmt != null) {
try {
pstmt.close();
} catch (Exception e1) {
}
}
this.dbc.close();
}
return flag;
}
这个方法用了布尔作为返回值和不用有什么区别呢? 展开
展开全部
有区别。
如果你在另外一个方法Create()中调用了doCreate(User user)这个方法,那么Create()就能根据返回的布尔值判断是否调用成功,从而进行不同的处理
如果你在另外一个方法Create()中调用了doCreate(User user)这个方法,那么Create()就能根据返回的布尔值判断是否调用成功,从而进行不同的处理
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
flag本为flase
sql执行成功flag=true,
不成功没有执行flag=true,flag还为flase
所以flag还为flase,
以此来确定sql是否执行成功
sql执行成功flag=true,
不成功没有执行flag=true,flag还为flase
所以flag还为flase,
以此来确定sql是否执行成功
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询