JavaWeb入门(简单的登录验证)

什么是JSP

java server page java服务器页面
J  java
S  server
P  pages

在jsp文件中嵌入java代码

使用<%%>将你的java代码扩起来
<% //你的java代码 %>


<%
	int i =1;
	out.print(i);  //将i输出到页面上 
%>

JSP的执行过程
JavaWeb入门(简单的登录验证)_第1张图片
现将JSP文件中的java代码先编译执行,然后将编译完的jsp文件返回给客户端

JSP中的全局变量和局部变量

全局变量的定义
<%! int x = 1%>在%后加一个!,表示定义的变量为全局变量
局部变量的定义
<% int x = 1%>不需要加!,直接定义的变量为局部变量
全局变量和局部变量的区别
全局变量不管执行(页面刷新)多少次,上一次对全局变量的执行结果即为下一次执行的初始值。(每刷新一次就会将全局变量的值+1
局部变量在页面刷新后就被重新赋值,保存在栈中,所以一定要有初始值

page指令

<%@page language=“属性值” import=“属性值” contentType=“属性值”%>
language的属性指定jsp页面使用的脚本语言
import的属性指jsp页面中使用的java所需要的包的导入
contentType的属性值用来指定页面的MIME类型,以及字符集

<%@page import = "java.util.ArrayList"%>  <!--导入ArrayList包-->
<%
	ArrayList list = new ArrayList(); 
%>

JSP获取表单提交的数据
请求对象:request

根据表单中name属性来获取表单中的值

<input 	type="text" name="userName">  <!--Html中的代码-->

<%
	String userName = request.getParameter("userName");//获取input中的值 
%>
 <!--同时获取多个同名的值   例如-->
 <input type="checkbox" name="type" value="1">
 <input type="checkbox" name="type" value="2">
 <input type="checkbox" name="type" value="3">
 <input type="checkbox" name="type" value="4">
 <%
 	String[] types = request.getParameterValues("type");
 	//利用循环将值一个个获得 
 %>

利用JSP制作一个简单的登录验证

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>登录界面</title>
</head>
<style>
	#p1{
     display:none;}  //先设置p标签属性不可见  登录失败则显示p标签内容
</style>
<body>
<form action="login.jsp" method="post">  <!--表单提交的页面地址为login.jsp  使用post隐式提交-->
账号:<input type="text" name="cu_name" /><br />
密码:<input type="password" name="cu_pwd" /><br />
<input type="submit" value="登录" /><br />
<p id="p1">用户名或者密码错误!</p>
<%
String e ="";
if(request.getParameter("err")!=null){
      //假如登录不成功,就会返回err=1
	e = request.getParameter("err");
	switch(e){
     
	case "1":
	//返回err=1时,则将p标签的display属性改为block,即可见
		out.print("");
		break;
	}
}
%>
</form>
</body>
</html>

login.jsp代码

<%@ page language="java"  contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
  <%@page import= "java.sql.* "%>
<% 
request.setCharacterEncoding("utf8");  //设置字符集 防止出现中文乱码
response.setCharacterEncoding("utf8");
String userName = request.getParameter("cu_name");  //根据那么属性获得用户输入的账号
String userPwd = request.getParameter("cu_pwd");//根据那么属性获得用户输入的密码
	if("zhangsan".equals(cu_name) && "123456".equals(cu_pwd)){
      //判断账号密码是否正确
		response.sendRedirect("/web03/welcome.jsp"); //假如正确就跳转到welcom.jsp的欢迎界面
	}else{
     
		response.sendRedirect("/web03/index.jsp?err=1"); //不正确的话返回登录界面,并返回err=1
	}
	
%>

你可能感兴趣的:(JavaWeb,JSP入门,登录验证)