一.页面跳转方式
1. HTML超链接的方式
javascript方式跳转
window.location.href = "跳转的地址"
2. java方式跳转
(1) 转发
概述
由服务器端进行的页面跳转
方法
(1)获取转发器====》RequestDispatcher rd = request.getRequestDispatcher("/跳转的地址")
(2)实现转发====》转发器对象.forward(request,response);
通常简写:request.getRequestDispatcher("/跳转的地址").forward(request,response);
特点
(1)地址栏不发生变化,显示的是上一个页面的地址
(2)请求次数:只有1次请求,因为转发是服务端行为。
(3)根目录:http://localhost:8080/项目地址/,包含了项目的访问地址
(4)请求域中数据不会丢失
(2)重定向
概述
由浏览器端进行的页面跳转
方法
response.sendRedirect("要跳转的地址");
特点
(1)地址栏:显示新的地址
(2)请求次数:2次
(3)根目录:http://localhost:8080/ 没有项目的名字
(4)请求域中的数据会丢失,因为是2次请求
(3) 注意事
什么时候使用转发,什么时候使用重定向?
如果要保留请求域中的数据,使用转发,否则使用重定向。
以后访问数据库,增删改使用重定向,查询使用转发。
转发或重定向后续的代码是否还会运行?
无论转发或重定向后续的代码都会执行
二. JDBC API
1. 主要功能
与数据库建立连接、执行SQL 语句、处理结果
2. 常用对象
DriverManager
依据数据库的不同,管理JDBC驱动
Connection
负责连接数据库并担任传送数据
//使用步骤
> //1.注册驱动类
> Class.forName("oracle.jdbc.driver.OracleDriver");
> //2.连接数据库
> String url = "jdbc:oracle:thin:@localhost:1521:orcl";
> Connection conn = DriverManager.getConnection(url, "scott", "123");
> //3.执行sql语句
> String sql = "select * from tb_user where uname = ? and upwd = ?";
> //4.操作数据
> PreparedStatement ps = conn.prepareStatement(sql);
> //给占位符设置值
> ps.setString(1, username);
> ps.setString(2,password);
> //返回结果集
> ResultSet rs = ps.executeQuery();
> //判断结果集
> if(rs.next()){//如果有下一个值
> //转发---
> //out.print("<script>alert('登录成功')</script>");
> request.getRequestDispatcher("index.jsp").forward(request, response);
> }else{
> //重定向---新的请求方式
> //out.print("<script>alert('登录失败')</script>");
> response.sendRedirect("login.jsp");
> }
> //5.关闭连接
> rs.close();
> ps.close();
> conn.close();
> ```
的任务
PreparedStatement
由 Connection 产生、负责执行SQL语句
ResultSet
负责保存Statement执行后所产生的查询结果
3.java通过jdbc连接Oracle数据库进行交互的步骤
1、加载JDBC驱动
Class.forName(JDBC驱动类);
2、与数据库建立连接
Connection conn=DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:orcl","scott","admin");
3、发送SQL语句,并得到返回结果
4、处理返回结果
5、释放资源