JSP增删改参考代码Word格式文档下载.docx
《JSP增删改参考代码Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《JSP增删改参考代码Word格式文档下载.docx(18页珍藏版)》请在冰豆网上搜索。
try{
Class.forName("
com.microsoft.sqlserver.jdbc.SQLServerDriver"
);
}catch(ClassNotFoundExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
}
*获得数据库连接
*@returnconn
publicstaticConnectiongetConnection(){
Connectionconn=null;
conn=DriverManager.getConnection("
jdbc:
sqlserver:
//localhost:
1433;
DatabaseName=new"
"
sa"
}catch(SQLExceptione){
//返回数据库连接对象
returnconn;
*关闭操作对象,需注意关闭顺序
*@paramrsResultSet对象,用来存储查询执行后的结果
*@parampStmtPreparedStatement对象,用来执行SQL命令
*@paramconnConnection对象,用来建立数据库连接
publicstaticvoidcloseAll(ResultSetrs,PreparedStatementpStmt,Connectionconn){
if(rs!
=null){
rs.close();
if(pStmt!
pStmt.close();
if(conn!
conn.close();
}
FirstTitleDao.java
/**
*显示列表,查询时使用
*/
publicstaticListgetList(){
//创建Connection对象
Connectionconn=null;
//定义PreparedStatement对象
PreparedStatementstmt=null;
//创建ResultSet对象
ResultSetrs=null;
//创建列表
Listlist=newArrayList();
//获得数据库连接
conn=BaseDao.getConnection();
//创建PreparedStatement对象
stmt=conn.prepareStatement("
select*fromFirstTitle"
//执行SQL语句,返回ResultSet对象
rs=stmt.executeQuery();
//操作结果集
while(rs.next()){
entity.FirstTitletitle=newFirstTitle();
//将结果集中的数据设置到对象中
title.setId(rs.getInt
(1));
title.setTitleName(rs.getString
(2));
title.setCreator(rs.getString(3));
title.setCreateTime(rs.getString(4));
//将对象添加到列表中
list.add(title);
}
//TODO自动生成catch块
}finally{
//关闭操作对象
BaseDao.closeAll(rs,stmt,conn);
//返回列表
returnlist;
*向数据库中插入数据
publicstaticvoidadd(entity.FirstTitletitle){
Connectioncon=null;
PreparedStatementpStmt=null;
ResultSetrs=null;
try{
con=dao.BaseDao.getConnection();
pStmt=con.prepareStatement
("
insertintoFirstTitle(Id,TitleName,Creator,CreateTime)values(?
?
)"
pStmt.setInt(1,title.getId());
pStmt.setString(2,title.getTitleName());
pStmt.setString(3,title.getCreator());
pStmt.setString(4,title.getCreateTime());
//执行SQL语句,返回受影响的行数(int类型)
pStmt.executeUpdate();
*删除
publicstaticvoiddelete(intid){
Connectioncon=null;
PreparedStatementpStmt=null;
ResultSetrs=null;
con=dao.BaseDao.getConnection();
pStmt=con.prepareStatement("
deletefromFirstTitlewhereid=?
"
pStmt.setInt(1,id);
pStmt.executeUpdate();
finally{
dao.BaseDao.closeAll(rs,pStmt,con);
*修改,根据ID返回实体
publicstaticentity.FirstTitlegetModel(intid){
//创建操作对象
Connectioncon=null;
//创建prepareStatement对象
select*fromFirstTitlewhereid=?
//设置参数
pStmt.setInt(1,id);
//执行SQL语句返回结果集
rs=pStmt.executeQuery();
if(rs.next()){
//创建实体类的对象,并赋值
returntitle;
*修改方法
publicstaticvoidupdate(entity.FirstTitletitle){
pStmt=con.prepareStatement
updateFirstTitlesetID=?
TitleName=?
Creator=?
CreateTime=?
whereid=?
pStmt.setInt(1,title.getId());
pStmt.setString(2,title.getTitleName());
pStmt.setString(3,title.getCreator());
pStmt.setString(4,title.getCreateTime());
pStmt.setInt(5,title.getId());
WebRoot文件夹下的页面:
index.jsp中显示列表部分:
<
%
//获得列表
Listlist=FirstTitleDao.getList();
//循环列表,并获得列表中的对象。
注意数据类型转换
for(inti=0;
i<
list.size();
i++){
FirstTitletitle=(FirstTitle)list.get(i);
%>
<
tr>
td>
%=title.getId()%>
/td>
%=title.getTitleName()%>
%=title.getCreator()%>
%=title.getCreateTime()%>
td>
删除<
修改<
/a>
/tr>
<
%
实现增加功能:
add.jsp增加功能页面如下:
该界面中,
添加为提交按钮:
inputtype="
submit"
name="
button"
id="
value="
添加"
>
表单提交到增加功能辅助页面:
doAdd.jsp
formname="
form1"
method="
post"
action="
doAdd.jsp"
//设置获得结果的数据集
request.setCharacterEncoding("
gb2312"
//获得表单中文本框里的内容
intid=Integer.parseInt(request.getParameter("
ID"
));
StringtitleName=request.getParameter("
titleName"
Stringcreator=request.getParameter("
creator"
StringcreateTime=request.getParameter("
createTime"
FirstTitletitle=newFirstTitle();
//给对象赋值
title.setId(id);
title.setTitleName(titleName);
title.setCreator(creator);
title.setCreateTime(createTime);
//调用增加方法,向数据库里插入一条记录
FirstTitleDao.add(title);
//实现页面跳转,跳转回index.jsp页面
response.sendRedirect("
index.jsp"
%>
实现删除功能:
情况一:
用超链接实现删除,如下图:
delete.jsp
Stringid=request.getParameter("
id"
//调用删除方法,实现删除操作
FirstTitleDao.delete(Integer.parseInt(id));
//实现页面跳转
“删除”的超连接内容为:
(连接删除功能界面,并传递参数,参数为:
表中Id)
ahref="
delete.jsp?
id=<
%=title.getId()%>
情况二:
用复选框实现批量删除
为要被全选的复选框设置value值
checkbox"
deleteAll"
value="
/>
实现全选的JavaScript代码:
(1)<
scriptlanguage="
javascript"
functioncheckAll(boolValue)
{
varcheckbox=document.getElementsByName("
for(vari=0;
checkbox.length;
i++)
{
if(checkbox[i].type=="
)
{
checkbox[i].checked=boolValue;
}
/script>
(2)复选框:
ckDelete"
onClick="
checkAll(this.checked);
全选
delete.jsp需要更改:
Stringid[]=request.getParameterValues("
//用循环的方法,实现批量删除
for(inti=0;
id.length;
FirstTitleDao.delete(Integer.parseInt(id[i]));
实现删除功能的“删除”超链接:
提交表单
javascript:
myForm.submit();
实现修改功能
doUpdate.jsp:
更新功能的中转页面
//指定结果集
//获取页面上的内容
intid=Integer.parseInt(request.getParameter("
//创建对象
//为对象设置值
//执行更新功能
FirstTitleDao.update(title);
//实现页面跳转
Update.jsp界面:
将要修改的内容显示在修改界面上
body>
intid=Integer.parseInt(request.getParameter("
));
FirstTitletitle=FirstTitleDao.getModel(id);
doUpdate.jsp"
用户名:
text"
value=<
p>
新闻标题:
创建者:
/label>
创建时间:
修改"
reset"
button2"
取消"
/form>
/body>
“修改”超链接的内容为:
Update.jsp?
删除时用来弹出确认提示的JavaScript代码:
!
--没有选中的复选框返回false并有提示信息-->
functiontest3()
varcheckbox=document.getElementsByName("
varrc=false;
for(vari=0;
if(checkbox[i].checked==true)
rc=true;
if(rc==false)
alert("
请选中需要删除行的复选框!
returnrc;
--全选按钮删除-->
functiontest()
if(test3()==true){
if(!
confirm("
确认删除吗?
))returnfalse;
else
returnfalse;
--全选超链接删除-->
functiontest1()
if(confirm("
))
{
form1.submit();
}
--删除一行-->
functiontest2(name)
if(confirm("
window.location.href='
id='
+name;
}
全选情况下的超链接删除和按钮删除:
test1();
删除"
returntest();
单独记录情况下的超链接删除和按钮删除:
test2(<
删除"
onclick="
/>
Stringid=null;
id=request