一使用jsp实现页面跳转
一共有两种方法
页面跳转两种方式
1重定向response
1.1能够将页面跳转 地址栏发生了改变 但是不能将值传递到下一个界面
1.2能够跳转任意资源 在客户端发挥作用
语法:
response.sendRedirect("xxx.jsp");
2转发requset
2.1能够将页面跳转 能够将值传递下一个界面 但是地址栏不发生改变而是停留在了之前的界面
2.2只能够转发到当前的项目内资源 在服务器端发挥作用
语法:
request.getRequestDispatcher("xxx.jsp").forward(request, response);
还有一种我们熟悉的js跳转,那也是属于重定向
传值使用转发 不传值使用重定向 大多数都是使用重定向 因为能够任意跳转资源
- Jsp连接Oracle数据库jdbc
- 连接Oracle数据库步骤
1.1首先将jdbc放进WEB-INF里面的lib
1.2使用代码获取CNAME 定义URL
OracleDriver快捷键获得CNAME
切记!!copy的时候不要手抖,错一个都不行
//两个字符串
String URL="jdbc:oracle:thin:@localhost:1521:orcl";
String CNAME="oracle.jdbc.driver.OracleDriver";
//OracleDriver
1.3.然后开始加载驱动
创建连接
定义SQL语句
获得执行对象
使用问好的可以给?(占位符)赋值
开始执行
--增删改 影响行数 int
--查 结果集 集合
关闭
--增删改 两个
--查 三个
2.1 步骤源码
//加载驱动
Class.forName(CNAME);
//创建连接
Connection con=DriverManager.getConnection(URL, "scott", "123");
//定义SQL语句
String sql="insert into tb_0223(sid,sname,spwd,ssex,shobby,saddress,sbak) values(?,?,?,?,?,?,?)";
//获得执行对象
PreparedStatement ps=con.prepareStatement(sql);
//给占位符赋值
ps.setInt(1,Integer.parseInt(id));//String 转 int
ps.setString(2, name);
ps.setString(3, pwd);
ps.setString(4, sex);
ps.setString(5, hobby);
ps.setString(6, address);
ps.setString(7, bak);
//开始执行
//--增删改 影响行数 int
//--查 结果集 集合
int n=ps.executeUpdate();//获取影响行数
//int n=ps.executeUpdate();//获取影响行数
//关闭资源
//--增删改 两个
//--查 三个
if(con!=null&&!con.isClosed()){
con.close();
}
if(ps!=null){
ps.close();
}
//判断
if(n>0){
out.print("插入成功");
response.sendRedirect("success.jsp");
}
else{
out.print("插入失败");
}