oracle标识列实现:
1、创建序列# create sequence 序列名 increment by 1 start with 1 maxvalue 999999999; 2、创建触发器# create or replace trigger 触发器名 before insert on 表名 for each row declare -- local variables here begin SELECT 序列名.Nextval INTO :NEW.自增列 FROM DUAL; end 触发器名;
iframe的实现跳转 通过name属性改变跳转地址
主页:
<%@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"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>新闻发布系统-后台主页</title> <link rel="stylesheet" type="text/css" href="css/admin.css" /> <style> #myLeft ul li a{ display: inline-block; width: 178px; border: 1px solid red; text-align: center; height: 35px; line-height: 30px; cursor: pointer; background: orange; font-size: 16px; font-weight: bold; } #myLeft ul li a:hover{ background: pink; color:green; } </style> </head> <body> <div id="header"> <div id="welcome">欢迎使用新闻管理系统!</div> <div id="nav"> <div id="logo"><img src="images/logo.jpg" alt="新闻中国" /></div> <div id="a_b01"><img src="images/a_b01.gif" alt="" /></div> </div> </div> <div id="admin_bar"> <div id="status">管理员:<%=request.getParameter("username") %>      <a href="#">login out</a></div> <div id="channel"> </div> </div> <div id = "myMain" style = "width: 947px;height:300px;background: pink;margin:0 auto;"> <div id = "myLeft" style = "width: 180px;height:300px;background: yellow;float:left"> <ul style = "list-style: none;"> <li><a href = "systemIndex.jsp" target = "myRight">系统首页</a></li> <li><a href = "systemEdit.jsp" target = "myRight">系统用户维护</a></li> <li><a>注册用户管理</a></li> <li><a>新闻发布</a></li> <li><a>新闻分类管理</a></li> <li><a>新闻信息管理</a></li> <li><a>评论管理</a></li> <li><a>公告管理</a></li> </ul> </div> <div id = "myRight"style = "width: 760px;height:300px;background: green;float:right;"> <!-- 锚点 --> <iframe name = "myRight" src ="systemIndex.jsp" width="100%" height = "100%"></iframe> </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      <a href="#">常见问题解答</a>      新闻热线:010-627488888<br /> 文明办网文明上网举报电话:010-627488888      举报邮箱:<a href="#">jubao@jb-aptech.com.cn</a></p> <p class="copyright">Copyright © 1999-2009 News China gov, All Right Reserver<br /> 新闻中国 版权所有</p> </div> </body> </html>
跳转的两个界面:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <h1>这是systemEdit.jsp页面</h1> </body> </html>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <h1>欢迎系统用户进入后台主页面</h1> <h5>当前系统时间:2022年12月12日 12:12:12</h5> </body> </html>
jsp页面实现分页功能
分页实体类:
package com.baidu.entity; /* * 分页实体类 */ import java.util.List; public class Paginate<T> { //总条数 private int count; //当前页 private int pageindx; //每一页数据条数 private int index; // 1 and 条数 private int start; //当前的页码 private int end; //总页数 private int yeshu; //获取的数据集合 private List<T> list; public Paginate() { // TODO Auto-generated constructor stub } public Paginate(int count, int pageindx, int index) { super(); this.count = count; this.pageindx = pageindx; this.index = index; if(count%index==0) { this.yeshu=count/index; }else { this.yeshu=(count/index)+1; } this.start=(pageindx-1)*index+1; this.end=index*pageindx; //this.list = list; } public int getCount() { return count; } public void setCount(int count) { this.count = count; } public int getPageindx() { return pageindx; } public void setPageindx(int pageindx) { this.pageindx = pageindx; } public int getIndex() { return index; } public void setIndex(int index) { this.index = index; } public int getStart() { return start; } public void setStart(int start) { this.start = start; } public int getEnd() { return end; } public void setEnd(int end) { this.end = end; } public int getYeshu() { return yeshu; } public void setYeshu(int yeshu) { this.yeshu = yeshu; } public List<T> getList() { return list; } public void setList(List<T> list) { this.list = list; } }
增删改到方法封存:
package com.baidu.dao; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.util.ArrayList; import java.util.List; import com.baidu.entity.NewsXwFb; import com.baidu.entity.Paginate; import com.baidu.utlis.DBHelper; /* * 新闻发布dao方法 */ public class XwFbDao { /* * 新增新闻的方法 */ public int addXw(NewsXwFb xw) { int n=0; Connection conn=null; PreparedStatement ps=null; ResultSet rs=null; try{ conn=DBHelper.getConn(); String sql="insert into tb_news values(?,?,?,?,?,?,?,to_date(?,'yyyy-mm-dd hh24:mi:ss'),?)"; ps=conn.prepareStatement(sql); ps.setInt(1, xw.getNid()); ps.setInt(2, xw.getNtid()); ps.setString(3, xw.getNtitle()); ps.setString(4, xw.getNauthor()); ps.setString(5, xw.getNsummary()); ps.setString(6, xw.getNcontent()); ps.setString(7, xw.getNimage()); ps.setString(8, xw.getNdate()); ps.setInt(9, xw.getNcount()); n=ps.executeUpdate(); }catch(Exception e){ e.printStackTrace(); }finally{ DBHelper.myClose(conn, ps, rs); } return n; } /** * 查询所有的方法 */ public List<NewsXwFb> XwAll() { Connection conn=null; PreparedStatement ps=null; ResultSet rs=null; List<NewsXwFb> list=new ArrayList<>(); try{ conn=DBHelper.getConn(); String sql="select * from tb_news"; ps=conn.prepareStatement(sql); rs=ps.executeQuery(); while(rs.next()) { list.add(new NewsXwFb(rs.getInt(1), rs.getInt(2), rs.getString(3), rs.getString(4), rs.getString(5), rs.getString(6), rs.getString(7), rs.getString(8), rs.getInt(9))); } }catch(Exception e){ e.printStackTrace(); }finally{ DBHelper.myClose(conn, ps, rs); } return list; } /** * 分页查询 */ public List<NewsXwFb> XwAll(Paginate<NewsXwFb> pg) { Connection conn=null; PreparedStatement ps=null; ResultSet rs=null; List<NewsXwFb> list=new ArrayList<>(); try{ conn=DBHelper.getConn(); String sql="select b.* from(select a.*,rownum as rid from tb_news a)b where b.rid between "+pg.getStart()+" and "+pg.getEnd(); ps=conn.prepareStatement(sql); rs=ps.executeQuery(); while(rs.next()) { list.add(new NewsXwFb(rs.getInt(1), rs.getInt(2), rs.getString(3), rs.getString(4), rs.getString(5), rs.getString(6), rs.getString(7), rs.getString(8), rs.getInt(9))); } }catch(Exception e){ e.printStackTrace(); }finally{ DBHelper.myClose(conn, ps, rs); } return list; } /** * * 简化分页参数 查询 * @pag 当前页面 第几页 * @indx 每一页的数据 */ public List<NewsXwFb> XwAll(int pag, int indx) { return XwAll(new Paginate<>(XwAll().size(), pag, indx)); } /** * 删除新闻的方法 * @param args */ public int deleteId(int sid) { int n=0; Connection conn=null; PreparedStatement ps=null; ResultSet rs=null; try{ conn=DBHelper.getConn(); String sql="delete from tb_news where nid="+sid; ps=conn.prepareStatement(sql); n=ps.executeUpdate(); }catch(Exception e){ e.printStackTrace(); }finally{ DBHelper.myClose(conn, ps, rs); } return n; } /** * 查询单个的方法 * @param args */ public NewsXwFb nidAll(int sid) { Connection conn=null; PreparedStatement ps=null; ResultSet rs=null; NewsXwFb nxw=null; try{ conn=DBHelper.getConn(); String sql="select * from tb_news where nid="+sid; ps=conn.prepareStatement(sql); rs=ps.executeQuery(); if(rs.next()) { nxw=new NewsXwFb(rs.getInt(1), rs.getInt(2), rs.getString(3), rs.getString(4), rs.getString(5), rs.getString(6), rs.getString(7), rs.getString(8), rs.getInt(9)); } }catch(Exception e){ e.printStackTrace(); }finally{ DBHelper.myClose(conn, ps, rs); } return nxw; } /* * 修改新闻的dao方法 */ public int updateXw(NewsXwFb xw,int sid) { int n=0; Connection conn=null; PreparedStatement ps=null; ResultSet rs=null; try{ conn=DBHelper.getConn(); //String sql="insert into tb_news values(?,?,?,?,?,?,?,to_date(?,'yyyy-mm-dd hh24:mi:ss'),?)"; String sql="update tb_news set ntid=?,ntitle=?,nauthor=?,nsummary=?,ncontent=?,nimage=?,ndate=to_date(?,'yyyy-mm-dd hh24:mi:ss'),ncount=? where nid=?"; ps=conn.prepareStatement(sql); ps.setInt(1, xw.getNtid()); ps.setString(2, xw.getNtitle()); ps.setString(3, xw.getNauthor()); ps.setString(4, xw.getNsummary()); ps.setString(5, xw.getNcontent()); ps.setString(6, xw.getNimage()); ps.setString(7, xw.getNdate()); ps.setInt(8, xw.getNcount()); ps.setInt(9, sid); n=ps.executeUpdate(); }catch(Exception e){ e.printStackTrace(); }finally{ DBHelper.myClose(conn, ps, rs); } return n; } public static void main(String[] args) { System.out.println(new XwFbDao().XwAll(new Paginate<>(new XwFbDao().XwAll().size(), 1, 2)).size()); System.out.println(new XwFbDao().XwAll().size()); System.out.println(new XwFbDao().XwAll(1, 2)); } }