0
点赞
收藏
分享

微信扫一扫

web02

倪雅各 2022-03-27 阅读 46

02(jsp基本语法&表单提交方式)

思维导图
在这里插入图片描述

jsp的运行原理
一共通过三个阶段,先翻译,即.jsp翻译成.java,再编译,将.java编译成.class,然后才能执行

jsp模板元素?是jsp页面的html代码
jsp脚本片段?是jsp页面的java代码

jsp表达式
<%=对象或变量名或者表达式%>
相当于out.print()

jsp注释
<%!变量或者方法%>

html和jsp注释的区别
html:在源代码中可见<!——>
jsp反之<%——%>

表单提交方式两种:
1 get(默认)安全性低 地址栏可见信息有数据长度的限制
2 post 反之

B/S技术的特点是什么?

如下图:
在这里插入图片描述

如何在浏览器上动态输出当前日期?

<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<html>
<head><title>输出当前日期</title></head>
<body>
你好! 今天是
<%
java.text.SimpleDateFormat formater = new java.text.SimpleDateFormat(
"yyyy年MM月dd日");
String strCurrentTime = formater.format(new java.util.Date());
%>
<%=strCurrentTime %>
</body>
</html>

效果:在这里插入图片描述
表单提交的要求

需求:
1.客户端发出请求
2.请求发到服务器
3.服务器处理请求(查询,插入)

输出效果:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>表单</title>
</head>
<body>
<%--
表单(form)
	action:表单提交的地址
	method:表单提交的方式
		* get(默认) 显示在地址栏上,数据长度有限制
		* post 不显示在地址栏上,且数据长度没有限制
必须携带name属性,不然接收不到数据
--%>
<form action="index_02.jsp" method="post">
<p>
	<input type="text" name="username" placeholder="请输入用户名">
</p>
<p>
	<input type="password" name="password" placeholder="请输入密码">
</p>
<p>
	<input type="checkbox" name="habit" value="吃饭">吃饭 
	<input type="checkbox" name="habit" value="打豆豆"> 打豆豆
	<input type="checkbox" name="habit" value="睡觉"> 睡觉
</p>
<p>
	<button>登录</button>

接收:

 接收:
<%@ page language="java" contentType="text/html; charset=UTF-8"
 pageEncoding="UTF-8"%>
<!-- 处理登录请求 -->
<h1>这里是处理登录请求的界面</h1>
<%
	//内置用户:sa 123
	//获取用户提交过来的表单信息
	//取到的数据全都是String类型,如果需要其他类型,需要自己手动转换
	String username=request.getParameter("username");//从请求中取数据
	String password=request.getParameter("password");//从请求中取数据
	//接收多个具备相同name属性的值
	//String[] ts=request.getParameterValues("habit");
	String[] ts=request.getParameterValues("habit");
	//遍历
	String My_habit="";
	for(String habits:ts){
		System.out.println(habits);//这一行不会显示在页面上,而是显示在eclipse控制台上
		My_habit+=habits+",";//字符串的拼接
	}
	//保存到数据库中的数据应该是一个数据
	out.print(My_habit);//这是打印到页面上
	//做登录验证使用内置用户进行验证
	if("sa".equals(username)&&"123".equals(password)){
		out.print("登录成功");
	}else{
		out.print("登录失败");
	}
%>
举报

相关推荐

Web-API-02

WEB前端02-HTML5基础(02)

Web-HTML5-02

day02-移动web

web前端day02

day02-移动web(动画)

web前端学习day-02

【web开发02】后端开发Maven

02web安全学习---PHP简介

0 条评论