目录
页面跳转方式
1.通过HTML超链接的方式进行跳转
<a href = "路径">资源地址</a>
<a href = "index.jsp?username=admin&password=123">跳转到主页</a>
2.通过js的location对象进行页面跳转
window.location.href = "路径";
<script type="text/javascript">
function add(){
/* 通过js的location对象进行页面跳转 */
location.href = "index.jsp?result=123";
}
</script>
3.通过java方式
3.1 转发
a.转发 是有服务端发起的跳转
b.转发 跳转页面后,地址栏不会发生改变
c.转发 跳转页面后,上一个页面的数据会保留下来 可以在跳转后的页面上进行获取 通过reuqest对象获取
response 内置对象 响应
方法:request.getRequestDispatcher("XXX").forward(request, response);
request.getRequestDispatcher("index.jsp").forward(request, response);
3.2 重定向进行跳转
a.地址栏:显示新的地址
b.请求次数:2次
c.根目录:http://localhost:8080/ 没有项目的名字
d.请求域中的数据会丢失,因为是2次请求
方法: response.sendRedirect("XXX");
response.sendRedirect("index.jsp");
3.3注意事项
a.如果要保留请求域中的数据,使用转发,否则使用重定向。
b.以后访问数据库,增删改使用重定向,查询使用转发。
c.无论转发或重定向后续的代码都会执行
转发与重定向的区别:
JDBC API
主要功能:
与数据库建立连接、执行SQL 语句、处理结果。
常用对象:
DriverManager
依据数据库的不同,管理JDBC驱动
Connection
负责连接数据库并担任传送数据的任务
PreparedStatement
由 Connection 产生、负责执行SQL语句
ResultSet
负责保存Statement执行后所产生的查询结果
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、释放资源
案例连接oral
//连接对象定义
Connection conn = null;
PreparedStatement ps = null;//执行对象
//结果集对象
ResultSet rs = null;
try{
//a.加载驱动
//快捷方式 倒入驱动路径 OracleDriver
Class.forName("oracle.jdbc.driver.OracleDriver");
//b.建立连接
String url = "jdbc:oracle:thin:@localhost:1521:orcl";//强调一下 每个人的url值的最后不一样
//但是大部分人是一样 服务窗口中查看OracleServiceORCL 这个服务 ORCL后面有没有字母
conn = DriverManager.getConnection(url, "scott", "123");
//c.编写sql语句传入执行方法返回执行对象
String sql = "select * from tb_users where username = ? and password = ?";
ps = conn.prepareStatement(sql);
//d.占位符赋值
ps.setString(1, username);
ps.setString(2, password);
//e.返回结果集对象
rs = ps.executeQuery();
//d.遍历或者判断
if(rs.next()){//如果结果集中存在下一条数据
//有用户返回出来了 用变量接收
uname = rs.getString(2);
pwd = rs.getString(3);
}
}catch(Exception e){
e.printStackTrace();
}finally{
if(conn!=null&&!conn.isClosed()){
conn.close();
}
if(ps!=null){
ps.close();
}
if(rs!=null){
rs.close();
}
}
思维总结