新闻页面的数据维护

新闻页面的数据维护,第1张

新闻页面的数据维护主要包括:添加新闻、修改新闻、删除新闻、查询新闻

此图为新闻系统的管理页面

第一个是新闻的添加:主要代码为

<%@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"%>
    
<%
	//设置编码格式
	request.setCharacterEncoding("utf-8");
	//接收添加页面到的数据,获取新闻主题编号
	int tid = Integer.valueOf(request.getParameter("ntid"));
	//获取新闻标题
	String ntitle = request.getParameter("ntitle");
	//获取新闻作者
	String nzz = request.getParameter("nauthor");
	//获取新闻摘要
	String nzy = request.getParameter("nsummary");
	//获取新闻内容
	String ncontent = request.getParameter("ncontent");
	
	//注册驱动类
	Class.forName("oracle.jdbc.driver.OracleDriver");
	//连接数据库
	String url = "jdbc:oracle:thin:@localhost:1521:orcl";
	Connection con = DriverManager.getConnection(url, "scott", "tiger");
	
	//获取新闻分类的下一个编号
	int nextNid = 1;
	PreparedStatement ps = con.prepareStatement("select max(nid) from news");
	ResultSet rs = ps.executeQuery();
	if(rs.next()){
		nextNid=rs.getInt(1)+1;
	}
	
	//添加新闻
	ps = con.prepareStatement("insert into news values(?,?,?,?,?,sysdate,0,?)");
	//给占位符赋值
	ps.setInt(1, nextNid);
	ps.setInt(2, tid);
	ps.setString(3, ntitle);
	ps.setString(4, nzz);
	ps.setString(5, nzy);
	ps.setString(6, ncontent);
	//执行sql语句
	int i = ps.executeUpdate();
	if(i>0){
        //成功回到新闻系统页面
		out.print("");
	}else{
         //失败回到添加新闻页面
		out.print("");
	}
	
%>

添加新闻效果图如下:

 第二个是新闻的删除:首先给新闻系统绑定数据,连接ORCL数据库。


注意:要导包!

<%
	//接收要删除的新闻编号
	int nid = Integer.valueOf(request.getParameter("nid"));
	//注册驱动类
	Class.forName("oracle.jdbc.driver.OracleDriver");
	//连接数据库
	String url = "jdbc:oracle:thin:@localhost:1521:orcl";
	Connection con = DriverManager.getConnection(url, "scott", "tiger");
	//创建对象
	PreparedStatement ps = con.prepareStatement("delete news where nid="+nid);
	//执行sql语句
	int i = ps.executeUpdate();
	if(i>0){//成功删除回到主页面,并且刷新数据
		out.print("");
	}else{
		out.print("");
	}
%>
修改、详情,明日更新!敬请期待!

第三个是修改新闻页面:首先获取到修改页面的值。


修改页面的跳转流程:admin.jsp(主页面)===》update_news.jsp==》doupdate.jsp

重点代码展示:1、主页面中的部分代码:

'>修改

2、update_news.jsp页面的代码:重点是利用隐藏标签来换取新闻编号nid

//利用隐藏标签传值,无视觉效果,但可传值。


有value属性值,可以绑定值

修改新闻:
			<%
				//接收要修改的编号,把字符串转换为整数编号
				int nid = Integer.valueOf(request.getParameter("nid"));
				//注册驱动类
				Class.forName("oracle.jdbc.driver.OracleDriver");
				//连接数据库
				String url = "jdbc:oracle:thin:@localhost:1521:orcl";
				Connection con = DriverManager.getConnection(url, "scott", "tiger");
				//创建PreparedStatement对象
				PreparedStatement ps = con.prepareStatement("select * from news where nid="+nid);
				//执行sql语句
				ResultSet rs = ps.executeQuery();
				//声明变量,定义属性
				int tid = 0;
				String ntitle = "";
				String nzz = "";
				String nzy = "";
				String ncontent = "";
				if (rs.next()) {
					tid = rs.getInt("tid");
					ntitle = rs.getString("ntitle");
					nzz = rs.getString("nzz");
					nzy = rs.getString("nzy");
					ncontent = rs.getString("ncontent");
				}
			%>
		

//利用隐藏标签传值,无视觉效果,但可以传值。


有value属性值,可以绑定值

第四个是根据标题查找新闻:主要是获取标题关键字str,模糊查询仍回到主页面admin

//若输入值为空,则关键字为空,查询到所有新闻;若不为空,则根据关键字进行查询

    <% //获取模糊查询的关键字 String str = request.getParameter("str"); if(str==null){//若str为空,则关键字为空,查询到所有新闻;若不为空,则根据关键字进行查询 str = ""; } String sql = "select * from news where ntitle like '%"+str+"%' order by nid desc"; //注册驱动类 Class.forName("oracle.jdbc.driver.OracleDriver"); //连接数据库 String url = "jdbc:oracle:thin:@localhost:1521:orcl"; Connection con = DriverManager.getConnection(url, "scott", "tiger"); //创建PreparedStatement对象 PreparedStatement ps = con.prepareStatement(sql); //执行sql语句 ResultSet rs = ps.executeQuery(); while(rs.next()){ %>
  • "> <%=rs.getString("ntitle") %> 作者:<%=rs.getString("nzz") %>      '>修改     ' onclick='return clickdel()'>删除
  • <%} %>

第五个阅读新闻:重点代码为:


			<%
			//接收新闻编号
			int nid = Integer.valueOf(request.getParameter("nid"));
			//注册驱动类
       		Class.forName("oracle.jdbc.driver.OracleDriver");
       		//连接数据库
       		String url = "jdbc:oracle:thin:@localhost:1521:orcl";
       		Connection con = DriverManager.getConnection(url, "scott", "tiger");
       		//创建PreparedStatement对象
       		PreparedStatement ps = con.prepareStatement("select * from news where nid="+nid);
       		//执行sql语句
       		ResultSet rs = ps.executeQuery();
       		//声明变量,定义属性
       		String ntitle = "";
       		String nzz = "";
       		String ndate = "";
       		String ncontent = "";
       		if(rs.next()){
       			ntitle = rs.getString("ntitle");
       			nzz = rs.getString("nzz");
       			ndate = rs.getDate("ndate")+"";//直接转
       			ncontent = rs.getString("ncontent");
       		}
       		
			%>
				
			
=======================================================================
    
    <%=ntitle %>

    <%=nzz %>
    <%=ndate %>
    <%=ncontent %>

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/563675.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-02
下一篇 2022-04-02

发表评论

登录后才能评论

评论列表(0条)

保存