JSP中嵌入java代码方式以及指令
JSP中嵌入java代码的三种方式:
(1)声明变量或方法 : <%! 声明; %> :慎重使用,因为此方法定义的是全局变量
(2)java片段(scriptlet): <% java代码; %>
(3)表达式:用于输出表达式的值到浏览器,<%=表达式 %> 在表达式中不能加分号(;)
JSP页面的指令
<%@ page %> //这个一般是写在最顶上的比如导入等
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8" contentType="text/html; charset=UTF-8"%>
指令的作用:设置JSP页面的属性和特征
常用指令:
(1)<%@ page %> 或<jsp:directive.page > :常用属性:language=""contentType="text/html;charset=UTF-8"
pageEncoding="" import="com.inspur.Dpet"
isErrorPage="true|false" 指定当前页面是否可以作为错误页
errorPage="error.jsp" (error.jsp页面中的isErrorPage="true")
(2)<%@ include file="url"%> 或<jsp:directive.include >
【注意】静态包含,在编译阶段把其他文件包含进来一起编译生成字节码文件
问题:(1).被包含的文件中不能包含<html></html><body></body>;
(2).file属性赋值不能用表达式,不能带参数
HTML中form、reset和submit标签的用法:
<form name=”loginForm” method=”post/get” action=”…” onsubmit=”return function()”>
//action的内容是Servlet Mapping当中的URL
<input type=”reset” id=”reset” name=”reset” value=”重置”/>
<input type=”submit” id=”submit” name=”submit” value=”登陆”/>
</form>
form表单的method中post和get的区别:
Post提交的数据更具隐蔽性,适合提交大批量的数据
http://localhost:8080/booklib/user
而get提交的数据隐蔽性不好,会在地址栏内显示出来而且地址栏最多允许255个字符
http://localhost:8080/booklib/user?username=admin&password=123&submit=登陆
上述这种通过get传输数据的方法也可以通过超链接实现:
<a href="user?username=admin&password=123&submit=登陆"></a>
效果与get方法一样,而且用超链接提交的数据也可以用String userrname = request.getParameter("username"); 得到数据,其中方法的参数是数据名称即等号前的,值是等号后的。
也可以是:location.href="user?action=del&uid="+uid;
或:location.replace(""user?action=del&uid="+uid");
Location.href 等同于location.assign。(怎么用?????????)
当使用replace的时候请求的地址不会放到list当中去?????什么意思??
Form中的action的值应是web.xml中的url-pattern的值:
Web容器在收到这个值后会解析这个值,然后拿这个值到web.xml中的url-pattern去匹配,直到找到对应的Servlet类,之后通过反射机制生成Servlet实例,然后到Servlet中的service()方法中去,然后根据method请求的是post还是get调用相应的doPost()和doGet()方法。
如何调用jsp中的request和response对象:
request和response对象来源:来自doGet(HttpServletRequest request, HttpServletResponse response)
在jsp中可以直接用,用法如下:
request常用的方法有两个即:
request.setAttibute(“key”,value)/requeset.getAttribute(“key”)
//一般在Servlet中用setAttribute()
//一般在jsp中用getAttribute()
getAttribuet()得到的是一个对象即Object类型,用时需要进行强制类型转换
request.setCharacterEncoding("UTF-8");
String username = request.getParameter("username");
String password = request.getParameter("password");
session对象来源:在doGet()中申明的HttpSession session = request.getSession(true);
session:sessioin.setAttribute("key",value);
//一般在Servlet中用setAttribute()
(Object)session.getAttribute("key");
//一般在jsp中用getAttribute()
Servlet中的RequestDispatcher对象:
RequestDispatcher rd = request.getRequestDispatcher(target);
rd.forward(request,response)
JSP中嵌入java代码方式以及指令的更多相关文章
- JSP中嵌入java代码的标签方式(转)
(1)声明变量或方法 : <%! 声明; %> :慎重使用,因为此方法定义的是全局变量 (2)java片段(scriptlet): <% java代码; %> (3)表达式 ...
- JSP中的Java代码和内置对象
一.JSP中的Java代码 (一)JSP页面中有三种方式嵌入java代码: 1.java的表达式 格式:<%= java表达式 %> 2.java的语句 格式:<% java语句&g ...
- EL和 JSTL? 在JSP中简化 java代码的写法!
一.servlet部分 package com.aaa.servlet; import com.aaa.dao.IStudentDAO; import com.aaa.dao.Impl.Student ...
- jsp中包含JAVA代码
在JSP中大部分都是由脚本小程序组成,所谓的脚本小程序就是里面直接包含了JAVA代码. 在JSP中Scriptlet一共分为三种: · <%%>:定义局部变量,编写语句 ...
- 在jsp中嵌入javascript代码执行对html的影响方式
1 javascript的作用范围 javascript操作的是html dom树. 它可以用来直接写入html标签:修改html的内容:响应事件:修改html中的图像:修改html的样式等等. 2 ...
- jsp中利用java代码换行
从数据库中取出的10条商品数据分两行显示,每行5条. <% for(int i=0; i<latestProducts.size(); i++) { Product p = latestP ...
- 在jsp页面嵌入java代码让某些div显示或者隐藏
<!--监测评价人显示评价人信息 --> <% if("D3".equals(role_flag)){%> <div id="crud&qu ...
- Linux内核设计第四周学习总结 使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用
陈巧然原创作品 转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 实验目的: 使用库函数A ...
- 【JSP】JSP中的Java脚本
前言 现代Web开发中,在JSP中嵌入Java脚本不是推荐的做法,因为这样 不利于代码的维护.有很多好的,替代的方法避免在JSP中写Java脚本.本文仅做为JSP体系技术的一个了解. 类成员定 ...
随机推荐
- NodeJS -Express 4.0 用include取代partial
在Express 4.0 下按如下方法设置: (1)运行cmd 输入:npm install express-partials -g (2)下载成功后.在app.js 中引用此插件 var par ...
- UI控件tag属性和魔法数字的处理
说明:tag属性有很大的用处,它就好像每个UI控件的id,当多个按钮指向同一个监听方法时,可以给方法带参数UIButton,然后根据不同的tag值 来判断执行哪个按钮的监听事件: - (IBActio ...
- C语言基础:数组和字符串
数组:数组的定义注意点 数组初始化正确写法: int args[5] = {1,23,32,4,5}; int args[5] = {12,23}; int args[5] = {[3]=23, [4 ...
- js eval()执行传参函数的写法
.cs public class Message<T> { // 数据总数 public int? Total { get; set; } // 关键数据 public List<T ...
- Thinking in life(1)
There is always one things we donot notice---time ,which is the most important to all of us.By watch ...
- git@oschina.net源代码管理使用日记
git的优势: 1 可以创建分支: 2 版本控制是基于每一次提交的,而不需要考虑每次提交了多少个文件. 下载: 下载网址为:http://git-scm.com/download,根据您的操作系统选择 ...
- TS流格式(转)
一 从TS流开始 数字电视机顶盒接收到的是一段段的码流,我们称之为TS(Transport Stream,传输流),每个TS流都携带一些信息,如Video.Audio以及我们需要学习的PAT.PMT等 ...
- IntelliJ IDEA 15 部署Tomcat及创建一个简单的Web工程
一.部署Tomcat 二.创建一个简单的Web工程 2.1创建一个新工程 创建一个新工程 设置JDK及选择Web Application (创建的是Web工程) 点击Next,选择工作空间,起个工程名 ...
- Vim安装ctags插件
问题描述: 系统安装ctags插件 问题解决: (1)下载ctags插件 (2)新下载的ctags文件是一个tar包文件,使用tar -zxcf命令进行解压缩 注: 解压缩之后的 ctags文件,如上 ...
- 【BZOJ】【1076】【SCOI2008】奖励关
状压DP+数学期望 蒟蒻不会啊……看题跑…… Orz了一下Hzwer,发现自己现在真是太水了,难道不看题解就一道题也不会捉了吗? 题目数据范围不大……100*(2^16)很容易就跑过去了…… DP的时 ...