动态网页
所谓的动态网页,是指跟静态网页相对的一种网页编程技术。
静态网页,随着html代码的生成,页面的内容和显示效果就基本上不会发生变化了——除非你修改html页面代码。而动态网页则不然,页面代码虽然没有变,但是显示的内容却是可以随着时间、环境或者数据库操作的结果而发生改变的。值得强调的是,不要将动态网页和页面内容是否有动感混为一谈。这里说的动态网页,与网页上的各种动画、滚动字幕等视觉上的动态效果没有直接关系,动态网页也可以是纯文字内容的,也可以是包含各种动画的内容,这些只是网页具体内容的表现形式,无论网页是否具有动态效果,只要是==采用了动态网站技术==生成的网页都可以称为动态网页。总之,动态网页是基本的html语法规范与Java、VB、VC等高级程序设计语言、数据库编程等多种技术的融合,以期实现对网站内容和风格的高效、动态和交互式的管理。因此,从这个意义上来讲,凡是结合了HTML以外的高级程序设计语言和数据库技术进行的网页编程技术生成的网页都是动态网页。
动态网页就是结合和java编程和数据库技术。而且动态网页中可以插入java代码。常用的动态网页
jsp,freemark,thymeleaf等这些都是常用的动态网页技术。 而我们这里主要讲解jsp.
什么是jsp
jsp【java server page】java服务器网页。该网页经过服务器tomcat编译产生java代码.而且里面可以插入java代码。
jsp中如何插入java代码
<%
//Java代码
%>
如何输出java的变量或表达式
第一种:
out.print("变量或表达式");
第二种
<%=变量或表达式%>
print方法出现红色。但是不影响使用。 只需要引入jar包即可。/WEB-INF/lib下
接受请求的参数
表单提交和超链接传递参数时,我们需要接受传递过来的参数内容。并完成相应的业务功能。servlet中封装了HttpServletRequest类,该类可以操作所有的请求内容。而在jsp中内置了该类的对象request。[内置表示无需自己创建该类对象。就可以使用该类中的方法]
获取表单提交的数据
login.jsp
<%--
Created by IntelliJ IDEA.
User: ldh
Date: 2024/9/18
Time: 11:20
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>登录页面</title>
</head>
<body>
<%--表单标签form action:表示提交的路径 method:表示表单的提交方式.--%>
<form action="/b.jsp" method="post">
<%--input:表示输入框 type:输入框的类型 name:输入框的名称--%>
账号:<input type="text" name="uname"/><br>
密码:<input type="password" name="pwd"/><br>
<%--表单提交按钮--%>
<input type="submit" value="登录"/>
</form>
</body>
</html>
b.jsp
<%--
Created by IntelliJ IDEA.
User: ldh
Date: 2024/9/18
Time: 11:27
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<%
//接受表单提交过来的数据。jsp内置HttpServletRequest类的一个对象,该对象名为request.而HttpServletRequest类中包含很多的方法。
// getParameter方法获取请求的参数值。
String uname = request.getParameter("uname"); //获取表单提交的账号参数值
String pwd = request.getParameter("pwd");//获取表单提交的密码参数值
//保证你的表单元素名必须和getParameter("参数名")一致。
//输出
out.print("账号:"+uname+"<br/>");
out.print("密码:"+pwd+"<br/>");
%>
</body>
</html>
如果表单提交的内容包含中文,则会获取时,出现了乱码。
获取超链接提交的数据
超链接页面
<%--超链接都是get请求方式。无法改--%>
<a href="/c.jsp?name=zs&age=15">连接</a>
c.jsp
<%--
Created by IntelliJ IDEA.
User: ldh
Date: 2024/9/18
Time: 11:46
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<%
String name = request.getParameter("name");
String age = request.getParameter("age");
out.print("name:"+name+"<br/>");
out.print("age:"+age+"<br/>");
%>
</body>
</html>
解决中文乱码问题