首页 > 其他分享 >1.关于jsp常用的方法

1.关于jsp常用的方法

时间:2024-03-07 21:15:29浏览次数:24  
标签:常用 String resp session cookie 关于 jsp name

setHeader(String name, String value) 设置响应头信息,用于向浏览器表达我要做什么,比如是要返回html文 件,还是下载文件。。。。。

resp.setStatus(int sc) 设置响应状态码,HTTP/1.1 200 OK

resp.setHeader("content-type", "text/html;charset=UTF-8"); 告诉浏览器要是用什么编码

resp.getWrite(); 字符输出流,用于输出汉字

resp.getOutputStream(); 字节输出流,用于输出二进制文件,图片,视频等等

resp.setCharacterEncoding(String charset) 告知服务器使用什么编码

resp.setContentType(String type)(重点)text/html;charset=UTF-8

<!--
resp.getServletContext().getInitParameter(String name) 获取xml文件中的数据
ServletContext context = this.getServletContext();创建一个Context对象
context.setAttribute("参数名",值);添加某个键值对,用于不同网页直接的数据交互
context.getAttribute("参数名");获取某个数据
context.getRequestDispatcher("转发路径").forward(req,resp);转发,只转发网页内容,不会更改url地址
-->

<!!!!重点!!!!>
resp.sendRedirect("https://www.baidu.com");重定向
获取数据的方法:
get请求:req.getParameter("name");
post请求 req.getParameter("name");
post方式提交的数据需要提前设置编码格式:
req.setCharacterEncoding ("UTF-8");
resp.setCharacterEncoding ("UTF-8");

<!!!过滤器and监听器!!!>实现Filter接口,实现HttpSessionListener监听器接口(此处为session)
chain.doFilter(request,response);//过滤器放行
<!!!!重点!!!!>
Session:
HttpSession session = req.getSession(); //获取session
session.setAttribute("姓名:","蒋文杰"); //设置session的键值对,session可以存入对象
session.getId(); //获取session的ID
session.isNew() //判断当前session是否为新创建的
String name = (String) session.getAttribute("姓名:"); //获取session的键值对
session.invalidate(); // 注销session
也可以在web.xml中设置session的生命周期
<session-config>
<session-timeout>1</session-timeout> // 一分钟后过期
</session-config>

 

 

 

CooKie:
Cookie cookie = new Cookie("name","蒋文杰"); //创建cookie对象
cookie.setMaxAge(3600*24*7); //设置cookie的存活时间,单位是秒
resp.addCookie(cookie); //把这个cookie返回给客户端
req.getCookies(); //获取客户端的cookie信息,返回数组
cookie.getName() //获取cookie名字
cookie.getVlaue() //获取cookie值

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

jsp指令和语法
//这两个的区别在于第一个会讲两个页面进行整合,最后合并成一个页面,而第二个不会
<%@include file=""%> //用于继承某一个jsp页面的模板
<jsp:include page="" flush="true"/> //继承jsp页面模板
<%@ page contentType="text/html;charset=UTF-8" language="java" %> //jsp程序的顶部
<%pageContext.forward("/index.jsp"); //页面转发
<jsp:forward page="/jsp2.jsp"> //jsp标签形势的页面转发
<jsp:param name="name1" value="jwj"/> //页面转发的同时传递参数
</jsp:forward>


存取东西的四个对象(取东西只需set改为get)
session.setAttribute("name1","1号"); //数据只在一次会话中有效,从打开浏览器到关闭浏览器
request.setAttribute("name2","2号"); //数据只会在一次请求中有效,请走转发会带着这个数据
pageContext.setAttribute("name3","3号"); //数据只在一个页面中有效
application.setAttribute("name4","4号"); //从打开服务器到关闭服务器

标签:常用,String,resp,session,cookie,关于,jsp,name
From: https://www.cnblogs.com/wenjie001/p/18059742

相关文章

  • 关于安卓开发远程连接mysql数据库2
    安卓开发远程连接数据库方式2:通过发送请求到web中间层实现对数据库的增删改查操作。第一步需要给安卓程序添加上网络权限,在安卓项目中的配置文件中加上代码<uses-permission android:name="android.permission.INTERNET"/>语句用于获得访问网络的权限第二步添加Retrofit+GSON......
  • 快捷方式在Windows操作系统中提供了一种方便快捷地访问程序或文件的方法,可以分别存在
    快捷方式在Windows操作系统中提供了一种方便快捷地访问程序或文件的方法,可以分别存在于桌面、开始菜单和任务栏等位置。下面是关于快捷方式在不同位置的技术原理:桌面快捷方式:桌面快捷方式实际上是一个.lnk文件,它包含了指向目标文件或程序的路径信息以及其他属性。创建桌面快捷......
  • C#-关于多线程下锁的使用,提高共享资源利用率的问题思考
    前一段时间阅读某公司项目的代码,发现类的单例模式无处不在,为了控制单例全局对象属性跨线程访问到处加锁,由于每个研发人员技术及业务水平参差不齐,锁的控制范围可能会扩大化,真正需要锁住的变量利用率降低。举例:全局变量intCount=0;定义锁对象objectCountLocker=newObject......
  • 1. 常用Dos命令
    命令提示符下执行命令:切换盘符直接输入盘符目录即可:例C:查看目录下所有的文件:dir切换目录:cd/d目录地址返回上一级目录:cd..清理屏幕:cls打开应用:cals计算器mspaint画图notepad记事本创建文件夹:md文件夹名称删除文件夹:rd文件夹名称创建文件:cd>......
  • 多线程系列(十五) -常用并发工具类详解
    一、摘要在前几篇文章中,我们讲到了线程、线程池、BlockingQueue等核心组件,其实JDK给开发者还提供了比synchronized更加高级的线程同步组件,比如CountDownLatch、CyclicBarrier、Semaphore、Exchanger等并发工具类。下面我们一起来了解一下这些常用的并发工具类!二、常用并发......
  • 我常用的几个快捷键
    windows常用快捷键快捷键作用Ctrl+C、V、X、S、Z、A复制、粘贴、剪切、保存、撤销、全选Ctrl+Shift+esc打开任务管理器alt+prtsc只对当前窗口进行截屏alt+table切换窗口alt+F4关闭窗口win+R打开运行窗口win+E打开我的电脑win+D暂时清空桌......
  • JavaSE的第九步 —— 循环中常用到的关键字break和continue
    一、break语句在嵌套for循环中用到break的时候代表着,跳出整个循环 例如:publicstaticvoidmain(String[]args){ inti=0; //这样看起来是判断条件一直为true,那么就会死循环下去 while(true){ System.out.println("i="+i); i++; //但是这里添加了break语句,......
  • 关于uniapp调用支付宝登录问题
    uniapp的uni.login的provider不支持支付宝但是呢,我看插件市场都要钱这个还需要钱吗你直接硬写呗,支付宝比如登录官方时这么写的ok 我们在uniapp上也这么写就行了button调用一键登录uniapp不会报错,然后我们发行打包到支付宝的开发工具里经测试可以正常使用 返回 ......
  • 关于lis,lcs
    &最长上升子序列3415276g[i]//表示最长上升长度为i时,最小的数值例如:186107g[1]=1g[2]=8->6g[3]=10->7for(inti=1;i<=n;i++){a[i]和前面所有值比较}&树状数组求顺序对,-_-!341527612345670从1-2没有被标记的......
  • elasticsearch常用操作
    POST/index{i}/_close//对索引进行关闭操作GET/_cluster/settings?include_defaults=true//查看集群的默认配置信息GET/_cluster/health//轮询等待集群恢复green状态查看集群的健康状态GET/_cat/indices//查看所有的索引信息GET/索引名称/_stats//查看单个索引的信......