新手解读JSP
一.解读简单JSP代码(承接上篇文章中的代码)
1.
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>首页</title>
<style >
.a{
font-size: 26px;//设置或获取对象文本使用的字体大小
margin-top: 20px;//设置或获取对象的上边距宽度 }
</style>
</head>
<body>
<div align="center">//dive框架居中
<h1 style="color: red;">信息管理系统</h1>//一级标题
<div class="a">
<a href="add.jsp">信息录入</a>//<a> 标签的 href 属性用于指定超链接目标的 URL
</div>
<div class="a">
<a href="TypeServlet?method=list">信息修改</a>
</div>
<div class="a">
<a href="delete.jsp">信息删除</a>
</div>
<div class="a">
<a href="select.jsp">信息查询</a>
</div>
</div>
</body>
</html>
页面显示:
2.
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<%
Object message = request.getAttribute("message");
if(message!=null && !"".equals(message)){ %>
<script type="text/javascript">//说明中间是JavaScript的代码,页面里的脚本程序。(<script>到</script>之间的 )
alert("<%=request.getAttribute("message")%>");//弹出对话框
</script>
<%} %>
<div align="center">
<h1 style="color: red;">课程信息录入</h1>
<a href="index.jsp">返回主页</a>
<form action="TypeServlet?method=add" method="post" onsubmit="return check()">
<div >
课程名称<input type="text" id="name" name="name"/>
</div>
<div >
任课教师<input type="text" id="teacher" name="teacher" />
</div>
<div >
上课地点<input type="text" id="classroom" name="classroom" />
</div>
<div >
<button type="submit" >保 存</button>
</div>
</form>
</div>
<script type="text/javascript">
function check() {
var name = document.getElementById("name");;
var teacher = document.getElementById("teacher");
var classroom = document.getElementById("classroom"); //非空
if(name.value == '') {
alert('课程名称为空');
name.focus();
return false;
}
if(teacher.value == '') {
alert('教师为空');
teacher.focus();
return false;
}
if(classroom.value == '') {
alert('上课地点为空');
classroom.focus();
return false;
} //教师
if(teacher.value != '王建民' && teacher.value != '王辉' && teacher.value != '刘丹' && teacher.value != '刘立嘉' && teacher.value != '杨子光'){
alert('教师名称错误');
return false;
} //教室
if(!/^基教/.test(classroom.value) && !/^一教/.test(classroom.value) && !/^二教/.test(classroom.value) && !/^三教/.test(classroom.value)) {
alert('上课地点错误');
return false;
}
}
</script>
</body>
</html>
二.语法
1.标题
<h1>--<h6> 标签用于设置网页中的标题文字,被设置的文字将以黑体或粗体的方式显示在网页中。
标签是成对出现的,<hn(n=1,2,3,4,5,6)>标签共分为六级,在<h1>...</h1>之间的文字就是第一级标题,是最大最粗的标题;<h6>...</h6>之间的文字是最后一级,是最小最细的标题文字.
2.JSP页面中的<% %>,<%!%>,<%= %>
JSP运行原理:JSP的本质就是一个Servlet,JSP运行之前会先被Tomcat服务器翻译为.java文件,然后在将.java文本编译为.class文件,而我们在访问jsp时,处理请求的就是那个翻译后的类。
<% %>称作脚本片段,其中写的内容会翻译在Servlet的Service方法中,我们可以在<%%>中定义局部变量或者调用方法,但不能定义方法。
<%!%>称作声明,其中写的内容将来会直接翻译在Servlet类中,因为我们可以在类中定义方法和属性以及全局变量,所以我们可以在<%!%>中声明方法、属性、全局变量。
<%=%>称作jsp表达式,用于将已经声明的变量或者表达式输出到网页上面。
直接写在jsp页面<body></body>中的代码称作模板元素,将来会在Servlet的Service方法中的out.write("___")中,作为输出内容。
示例:
<body>
<% for (int i=0;i<3;i++) {%>
out.println(i);
<%} %> <%! int i=1; %>//声明
<% int i=2; %>
<h1><% out.println(i++); %></h1>
<h1><%= this.i %></h1>//输出已声明
</body>
页面显示:
3.<input> 标签:用于搜集用户信息。
<form action="demo-form.php">
First name: <input type="text" name="FirstName" value="田"><br>
Last name: <input type="text" name="LastName" value="智凯"><br>
<input type="submit" value="提交">
</form> <p>点击"提交"按钮,表单数据将被发送到服务器上的“demo-form.php”。</p>
三.Javascript
1.javascript运行在浏览器,而且javascript不需要提前编译,但是java需要提前编译。
2.javascript运行在浏览器,可以对客户端进行数据计算。
3.如果将所有的表单都提交到服务器,让服务器来验证表单是否符合输入规则的话,这样会增加服务器压力,因此在数据上传到服务器之前,我们需要先验证客户端表单合法性,javascript可以验证客户端表单合法性。
4.html页面上有很多的行为,都是使用js来做的,比如当点击鼠标时候,触发某一个事件。
5.除此之外,javascript在页面中使用的比较多的就是用来做特效。比如很多网页首页的轮播图就是使用js做出来的。
6.javascript还有一个作用就是用来做服务器的异步数据提交。
alert是警告框,只有一个按钮“确定”无返回值,警告框经常用于确保用户可以得到某些信息。当警告框出现后,用户需要点击确定按钮才能继续进行操作。语法:alert("文本")。
示例:
<script type="text/javascript">
alert("确定要删除吗?");
alert("狠心删除吗?");</script>
页面显示:
2.确认框confirm()
confirm是确认框,两个按钮,确定或者取消,返回true或false。确认框用于使用户可以验证或者接受某些信息。当确认框出现后,用户需要点击确定或者取消按钮才能继续进行操作。如果用户点击确认,那么返回值为 true。如果用户点击取消,那么返回值为 false。语法:confirm("文本")
示例1:
<script type="text/javascript">
confirm("确定删除?");
</script>
示例2:学会利用返回的布尔值
<script type="text/javascript">
var cf;
cf=confirm("你喜欢我吗?");
if(cf==true)alert("喜欢!");
else alert("滚!");
</script>
3.提示框prompt()
prompt是提示框,返回输入的消息,或者其默认值提示框经常用于提示用户在进入页面前输入某个值。当提示框出现后,用户需要输入某个值,然后点击确认或取消按钮才能继续操纵。如果用户点击确认,那么返回值为输入的值。如果用户点击取消,那么返回值为 null。语法:prompt("文本","默认值")
示例:
<script type="text/javascript">
var name;
name=prompt("请输入姓名");
alert(name);
</script>
新手解读JSP的更多相关文章
- 解读JSP的解析过程
解读JSP的解析过程 互联网上,这方面的资料实在太少了,故把自己研究的一些结果公布出来. 首先,问大家几个问题,看大家能不能回答出来,或者在网上能不能找到答案: 1.page.include.tagl ...
- 新手学习JSP+Servlet笔记一
作为一个新手,初次接触jsp,servlet,习惯了后台的开发,前台的知识一窍不通,利用闲暇时间,给自己补补,从MyEclipse开始. 安装好MyEclipse之后,没有安装程序的可以下载 http ...
- 新手解决jsp页面<%@报错的方法
昨天菇凉我很崩溃的重装电脑系统(嗯,没错,第一次自己装系统,我可能是一个假的计算机系学生!),但这没难倒天生聪慧的我,都是小case~.这都不是重点,重点来了,当我火速配置好java的开发环境jdk, ...
- Tomcat 6 --- 使用Jasper引擎解析JSP
熟悉JAVA web开发的朋友都知道JSP会被转换成java文件(预编译),然后编译成class使用,即按照JSP-->java-->class的过程进行编译. 由于JVM只认识class ...
- JSP_运维_JSP项目部署到server(适合0经验新手)
实战:真正server端部署jsp项目经验总结与记录(完整过程从0到10适合对server端部署0经验新手) jsp+tomcat+mysql项目部署到真正server; servermysql安装; ...
- java web 开发入门实例
学习是个技巧活,关键是要找到重点的地方,新手在这方面的坑尤其多.看别人的教程一步一步的跟着做,隔几步就遇到一个新知识点,忍不住就百度往深处了解,一晃半天就过去了. 有的知识点要深入学习的,有的是了解下 ...
- JSP九大内置对象和四种属性范围解读
林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 摘要:本文首先主要解说了JSP中四种属性范围的概念.用法与实例. 然后在这个基础之上又引入了九 ...
- 关于富文本编辑器ueditor(jsp版)上传文件到阿里云OSS的简单实例,适合新手
关于富文本编辑器ueditor(jsp版)上传文件到阿里云OSS的简单实例,适合新手 本人菜鸟一枚,最近公司有需求要用到富文本编辑器,我选择的是百度的ueditor富文本编辑器,闲话不多说,进入正 ...
- java JSP(原创新手可进)
一. 同等编程方式jsp与asp.net的不同 app需要做一个简单网站,和几个用户推广链接,所以涉及到web这块开发,原本昨天想直接使用asp.net来做,但是之后放弃了这个想法,因为数据访问接口都 ...
随机推荐
- DOM常用事件绑定方式与实例
一.常用的事件 onclick 点击事件 模态框实例 <input type="button" id="b1" style="width:50p ...
- Docker 修改国内镜像地址
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://86d2a50b.m.daocloud.io 该脚本可以 ...
- position 有五个值:static、relative、absolute、fixed、inherit。
position 有五个值:static.relative.absolute.fixed.inherit. static 是默认值.就是按正常的布局流从上到下从左到右布局,平常我们做网页时,没有指定 ...
- python金融与量化分析------Matplotlib(绘图和可视化)
-----------------------------------------------------------Matplotlib:绘图和可视化------------------------ ...
- MySQL主从同步添加至zabbix监控
参考文档:https://blog.csdn.net/hellowidow_2020/article/details/78985368 https://www.cnblogs.com/cdjia ...
- .NET Core开发日志——Global Tools
.NET Core 2.1引入了一个新的功能,Global Tools,其本质是包含控制台应用程序的nuget包,目前而言,还没有特别有用的工具,不过相信随着时间的推移,各种有创意或者实用性强的Glo ...
- 动态环境下的slam问题如何解决?
作者:颜沁睿链接:https://www.zhihu.com/question/47817909/answer/107775045来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注 ...
- [No000011F]Python教程2/9-安装Python 及其解释器介绍
因为Python是跨平台的,它可以运行在Windows.Mac和各种Linux/Unix系统上.在Windows上写Python程序,放到Linux上也是能够运行的. 要开始学习Python编程,首先 ...
- [No0000B5]C# 类型基础 值类型和引用类型 及其 对象判等 深入研究1
引言 本文之初的目的是讲述设计模式中的 Prototype(原型)模式,但是如果想较清楚地弄明白这个模式,需要了解对象克隆(Object Clone),Clone其实也就是对象复制.复制又分为了浅度复 ...
- DACLs and ACEs
[Windows]Windows的访问控制模型 - Zplutor - 博客园 https://www.cnblogs.com/zplutor/archive/2010/01/05/1639892.h ...