一.项目模糊查询

<!-- 功能1:实现模糊查询的搜索功能(根据标题进行模糊查询) --><div style = "width:100%;height:40px;text-align: center;line-height:40px; "><form action = "admin.jsp" method = "post"><label>新闻标题</label><input type = "text" name = "strName" autocomplete="off"/><input type = "submit" value = "搜索"/></form></div><%//编码设置request.setCharacterEncoding("utf-8");String strName = request.getParameter("strName");//sql语句String sql = "select * from tb_news";if(strName != null){//将指定编码的字符串进行解码  通过getBytes("编码")   构造函数new String()编码strName = new String(strName.getBytes("ISO-8859-1"),"utf-8");//sql语句拼接模糊查询sql+=" where ntitle like '%"+strName+"%'";}System.out.println("模糊查询的关键词为:[sql] "+sql);%>

二.绑定index页面的主题和新闻

<!-- index.jsp用户首页的新闻分类显示(数据绑定) --><ul class="class_date"><li id='class_month'> <a href = "index.jsp"><b>&nbsp;全部&nbsp;</b></a><%//加载驱动Class.forName("oracle.jdbc.driver.OracleDriver");//建立连接String url = "jdbc:oracle:thin:@localhost:1521:orcl";Connection conn = DriverManager.getConnection(url, "scott", "123");//sqlString sql = "select * from tb_news_theme";PreparedStatement ps = conn.prepareStatement(sql);ResultSet rs = ps.executeQuery();//sql  select count(*) from tb_news_themeint count = 1;while(rs.next()){count++;out.println("<a href='index.jsp?username="+username+"&ntid="+rs.getInt(1)+"'><b> "+rs.getString(2)+" </b></a> ");//11 就是总记录数if(count%11==0){out.println("<br/>");}}%></li></ul><!-- 当进入index.jsp页面后,手动点击对应的主题名称  跳转到本页面  获取当前点击的主题名称 --><%username = request.getParameter("username");String tid  = request.getParameter("ntid");if(null!=tid){//说明点击了主题分类//根据点击的主题分类进行查询  where 条件sql = "select * from tb_news where ntid = "+Integer.valueOf(tid);}else{//第一次进来,没有点击主题分类sql = "select * from tb_news";//查询所有新闻}%>

三.绑定评论,删除评论

<div class="content"><!-- 该区域实现新闻详情显示  start --><%//定义所谓变量(新闻标题,发布时间,点击量,新闻内容等等)String ntitle = "";//标题String ndate = "";//发布时间String nauthor = "";//作者String ncontent = "";//内容int ncount = 0;//点击量//2.获取idString id = request.getParameter("nid");//转换int nid = 0;if(null!=id){nid = Integer.valueOf(id);}//3.获取数据//加载驱动Class.forName("oracle.jdbc.driver.OracleDriver");//建立连接Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl", "scott","123");//sql语句String sql = "select * from tb_news where nid = ?";//将sql语句传入方法返回执行对象PreparedStatement ps = conn.prepareStatement(sql);ps.setInt(1, nid);//返回结果集对象ResultSet rs = ps.executeQuery();//if改造if(rs.next()){ntitle = rs.getString(3);ndate = rs.getString(8);nauthor = rs.getString(4);ncontent = rs.getString(6);ncount = rs.getInt(9);}%><ul class="classlist"><table width="80%" align="center"><tr width="100%"><td colspan="2" align="center"><%=ntitle %>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 点击量 <%=ncount %></td></tr><tr><td colspan="2"><hr /></td></tr><tr><td align="center"><%=ndate %></td><td align="left"><%=nauthor %> </td></tr><tr><td colspan="2" align="center"></td></tr><tr><td colspan="2"> <%=ncontent %> </td></tr><tr><td colspan="2"><hr /></td></tr></table></ul><ul class="classlist"><table width="80%" align="center"><!-- 从index.jsp页面中跳转到详情页面,如果有评论  此处要显示出来,如果没有评论  显示 "暂无评论" --><%//定义一个变量存储指定新闻的评论数int commentCount = 0;//1.求指定新闻的评论数判断sql ="select count(*) from tb_comment where cnid = ?";ps = conn.prepareStatement(sql);ps.setInt(1, nid);rs = ps.executeQuery();if(rs.next()){commentCount = rs.getInt(1);}if(commentCount!=0){//遍历所有的评论sql ="select * from tb_comment where cnid = ?";ps = conn.prepareStatement(sql);ps.setInt(1, nid);rs = ps.executeQuery();while(rs.next()){sql = "select * from tb_news_users where userid = ?";ps = conn.prepareStatement(sql);ps.setInt(1, rs.getInt(2));ResultSet rs2 = ps.executeQuery();String uname = "";if(rs2.next()){uname = rs2.getString(2);}out.println("<tr>");out.println("<td>");out.println("用户名:"+uname+"<br/>");out.println("评论内容:"+rs.getString(5));out.println("&nbsp;&nbsp;&nbsp;&nbsp;<a href = 'doDelComment.jsp?username="+username+"&cid="+rs.getInt(1)+"'>删除</a><br/>");out.println("评论时间:"+rs.getString(6)+"<br/>");out.println("</td>");out.println("</tr>");out.println("<tr>");out.println("<td>");out.println("&nbsp;");out.println("</td>");out.println("</tr>");}}else{out.println("<td colspan='6'> 暂无评论! </td>");}%><tr><td colspan="6"><hr /></td></tr></table></ul><ul class="classlist"><form action="doComment.jsp" method="post" onsubmit="return check()"><!-- 通过隐藏域标签传递新闻编号 --><input type = "hidden" name = "nid" value = "<%=nid %>"/><table width="80%" align="center"><tr><td> 评 论 </td></tr><tr><td> 用户名: </td><td><input id="cauthor" name="username" value="<%=username %>" />IP:<input name="cip" value="127.0.0.1" readonly="readonly" /></td></tr><tr><td colspan="2"><textarea name="ccontent" cols="70" rows="10"></textarea></td></tr><td><input name="submit" value="发  表" type="submit" /></td></table></form></ul></div></div></div>//跳转的doComment.jsp页面
<%@page import="java.text.SimpleDateFormat"%>
<%@page import="java.util.Date"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%><%//1.设置编码request.setCharacterEncoding("utf-8");//获取数据//评论编号int cid = 0;//定义一个变量保存最终的id//链接数据库查询到最大的id   最后+1//加载驱动Class.forName("oracle.jdbc.driver.OracleDriver");//建立连接String url = "jdbc:oracle:thin:@localhost:1521:orcl";Connection conn = DriverManager.getConnection(url, "scott", "123");String sql = "select nvl(max(cid),0) from tb_comment";PreparedStatement ps = conn.prepareStatement(sql);ResultSet rs = ps.executeQuery();if(rs.next()){cid = rs.getInt(1)+1;}//out.println("cid = "+cid);//用户编号int cuserid = 0;String username = request.getParameter("username");//根据用户名查找到该用户的编号sql = "select * from tb_news_users where username = ?";ps = conn.prepareStatement(sql);ps.setString(1,username);rs = ps.executeQuery();if(rs.next()){cuserid = rs.getInt(1);}//新闻编号int nid = Integer.valueOf(request.getParameter("nid"));//ip地址String cip = request.getParameter("cip");//内容String ccontent = request.getParameter("ccontent");//时间Date date = new Date();SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");String cdate = sdf.format(date);//发表评论sql = "insert into tb_comment values(?,?,?,?,?,to_date(?,'yyyy-mm-dd hh24:mi:ss'))";ps = conn.prepareStatement(sql);ps.setInt(1, cid);ps.setInt(2, cuserid);ps.setInt(3, nid);ps.setString(4, cip);ps.setString(5, ccontent);ps.setString(6, cdate);int n = ps.executeUpdate();if(n>0){out.println("<script>alert('评论成功');location.href='newRead.jsp?username="+username+"&nid="+nid+"'</script>");}else{out.println("<script>alert('评论失败');location.href='newRead.jsp?username="+username+"&nid="+nid+"'</script>");}%>//删除评论
<%//删除评论//设置编码request.setCharacterEncoding("utf-8");//获取用户名String username = request.getParameter("username");//加载驱动Class.forName("oracle.jdbc.driver.OracleDriver");//建立连接String url = "jdbc:oracle:thin:@localhost:1521:orcl";Connection conn = DriverManager.getConnection(url, "scott", "123");int cuserid = 0;String sql = "select * from tb_news_users where username = ?";PreparedStatement ps = conn.prepareStatement(sql);ps.setString(1, username);ResultSet rs = ps.executeQuery();if(rs.next()){cuserid = rs.getInt(1);}//获取cidString id = request.getParameter("cid");int cid = 0;if(null!=id){cid = Integer.valueOf(id);}int cid_cuserid = 0;//根据cid进行查找  cuseridint nid = 0;//保存新闻编号//sqlsql = "select * from tb_comment where cid = ?";ps = conn.prepareStatement(sql);ps.setInt(1, cid);rs = ps.executeQuery();if(rs.next()){cid_cuserid = rs.getInt(2);nid = rs.getInt(3);}if(cuserid!=cid_cuserid){//不是当前登录用户所评论的内容//out.println("不是当前登录用户的评论内容");out.println("<script>alert('此评论不是当前用户所评,无法删除');location.href='newRead.jsp?username="+username+"&nid="+nid+"'</script>");}else{//out.println("是当前登录用户的评论内容");//根据当前登录的用户以及对应的评论编号进行删除sql = "delete from tb_comment where cuserid = ? and cid = ?";ps = conn.prepareStatement(sql);ps.setInt(1, cid_cuserid);ps.setInt(2, cid);int n = ps.executeUpdate();if(n>0){out.println("<script>alert('删除成功');location.href='newRead.jsp?username="+username+"&nid="+nid+"'</script>");}else{out.println("<script>alert('删除失败');location.href='newRead.jsp?username="+username+"&nid="+nid+"'</script>");}}%>

JavaWeb-06 (项目案例3)相关推荐

  1. JavaWeb 项目案例(新能源汽车动力电池信息)

    项目案例 目录 项目案例 项目要求 页面要求 数据库设计 具体操作 项目编写 新建数据库 编写前端页面 编写 JavaBean 实现功能 显示所有 添加数据和表单验证 删除数据 修改数据 查询数据 项 ...

  2. 于.net开发平台项目案例集锦

    订阅 | 上一篇 | 下一篇 五味笔记 于.net开发平台项目案例集锦  作者:henq 日期:2007-09-14 字体大小: 小 中 大 基于.net开发平台项目案例集锦 经过微软.net Fra ...

  3. 【原创】2009年8月18日老谷项目管理MSN群专题—项目案例分享文字实录

    2009年8月18日老谷"项目管理MSN群"专题-项目案例分享文字实录 不胜人生一场醉(亲亲我的宝贝!) 说: 先说下项目背景 项目背景 某公司为了解决各部门信息孤岛效应,为了向客 ...

  4. 52套JavaEE项目案例实战大全视频课程

    目录: 第01项目:OA办公自动化项目(四套) 第02项目:CRM客户关系管理项目(两套) 第03项目:宅急送项目 第04项目:杰信商贸SSH版 第05项目:电力项目(两套) 第06项目:校内网项目 ...

  5. JavaWeb实战项目-登录审批功能-付强-专题视频课程

    JavaWeb实战项目-登录审批功能-134人已学习 课程介绍         在eclipse中进行web开发,熟练掌握HTML.Javaspript.CSS.JSP.Servlet.Oracle. ...

  6. OpenCV-PyQT项目实战(5)项目案例01:图像模糊

    欢迎关注『OpenCV-PyQT项目实战 @ Youcans』系列,持续更新中 OpenCV-PyQT项目实战(1)安装与环境配置 OpenCV-PyQT项目实战(2)QtDesigner 和 PyU ...

  7. 世界上有哪些代码量很少,但很牛逼很经典的算法或项目案例?

    来自公众号:五分钟学算法 今天分享四个代码量很少,但很牛逼很经典的算法或项目案例. 1.no code 项目地址: https://github.com/kelseyhightower/nocode ...

  8. 大数据项目开发案例_大数据分析技术——项目案例2(房价数据分析上)

    1 二手房房价分析简述 在现在这个社会,房子成为绝大多数人心中难以抹去的痛:不仅在于它的价格高不可攀,也在于我们多少有些囊中羞涩.若不是得益于亲朋好友相助.父母相帮,估计依靠着我们这点微薄的薪水去购房 ...

  9. python小项目案例-拯救Python新手的几个项目实战

    原标题:拯救Python新手的几个项目实战 Python 做小游戏 实例一:24点游戏 项目名称:经典趣味24点游戏程序设计(python) 实例二:五子棋游戏 python学习关注我们企鹅qun: ...

  10. python项目开发实战网盘-《Python项目案例开发从入门到实战》PDF版百度网盘

    「教程分享:Python项目开发从入门到实列」 本书例子具有实用性,20个不同类型的完整列子,600分钟高品质配套教学视频,完整的源码和教学课件,让你对枯燥的Python语言学习充满乐趣. 编辑推荐 ...

最新文章

  1. 应力循环次数60ant_中国航发:金属粉末循环使用导致的成分及打印件性能变化...
  2. 吃豆豆游戏的C语言程序码,C++实现基于控制台界面的吃豆子游戏
  3. 正则表达式:匹配非0的整数和小数Double
  4. 关于java中锁的面试题_Java面试题-Java中的锁
  5. 社区团购“九不得”:低价倾销、大数据“杀熟”被禁止
  6. HALCON: HALCON 20.11.0.0 Progress主要新特性
  7. linux 指定jvm djava.library.path_JVM命令
  8. 《算法图解》之选择排序
  9. ENVI5.3.1使用Landsat 8影像进行主成分分析实例操作
  10. Android AIDL Service 跨进程传递复杂数据
  11. WindowsXP相关设置对应的注册表位置
  12. 斗鱼 虎牙24 小时直播电影教程
  13. 2021-2027全球与中国下一代测序数据分析市场现状及未来发展趋势
  14. Excel常用技巧——工作中最常用的30个Excel函数公式
  15. java的即时通讯代码,即时通讯软件源代码-求用JAVA写的开源即时通讯软件的源代码...
  16. Vue中时间日期格式化
  17. linux 运行安卓游戏吗,桌面应用|在 Linux 上安装安卓 8.1 Oreo 来运行应用程序和游戏...
  18. 苹果x为什么总黑屏_苹果X手机为什么突然黑屏了
  19. hyper-v虚拟化和游戏冲突
  20. 魔兽世界怀旧服官网-衣米魔兽网站展示

热门文章

  1. 干货文稿|当模型预测控制遇见机器学习
  2. 实验十四 团队项目评审课程学习总结
  3. python利用列表计算斐波那契数列前30项_使用python计算斐波那契数列
  4. python 学习笔记(二)数列
  5. Python爬虫爬取单张图片
  6. 【基于matlab数字图像处理GUI代码】_数字图像处理考核论文_大作业_项目
  7. 新型冠状病毒肺炎影像学的理论依据(一)
  8. 2018吉大计算机学院复试线,吉林大学2018年考研复试分数线【已公布】
  9. 关于电商商品数据API接口列表,你想知道的(详情页、Sku信息、商品描述、评论问答列表)
  10. python 携程航班信息查询