CMS项目总结:8、取出MySQL数据库的auto increment字段

mysql中的某个字段设置了auto_increment,那么当ArticleServlet从前台add_article.jsp页面中取出用户输入的标题、内容、目录…等数据并调用相应的ArticleDaoImpladdArticle()方法往数据库插数据时,由于往t_article插完还得利用自动生成articleid继续往t_channel_article中插入channelIdarticleId。这时就需要在执行完往t_article插入数据后设法取出articleId,我们用的方法是:

pstmt = conn.prepareStatement(sql,Statement.RETURN_GENERATED_KEYS);加了个Statement.RETURN_GENERATED_KEYS参数

同时在pstmt.executeUpdate();执行完即往t_article插完数据后,已经自动生成articleId

ResultSet newId = pstmt.getGeneratedKeys();

if(newId.next()) {

a.setId(newId.getInt(1));   //这里的“1”是因为id是第一个字段,newId.getInt(1)即取出id

}

后面学mybatis时注意看mybatis是怎么实现取出auto_increment字段的功能的。

(可以看到假如一个table的字段太多的话,request从页面获取啦、insert啦、update啦会写的很长很繁琐,后面我们会用apache-commons-beanutils来简化这些代码

CMS项目总结:8、取出MySQL数据库的auto increment字段_第1张图片

你可能感兴趣的:(sql,数据库,cms,mysql,table,insert)