> 文档中心 > JavaWeb(绑定&删除&修改&查询)

JavaWeb(绑定&删除&修改&查询)


前言

嗨咯啊!我又来啦!上次我分享了新闻发布系统的登录以及验证码等,今天就来分享新闻发布系统的删改查。因为增加在上一篇文章中讲到了,这次就不讲了。
老规矩:上思维导图。
。。。。。好吧今天没做思维导图,还是看正文和目录了解吧。


提示:以下是本篇文章正文内容,下面案例可供参考

一、绑定

昨天我们插入两条一样的新闻,那么今天就要将数据绑定到页面。

<body><div id="header">  <div id="welcome">欢迎使用新闻管理系统!</div>  <div id="nav">    <div id="logo"><img src="/Project01/images/logo.jpg" alt="新闻中国" /></div>    <div id="a_b01"><img src="/Project01/images/a_b01.gif" alt="" /></div>  </div></div><div id="admin_bar">  <div id="status">管理员: <%=request.getParameter("aa") %>  &#160;&#160;&#160;&#160; <a href="#">退出</a></div>  <div id="channel"> </div></div><div id="main">  <div id="opt_list">    <ul>      <li><a href="/Project01/news/add.jsp">添加新闻</a></li>      <li><a href="/Project01/news/admin.jsp">编辑新闻</a></li>      <li><a href="#">查找新闻</a></li>      <li><a href="/Project01/news/zt.jsp">添加主题</a></li>      <li><a href="/Project01/news/ztadmin.jsp">编辑主题</a></li>    </ul>  </div>  <div id="opt_area">    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">    <script language="javascript">function clickdel(){return confirm("删除请点击确认");}</script>    <ul class="classlist">    <%     //jdbcl连接oracle查询所有的新闻:id 标题 作者    String CNAME = "oracle.jdbc.driver.OracleDriver";    String URL="jdbc:oracle:thin:@localhost:1521:orcl";    //加载驱动    Class.forName(CNAME);    //创建连接    Connection con = DriverManager.getConnection(URL, "scott", "tiger");    //定义sql语句    String sql = "select nid,ntitle,nauthor from news280 order by nid desc";    //获得执行对象    PreparedStatement ps = con.prepareStatement(sql);    //获得结果集    ResultSet rs = ps.executeQuery();    //循环遍历    while(rs.next()){     %>      <li><a href="/Project01/news/read.jsp?nid="><%=rs.getString(2) %></a>      <span> 作者:<%=rs.getString(3) %>  &#160;&#160;&#160;&#160;  <a href='/Project01/news/update.jsp?nid='>修改</a> &#160;&#160;&#160;&#160;  <a href='/Project01/news/dodelete.jsp?nid=' onclick='return clickdel()'>删除</a>  </span>  </li> <%     } //关闭资源    if(con!=null&&!con.isClosed()){    con.close();    }    if(ps!=null){    ps.close();    }    if(rs!=null){    rs.close();    } %>      <li class='space'></li>      <p align="right"> 当前页数:[1/3]&nbsp; <a href="#">下一页</a> <a href="#">末页</a> </p>    </ul>  </div></div><div id="site_link"> <a href="#">关于我们</a><span>|</span> <a href="#">Aboue Us</a><span>|</span> <a href="#">联系我们</a><span>|</span> <a href="#">广告服务</a><span>|</span> <a href="#">供稿服务</a><span>|</span> <a href="#">法律声明</a><span>|</span> <a href="#">招聘信息</a><span>|</span> <a href="#">网站地图</a><span>|</span> <a href="#">留言反馈</a> </div><div id="footer">  <p class="">24小时客户服务热线:010-68988888  &#160;&#160;&#160;&#160; <a href="#">常见问题解答</a> &#160;&#160;&#160;&#160;  新闻热线:010-627488888<br />    文明办网文明上网举报电话:010-627488888  &#160;&#160;&#160;&#160;  举报邮箱:<a href="#">jubao@jb-aptech.com.cn</a></p>  <p class="copyright">Copyright &copy; 1999-2009 News China gov, All Right Reserver<br />    新闻中国   版权所有</p></div></body>

这段代码主要看中间部分,这里我们是连接数据库进行绑定数据。这里有两种方法。
1、java代码中嵌套html代码 2、 html代码中嵌套java代码
看得出我用的是那种方法吗?评论区留言告诉我吧。

效果图如下:
JavaWeb(绑定&删除&修改&查询)
分割线-------------------------------------------------------------------------------------------------------------------------------
这就是绑定数据后的效果

二、查删改

1.查

代码如下:

<%//接收主界面传过来的值String nid = request.getParameter("nid");//思路:根据nid拿到起对应的信息//jdbcl连接oracle查询所有的新闻:id 标题 作者    String CNAME = "oracle.jdbc.driver.OracleDriver";    String URL="jdbc:oracle:thin:@localhost:1521:orcl";    //加载驱动    Class.forName(CNAME);    //创建连接    Connection con = DriverManager.getConnection(URL, "scott", "tiger");    //定义sql语句    String sql = "select * from news280 where nid="+nid;    //获得执行对象    PreparedStatement ps = con.prepareStatement(sql);    //获得结果集    ResultSet rs = ps.executeQuery();    //扩大作用域    String title="";    String author="";    String content="";    String addtime="";    //循环遍历    if(rs.next()){    //赋值    title=rs.getString(3);    author=rs.getString(4);    content=rs.getString(6);    addtime=rs.getString(7);    }    //关闭资源    if(con!=null&&!con.isClosed()){    con.close();    }    if(ps!=null){    ps.close();    }    if(rs!=null){    rs.close();    }%>

这里只展示查询要用到的代码,其他的就不展示了,等下直接看效果
效果图:------------------------------------------------------------------------------------------------------------------
JavaWeb(绑定&删除&修改&查询)


2.删

代码如下:

<%     //定义sql语句      sql = "select * from zt order by tid";     //获得执行对象      ps = con.prepareStatement(sql);     //获得结果集     rs = ps.executeQuery();    //循环遍历    while(rs.next()){    //做判断    if(rs.getInt(1)==tid){ out.print("<option selected='selected' value='"+rs.getInt(1)+"'>"+rs.getString(2)+"");//输送到页面    }    else{    out.print("<option value='"+rs.getInt(1)+"'>"+rs.getString(2)+"");//输送到页面    }  } //关闭资源    if(con!=null&&!con.isClosed()){    con.close();    }    if(ps!=null){    ps.close();    }    if(rs!=null){    rs.close();    } %>

另一个页面的

<%String nid = request.getParameter("nid");String URL="jdbc:oracle:thin:@localhost:1521:orcl";String CNAME="oracle.jdbc.driver.OracleDriver";Class.forName(CNAME);Connection con=DriverManager.getConnection(URL, "scott", "tiger");String sql="delete from news280 where nid="+nid;PreparedStatement ps=con.prepareStatement(sql);int n = ps.executeUpdate();if(con!=null&&!con.isClosed()){con.close();}if(ps!=null){ps.close();}if(n>0){response.sendRedirect("/Project01/news/admin.jsp");}else{out.print("alert('删除失败');location.href='admin.jsp'");}%>

效果如下:
在这里插入图片描述
分割线-------------------------------------------------------------------------------------------------------------------------------
JavaWeb(绑定&删除&修改&查询)

3.改

 <%     //定义sql语句      sql = "select * from zt order by tid";     //获得执行对象      ps = con.prepareStatement(sql);     //获得结果集     rs = ps.executeQuery();    //循环遍历    while(rs.next()){    //做判断    if(rs.getInt(1)==tid){ out.print("<option selected='selected' value='"+rs.getInt(1)+"'>"+rs.getString(2)+"");//输送到页面    }    else{    out.print("<option value='"+rs.getInt(1)+"'>"+rs.getString(2)+"");//输送到页面    }  } //关闭资源    if(con!=null&&!con.isClosed()){    con.close();    }    if(ps!=null){    ps.close();    }    if(rs!=null){    rs.close();    } %>

另一页面代码:

<%//设置编码方式request.setCharacterEncoding("utf-8");//接收表单提交过来的值String nid=request.getParameter("nid");//隐藏域传值上String ntid=request.getParameter("ntid");String ntitle=request.getParameter("ntitle");String nauthor=request.getParameter("nauthor");String nsummary=request.getParameter("nsummary");String ncontent=request.getParameter("ncontent");String naddtime=new Date().toLocaleString();//取系统当前时间 String URL="jdbc:oracle:thin:@localhost:1521:orcl";String CNAME="oracle.jdbc.driver.OracleDriver";Class.forName(CNAME);Connection con=DriverManager.getConnection(URL, "scott", "tiger");String sql="update news280 set tid=?,ntitle=?,nauthor=?,nsummary=?,ncontent=?,naddtime=?) where nid=?";PreparedStatement ps=con.prepareStatement(sql);//给占位符赋值ps.setInt(1, Integer.parseInt(ntid));ps.setString(2, ntitle);ps.setString(3, nauthor);ps.setString(4, nsummary);ps.setString(5, ncontent);ps.setString(6, naddtime);ps.setInt(7,Integer.parseInt(ntid));//获得影响行数int n=ps.executeUpdate();//关闭资源if(con!=null&&!con.isClosed()){con.close();}if(ps!=null){ps.close();}//做判断if(n>0){//说明修改成功//新闻主界面response.sendRedirect("/Project01/news/admin.jsp");}else{//说明修改失败out.print("alert('修改失败');location.href='update.jsp?nid="+nid+"';");} %>

效果如下:

在这里插入图片描述
分割线-----------------------------------------------------------------------------------------------------------------------------
在这里插入图片描述

分割线------------------------------------------------------------------------------------------------------------------------------

JavaWeb(绑定&删除&修改&查询)
就是这样

总结

今天的分享到此结束啦,下期预告:模糊查询,评论等。如果有什么不对的地方还请指正,谢谢啦。
我是九歌,一个正在成长的IT练习生,期待您的关注。