jsp是什么(what),jsp应用的地方(where)、jsp的hellword(how)
jsp: jsp技术是以java代码作为脚本的html页面技术, 通俗一句话,jsp文件可以同时编写java和html代码,
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!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>
index
<%
System.out.println("helloword!");
out.print("helloword");
%>
</body>
</html>
jsp上可以编写java嗲吗,但是必须使用<% 代码片段 %>
jsp也就是我们未来服务器的动态页面,服务器尽量不要出现html文件,我们即使拿到的是html文件,我们也需要吧html改造成jsp文件
改造的方式就是,代码拷贝
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>纸叠效果会员登录界面模板</title>
<link rel="stylesheet" type="text/css" href="http://localhost:8088/TestJsp1.0.0/css/style.css" />
<link rel="stylesheet" type="text/css" href="http://localhost:8088/TestJsp1.0.0/css/body.css"/>
</head>
<body>
<div class="container">
<section id="content">
<form action="http://localhost:8088/TestJsp1.0.0/servlet/LoginServlet" method="post">
<h1>会员登录</h1>
<div>
<input value="lisi" name="account" type="text" placeholder="邮箱" required="" id="username" />
</div>
<div>
<input value="1314" name="pwd" type="password" placeholder="密码" required="" id="password" />
</div>
<div class="">
<span class="help-block u-errormessage" id="js-server-helpinfo"> </span> </div>
<div>
<!-- <input type="submit" value="Log in" /> -->
<input type="submit" value="登录" class="btn btn-primary" id="js-btn-login"/>
<a href="#">忘记密码?</a>
<!-- <a href="#">Register</a> -->
</div>
</form><!-- form -->
<div class="button">
<span class="help-block u-errormessage" id="js-server-helpinfo"> </span>
<a href="#">下载网盘</a>
</div> <!-- button -->
</section><!-- content -->
</div>
<!-- container -->
<br><br><br><br>
<div style="text-align:center;">
<p> <a href="http://www.cssmoban.com/" target="_blank" title="模板之家"></a> - <span style="font-weight:bold;"></span> <a href="http://www.cssmoban.com/" title="网页模板" target="_blank">设计开发</a></p>
</div>
</body>
</html>
jsp实际上就是一个servlet的延伸,我们原来的java页面只有servlet组装代码输出, 操作太复杂,所以才开发了一个jsp的技术来专门做页面战士,所以jsp 就是一个高级的servlet
jsp写java代码 <% 代码快%>
jsp输出数据到页面 <%=变量名%>
在引入了jsp页面技术之后,servlet的输出页面数据的功能就不需要在使用了。而是使用jsp来进行页面的数据输出
jsp运行原理:
当我们第一次访问jsp的时候,tomcat需要吧jsp翻译成一个java文件,然后在编译成class文件,然后在运行。
有了jsp之后,我们开发就需要开始分层,这种分成思想叫mvc设计模式
m:模型: 具体处理我们java功能的代码类 javaBean
v:视图 : 进行数据展示的代码类 jsp
c: 控制 : 就是负责业务逻辑 servlet
1、jsp的的java脚本
<% java 码 %> <%=表达式%>
2、jsp的指令
page指令:是用于表示jsp的基本信息的一个指令
<%@ page language=”java” contentType=”text/html; charset=UTF-8”
pageEncoding=”UTF-8” %>
<c:forEach
items="<object>"
begin="<int>"
end="<int>"
step="<int>"
var="<string>"
varStatus="<string>">
...
案例
<c:forEach var="data" items="${list2 }">
<tr>
<td>${data.id }</td> <!-- data. getId() -->
<td>${data.name }</td> <!-- data. getId() -->
<td>${data.price }</td> <!-- data. getId() -->
<td>${data.num }</td> <!-- data. getId() -->
<td>${data.statu }</td> <!-- data. getId() -->
<td>${data.createDate }</td> <!-- data. getId() -->
<td>修改,删除</td>
</tr>
</c:forEach>
if语法:
代码
switch语法:
<c:choose>
<c:when test="<boolean>">
...
</c:when>
<c:when test="<boolean>">
...
</c:when>
...
...
<c:otherwise>
...
</c:otherwise>
</c:choose>