在BIN目录里面启动服务器(startup),然后在浏览器里面输入http://localhost(服务器IP):端口号(8080)/就可以看到自己的服务端.
如果要运行程序:
例如:http://192.168.1.77:8080/mywork/table.jsp
192.168.1.77是服务器IP。
8080是端口号。
mywork是项目名。
table.jsp是文件名。
解决乱码:
一定要把这一行放到jsp文件的第一行:
<%@ page language="java" contentType="text/html; charset=GBK"
pageEncoding="GBK"%>
九大对象:
第一大对象:Out
Out.print();输出数据到浏览器,和<%= %>一样的效果.
<% %>括号中间写JAVA代码。
<%=变量%>输出到浏览器
1. 网页跳转.
form表单的跳转,在form里面输入action=”*.jsp”;
例如:
<form name="enter" action="文件名.jsp" onsubmit="return 函数名()">
再<input type="submit" value="提交" name="refer">,点击提交后就可以就可以跳转到*.jsp页面.
如果输入为空的话,不想让页面跳转,可以在函数里面加入return false;不满足条件就不往下执行.全部满足条件的时候就跳转到另一个页面.
2. javascript跳转:
例如:
function test(){
//window.location.href="*.jsp"; 这个就像超链接,可以返回
window.location.replace("*.jsp"); 这个就是把以前的给替代了,所以不能返回.
}
在按钮上面调用这个函数方法就可以执行跳转了.
Button类型按钮:
function xxx(){
document.form名.submit();
}
//调用这个方法的按钮会自动执行form里面的action,跳转到另一个页面.
动态修改action:
function xxx(){
document.enter.action="color.jsp"; //更改action里面的页面,下面的语句不能注释,要靠它提交,不然会没反映.
document.enter.submit(); //调用这个方法的按钮会自动执行form里面的action,跳转到另一个页面.
}
function text(){
document.enter.action=document.enter.name.value; //在文本框上面输入什么页面就进入什么页面.
document.enter.submit(); //上面改值后用这个提交.
}
****(第二大对象)request对象:获取客户端提交的数据。
out 向客户端输出数据
request 向客户端请求数据
客户端的跳转方式:
function zhuce(){
document.enter.action="requestTest.jsp";
document.enter.submit();
}
<%
out.print("<table border=1>");
out.print("<tr>");
out.print("<td>"+"姓名:"+request.getParameter("name")+"</td>");
out.print("</tr>");
%>
执行上面这段代码将会在另外一个页面输出你输入的姓名.
l 表单的两种提交方式get与post
<form name="enter" action="array.jsp" onsubmit="return login()" method="post">
解决乱码的三种方式:
<%@ page language="java" contentType="text/html; charset=GBK"
pageEncoding="GBK"%>
<% request.setCharacterEncoding("GBK") ;
response.setCharacterEncoding("GBK")
%>
Get和post提交的区别:
1.Get不安全,Post安全(因为get把里面的信息全部显示在了地址栏上面,而post没有)
2.get有长度限制,post没有长度限制.
下面是get提交后产生的地址栏的地址:
http://192.168.1.77:8080/mywork/requestTest.jsp?name=%CD%F5%BA%A3&age=22&sex=%C4%D0&native=%C0%E4%CB%AE%CC%B2&like=%BF%B4%CA%E9&like=%CC%B8%C7%E9&like=%CB%AF%BE%F5&intro=%09%0D%0A%09tell+me+why+%0D%0A%09%D7
下面是post提交后产生的地址栏的地址:
http://192.168.1.77:8080/mywork/requestTest.jsp
服务端的跳转方式:
第三大内置对象:response (重定向)
只发生在请求的范围之内(只能从上一个页面传到另一个页面).
Response.sendRedirect(“http://www.baidu.com”);
response 封装了jsp产生的响应,然后被发送到客户端以响应客户的请求
hidden:隐藏表单域.
就是把一个框架给隐藏起来,但是它的值还在这里,只是不显示出来而已,也可以用它来传值,并且在另一个页面显示出来.
例如:
<input type="hidden" name="userName" value=<%=request.getParameter("userName")%>>
第四大内置对象session:
在当前打开的浏览器内,多个页面的数据共享.
session.setAttribute("name",request.getParameter("userName"));
session.setAttribute("pass",request.getParameter("password"));
session.getAttribute("name");
session.getAttribute("pass");
第一大指令:page
用指令导入一个包:
<%@ import=”包名”%>
2010-4-19
在一个项目中不能用过多的session,因为它会导致系统的性能下降,所以我们要慎用session。
一般是用在保存用户的登录信息(用户信息、权限、资源)、频繁使用的信息。
第五大内置对象(application):可以在多个浏览器内共享数据
application>session>request
session保存的数据只在当前浏览器有效,只要不关闭浏览器,就能实现多个浏览器之间的共享。
Application保存的数据在当前服务器里有效,只要不关闭服务器,也能实现多个浏览器之间的共享。
application对象 application对象实现了用户间数据的共享,可存放全局变量.它开始于服务器的启动,直到服务器的关闭,在此期间,此对象将一直存在;这样在用户的前后连接或不同用户之间的连接中,可以对此对象的同一属性进行操作;在任何地方对此对象属性的操作,都将影响到其他用户对此的访问.服务器的启动和关闭决定了application对象的生命.它是ServletContext类的实例.
session对象 session对象指的是客户端与服务器的一次会话,从客户连到服务器的一个WebApplication开始,直到客户端与服务器断开连接为止.它是HttpSession类的实例.
第一大指令:page
导入自己的类:
<%@ page import=”包名.类名”%>
2010-4-22
l JSP中的静态包含与动态包含
第二大指令:include
重复的代码就抽取出来,如:一个表的欢迎语句就可以抽取出来,因为每个表都要有欢迎语句:
1.静态包含<%@ include file=”*.jsp”%>
第一大动作:<jsp:include >
2.动态包含<jsp:include page=”*.jsp” flush=”true”> </jsp:include>
这段代码放在哪里就显示在哪里!!
静态包含和动态包含的区别:
1. 单独编译(动态包含)与统一编译(静态包含)→变量共享。
2.检查包含文件变化(动态包含刷新的时候总是会去检查文件,而静态包含却不一定会去检查文件)。
3.动态包含可以带参数,静态包含不可以带参数。
第二大动作:<jsp:useBean>
语法:
<jsp:useBean class=”包名.类名” id=”aa” />
<jsp:useBean class=”包名.类名” id=”aa” scope=”session” />
<%
//scope=”session” 这是设置它的有效范围 就相当于session.setAttribute();
//id="person"就相当于 PersonDB person=new PersonDB();生成person对象
%>
动态包含与静态包含
<jsp:include>动态包含与静态包含
it 分类:jsp
动态INCLUDE
用jsp:include动作实现 <jsp:include page="included.jsp" flush="true" />它总是会检查所含文件中的变化,适合用于包含动态页面,并且可以带参数。
(这里你必须使用flush="true",你不能使用false值.缺省值为false )
静态INCLUDE
用include伪码实现,定不会检查所含文件的变化,适用于包含静态页面<%@ include file="included.htm" %>
===================================================================
1. 静态include的结果是把其他jsp引入当前jsp,两者合为一体
动态include的结构是两者独立,直到输出时才合并( 看看jsp生成的java文件就可以知道了)
2.正是因为这样,动态include的jsp文件独立性很强,是一个单独的jsp文件,需要使用的对象,页面设置,都必须有自己创建,当然, 还好它和include它的页面的request范围是一致的.
而静态include纯粹是把代码写在外面的一种共享方法,所有的变量都是可以和include它的主文件共享,两者高度紧密结合,不能有变量同名的冲突.而页面设置也可以借用主文件的.
flush属性: 用true ,表示页面可刷新。
第六大内置对象:page
<jsp:useBean class=”包名.类名” id=”生成的对象的名字” scope=”session” />
如果不写scope=”session” 就默认为第六大内置对象。
它的数据只作用于当前页面
第三大动作:<jsp:getProperty name=”生成对象的名字” property=”对象的属性(age)”>
从对象中取出属性值:<jsp:getProperty name="bean对象" property="bean对象属性" >
例如:<jsp:getProperty property="age" name="person"/>
第四大动作<jsp:getProperty name=”bean对象实例” property=”age” value=”12”/>
例如: <jsp:setProperty property="age" name="person" value="12"/>
参数赋值法:<jsp:setProperty name=”bean对象实例” property=”age” param=”参数属性”/>
就是说你用?号传值法把你输入的值给传到param里面。
1.创建bean对象:
<jsp:useBean id="bean对象引用名" class="包.类" scope="对象作用域(page(默认)/request/session/application)" />
2.为对象设置属性值:
<jsp:setProperty name="bean对象" property="bean对象属性" param="请求参数名(表单元素名)">
<jsp:setProperty name="bean对象" property="bean对象属性" value="变量的值">
注意:属性名区别大小写,param 和 value只能单独用,不能合用
2. 从对象中取出属性值:<jsp:getProperty name="bean对象" property="bean对象属" >
set
form提交
post
1.客户端跳转 href
修改地址提交法
replace
重定向:response.sendRedirect(“http://www.baidu.com”);
2.服务端跳转
<jsp:forward page=”网址”/>
<jsp:forward page="header.jsp"></jsp:forward>
第五大动作:<Jsp:forward page=”*.*”></jsp:forward>
只能跳到当前文件里面的文件,不能跳到www.baidu.com网.
response.sendRedirect(“http://www.baidu.com”);可以跳转到所有的网站和jsp文件.
<jsp:forward page=”网址”>和response.sendRedirect(“网址”);的区别:
1. 地址栏的区别:跳转的时候, response.sendRedirect(“”);的地址栏改变了,而<jsp:forward>的地址栏没有改变
分享到:
相关推荐
JSP简单标签是JSP自定义标签的一种形式,它允许开发者创建自定义的行为,以替代硬编码的Java脚本。本教程将深入探讨JSP简单标签的概念、使用方式以及其在实际开发中的应用。 一、JSP简单标签概述 JSP简单标签是...
在这个"jsp简单注册,登录页面"项目中,我们主要涉及到以下几个关键知识点: 1. **HTML/CSS/JavaScript基础**:登录和注册页面通常包含HTML表单元素,如`<input>`用于用户输入用户名和密码,CSS用于样式设计,提升...
**JSP简单购物车系统详解** 在Web开发领域,构建一个购物车系统是常见的实践项目,它可以帮助我们理解和掌握服务器端编程技术。本系统以"jsp简单购物车系统"为标题,采用JavaServer Pages(JSP)和Servlet技术,为...
【JSP简单电商网站设计源代码详解】 在IT行业中,电商网站的设计与开发是一项常见的任务,它涉及到前端用户界面、后端服务器逻辑以及数据库管理等多个技术领域。本项目"jsp简单电商网站设计源代码"就是一个典型的...
【JSP简单的管理系统】是一个基于JavaServer Pages(JSP)技术构建的轻量级应用程序,主要功能是实现与数据库的交互以及数据在网页间的传递。这个管理系统已经解决了中文字符编码问题,确保了在非英文环境下也能正常...
【JSP简单登录页面】是Web开发初学者经常会遇到的一个基础课题。JSP(JavaServer Pages)是Java技术的一部分,它允许开发人员在HTML或XML文档中嵌入Java代码,以便在服务器端动态生成网页内容。这个登录页面的实现...
本项目“jsp简单用户登录和注册”是专为初学者设计的,旨在帮助他们理解和掌握如何利用JSP来实现用户登录和注册功能。在这个系统中,我们将探讨以下几个关键知识点: 1. **JSP基本概念**:JSP是一种服务器端脚本...
JSP实现简单购物车JSP实现简单购物车JSP实现简单购物车JSP实现简单购物车JSP实现简单购物车JSP实现简单购物车JSP实现简单购物车JSP实现简单购物车JSP实现简单购物车JSP实现简单购物车JSP实现简单购物车JSP实现简单...
"jsp 简单的增删改的数据库操作程序" 这个标题揭示了我们讨论的核心内容,即一个基于JSP(JavaServer Pages)技术的数据库操作项目,它具备基本的CRUD(创建Create、读取Read、更新Update、删除Delete)功能。...
在本“JSP简单的博客程序”中,我们将探讨如何利用JSP来实现一个基本的博客系统,它允许用户进行各种操作,如发布文章、浏览文章、评论等。** 首先,我们需要理解JSP的基础架构。JSP页面由HTML或XML标记以及嵌入...
【标题】"jsp简单网上购物系统"是一个适合初学者实践的项目,旨在提供一个基础的电子商务平台,让学习者能够理解和掌握如何使用JSP技术构建一个基本的在线购物功能。这个系统的核心特点是其简洁性,主要实现了商品...
《简单的jsp网上选课系统》 本项目是一个基于Java2EE技术实现的简易网上选课系统,主要面向初级开发者和正在进行课程设计的学生提供参考。它涵盖了Web开发的基础概念和核心技术,通过实际操作,帮助初学者理解并...
本资源“jsp简单分页 完整版”是针对Java Web开发中的一个实例,它使用JSP(Java Server Pages)技术实现了一个基础的分页功能。JSP是Java的一种动态网页技术,允许开发者在HTML或XML文档中嵌入Java代码,以生成动态...
【JSP简单示例】是关于JavaServer Pages(JSP)技术的一个基础应用展示,它在Web开发领域中被广泛用于构建动态网页。JSP是一种服务器端脚本语言,允许开发者将HTML、XML或其他标记语言与Java代码混合,从而创建交互...
【标题】"jsp简单在线聊天室"是一款基于JavaServer Pages(JSP)技术构建的简易实时通讯应用,它允许用户进行在线交流。该系统利用了Web服务器与客户端之间的交互机制,实现了基本的聊天功能,包括发送消息、接收...
本篇将深入探讨基于JSP(JavaServer Pages)技术构建的“jsp简单系统”,这是一个专为初学者设计的、实用且易于理解的学习平台。JSP是Java平台上的一种动态网页技术,它允许开发者在HTML页面中嵌入Java代码,以实现...
分页插件分页插件分页插件JAVA JSP 简单分页插件JAVA JSP 简单分页插件JAVA JSP 简单分页插件JAVA JSP 简单分页插件JAVA JSP 简单分页插件JAVA JSP 简单分页插件JAVA JSP 简单分页插件JAVA JSP 简单分页插件JAVA JSP...
【JSP简单实例】 一个简单的JSP示例可能如下: ```jsp ; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> 我的第一个JSP页面 ("name"); %> 欢迎,! ``` 在这个例子中,我们获取了请求参数"name...
在本项目中,"JSP简单的计算器"是一个基于JAVA WEB技术实现的简易计算工具,主要目的是让学生或开发者熟悉JSP(JavaServer Pages)的基本用法和动态网页开发。以下是关于这个项目的详细知识点: 1. **JSP基础**: ...