0
点赞
收藏
分享

微信扫一扫

JavaWeb的页面跳转和JDBC

闲嫌咸贤 2022-03-30 阅读 103

目录

一、页面跳转

1.js中的跳转

2.使用Java进行跳转

·转发与重定向的区别

·转发

·重定向

 二、数据库连接

1.JDBC是什么

2.连接数据库


一、页面跳转

说到页面跳转,我们当然需要页面啦,我们先编写两个界面。

<%@ 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>
	<form action="doLogin.jsp" method="post">
		<p><input name="username" placeholder="请输入账号"></p>
		<p><input name="userpwd" placeholder="请输入密码"></p>
		<p><button>登录</button></p>
	</form>
	
</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>
	<h2>欢迎来到首页</h2>
	<h2>欢迎 <%=request.getParameter("username") %>回来</h2>
</body>
</html>

下面所有的界面跳转都是从上面的登录界面跳转到首页

1.js中的跳转

💌登录处理界面:doLogin

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%
	//网络中数据传输用的都是字节 字节会产生乱码的情况
	request.setCharacterEncoding("utf-8"); //将请求中的字符编码设置为中文

	//获取来自于前端的数据
	String name=request.getParameter("username");
	String pwd=request.getParameter("userpwd");

	// js中的跳转 location.href='xxx'
	if("sa".equals(name)&&"123".equals(pwd)){
		out.print("<script>location.href='home.jsp'</script>");
	}else{
		out.print("<script>location.href='login.jsp'</script>");
	}
%>

 

  

js也是可以跳转的,但是拿不到值。 

2.使用Java进行跳转

Java的跳转方式有两种,一种是转发,还有一种是重定向。

·转发与重定向的区别

·转发

💕通俗易懂 

 【转发】:你找你爸要钱,你爸没钱,他就会找你妈要钱,他再把钱给你

💞图片解析

 

 💌登录处理界面:doLogin

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%
	//网络中数据传输用的都是字节 字节会产生乱码的情况
	request.setCharacterEncoding("utf-8"); //将请求中的字符编码设置为中文

	//获取来自于前端的数据
	String name=request.getParameter("username");
	String pwd=request.getParameter("userpwd");

	//登录验证
	if("sa".equals(name)&&"123".equals(pwd)){
		request.getRequestDispatcher("home.jsp").forward(request, response);
	}else{
		request.getRequestDispatcher("login.jsp").forward(request, response);
	}
%>

 

 

路径停留在了doLogin(登陆处理)界面 ,可以读取到用户的值。

·重定向

💕通俗易懂  

【重定向】:你找你爸要钱,你爸没钱,他叫你找你妈要钱,你妈再把钱给你

💞图片解析

 💌登录处理界面:doLogin

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%
	//网络中数据传输用的都是字节 字节会产生乱码的情况
	request.setCharacterEncoding("utf-8"); //将请求中的字符编码设置为中文

	//获取来自于前端的数据
	String name=request.getParameter("username");
	String pwd=request.getParameter("userpwd");

	//登录验证
	if("sa".equals(name)&&"123".equals(pwd)){
		response.sendRedirect("home.jsp");
	}else{
		response.sendRedirect("login.jsp");
	}
%>

 

 

路径跳转到home(首页)界面 ,不能读取到用户的值。 

 二、数据库连接

1.JDBC是什么

JDBC是Java数据库连接技术的简称,提供连接各种常用数据库的能力

 

2.连接数据库

在数据库中建一个表并插入一条数据

create table t_user(
       user_name varchar2(20) not null,
       user_pwd varchar2(20) not null
);
insert into t_user(user_name,user_pwd) values('root','root123');
select * from t_user;
commit --一定要提交

💌登录处理界面:doLogin 

<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.Connection"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="oracle.jdbc.driver.OracleDriver"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%

	//网络中数据传输用的都是字节 字节会产生乱码的情况
	request.setCharacterEncoding("utf-8"); //将请求中的字符编码设置为中文

	//获取来自于前端的数据
	String name=request.getParameter("username");
	String pwd=request.getParameter("userpwd");

	// 1.导入驱动(sqlserver,oracle,mysql),一定要执行build path
	//OracleDriver
	Class.forName("oracle.jdbc.driver.OracleDriver");

	// 2.编写连接语句
	String url="jdbc:oracle:thin:@localhost:1521:orcl";
	//打开oracle服务:开启服务和监听
	
	// 3.获得连接
	Connection con=DriverManager.getConnection(url,"scott","zkingedu");
	
	// 4.获得预编译对象
	PreparedStatement ps=con.prepareStatement("select * from t_user where user_name=? and user_pwd=?");
	//给占位符赋值
	ps.setString(1, name);
	ps.setString(2, pwd);
	
	// 5.获得结果集(结果)
	ResultSet rs=ps.executeQuery();
	
	// 6.判断
	//登录验证
	if(rs.next()){
		request.getRequestDispatcher("home.jsp").forward(request, response);
	}else{
		request.getRequestDispatcher("login.jsp").forward(request, response);
	}
	
	// 7.关闭资源
	if(con!=null&&!con.isClosed()){
		con.close();
	}
	if(ps!=null){
		ps.close();
	}
	if(rs!=null){
		rs.close();
	}

%>

 

 

 本期内容就讲到这啦,下期小编再给大家分享更多知识

举报

相关推荐

javaweb 页面跳转和jdbc

javaWeb页面跳转方式&JDBC

JavaWeb页面跳转方式&JDBC

javaWeb(页面跳转方式&JDBC)

javaweb_03(页面跳转方式&jdbc交互)

页面跳转&JDBC

0 条评论