(jsp语言必须要在脚本中调用 )
常用:<%%> <%= %> <%! %> out.print Integer.parseInt(request.getParameter(“uage”)); 变量.getBytes(“以前设置的编码格式”)
html嵌套 java 的同时 java也可以嵌套到html 只需要将java隔断一下就可以了
<% for(int a ;a<3;a++){%>xxxx<%}%>
常用对象遍历方法 for(String hobby :hobbies) {
out.print(hobby+ “ ”); }
一 out 输出对象 向客户端输出内容
二 request 请求对象 存储”客户端向服务端发送的请求信息“ 包含请求信息
三 发送出的request数据作用域 只在第一次请求中有效
(默认 get 方法 )
(一) get 与 post 两种请求方式的区别
1 get 提交方式 在地址栏显示请求信息 (但地址栏显示的信息有限 最多4-5kb 如果请求数据出现大文件 会出现地址栏无法容纳报错 ) 不安全
post 不会显示
2 文件上传工作 必须是post
get 用法 form 表单中 method=“get” 或者直接 超链接 、或者在地址栏直接输入 都属于get
post 用法 form表单中 直接method =“post” 用request对像 调用方法跟get 一样 只是更安全 不会在地址显示了
(二)request对象的常见方法 :
第一步
get 方式 如果出现乱码 解决 :
1.统一每一个变量的编码 new String (将旧编码放入,“新的编码格式 列入 utf-8”);
例如 String name =request.getParameter(“uname”);
new String (name.getBytes(“iso-8859-1”),“utf-8”)
//变量.getBytes()得到一个操作系统默认的编码格式的字节数组 new String (name.getBytes(“iso-8859-1”),“utf-8”) 通过以前的旧编码格式 得到一个新的utf-8编码的字符串
(缺点 非常麻烦)
2 修改server.xml 一次性的修改tomcat 默认 get提交方式的编码 (utf-8)
先看下是否是托管模式 是的话 直接在eclipse 里面改 在改端口号的地方 后面加 URIEncoding=“UTF-8” 之后所有的get方式请求 自动以UTF-8 进行传输
post方式 如果出现乱码 解决 :
void setCharacterEncoding(”编码格式 utf-8“) 设置接收到的请求编码 (tomcat 提交方式 tomcat7以前默认 iso-8859-1 8以后就默认是utf-8了)(tomcat7也可以用utf-8 但7的默认是iso-8859-1)
第二步 获取传送过来的请求
(1)字段值获取
String getParameter (String name) 根据请求字段名key (根据 根据标签的name属性 )返回字段值value(input 标签中的value 属性)
例 String name =request.getParameter(“uname”);
(2)字段集合获取
String[] getParameterValues (String name) 根据请求字段名key 返回多个字段值value (checkbox)
例 String[] hobbies =request.getParameterValues(“uhobbies”);
for(String hobby :hobbies)
{
out.print(hobby+ “ ”);
}
三 请求转发
void getRequestDispatcher(“b.jsp”).forward(request,response); 请求转发; 当前页面跳转到 b.jsp页面 后面的forward 永远不用变
例 request.getRequestDispatcher(“success.jsp”).forward(request, response);
当前页面跳转到目标页面 但网址不变 并且把别的页面传到当前页面的请求 转发给目标页面 让他能够调用
get ServerContext():获取项目的serveletContext对象
实例:注册
register.jsp ,show.jsp