jsp获取当前页面url,java获取jsp页面的值

本文目录一览:

Spring mvc怎么获取当前应用的url地址

action类:

public class IndexController extends AbstractController {

@Override

protected ModelAndView handleRequestInternal(HttpServletRequest request,

HttpServletResponse response) throws Exception {

// TODO Auto-generated method stub

MapString ,Object model=new HashMapString,Object();

String contextpath;

contextpath = request.getScheme() +”://” + request.getServerName() + “:” +request.getServerPort() +request.getContextPath();

model.put(“contextpath”,contextpath);

return new ModelAndView(“index”,model);

}

如果调用IndexController 的http url是,以上request对象的各方法得到的结果分别是:

request.getScheme() :http

request.getServerName() :127.0.0.1

request.getServerPort() :8080

request.getContextPath():/test

分别request还有一个有用的方法,request.getServletPath,获取的结果是:index.do,一般用不到。

jsp文件

%@ page language=”java” contentType=”text/html; charset=UTF-8″ pageEncoding=”UTF-8″%

!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “”

html xmlns=””

head

meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″

title xxxxxxxxx /title

script src=”${contextpath}/ui/boot.js” type=”text/javascript”/script

script src=”${contextpath}/js/index.js” type=”text/javascript”/script

link href=”${contextpath}/css/index.css” rel=”stylesheet” type=”text/css” /

link href=”${contextpath}/css/icons.css” rel=”stylesheet” type=”text/css” /

/head

body

input type=”hidden” class=”mini-hidden” required=”false” vtype=”” value=”${contextpath}” id=”context” emptyText=””

div id=”layout1″ class=”mini-layout” style=”width: 100%; height: 100%”

div class=”header” region=”north” height=”100″ showSplit=”false” showHeader=”false”

div id=”header”

div class=”headerNav”a class=”logo” href=”javascript:void(0);” onclick=”javascript:selectMainTab();”/a

div id=”top_right”/div

/div

/div

div id=”navMenu”span id=”nowDate” style=”text-align:

left”/span span style=”text-align: left”欢迎您:a

class=”mini-button” grid=”datagrid1″

realhref=”${contextpath}/authuser/modifyPass/${CURRENT_USER.authUser.ID

}” onclick=”javascript:add(this,540,440);”

plain=”true”${CURRENT_USER.authUser.NAME}/a【${CURRENT_USER.curOrgan.ORGAN_NAME}】/span

spana href=”#” onclick=”logout(this);”

realhref=”${contextpath}/login/out”退出/ainput

type=”hidden”

name=”backUrl” class=”mini-hidden”

value=”${contextpath}/login/out”

id=”backUrl”/spanspana href=”#”

onclick=”javascript:closeSystem();”关闭/a

/span/div

/div

div title=”center” region=”center” style=”border: 0;” bodyStyle=”overflow:hidden;”!–Splitter–

div class=”mini-splitter” style=”width: 100%; height: 100%;” borderStyle=”border:0;”

div size=”210″ maxSize=”250″ minSize=”100″ showCollapseButton=”true” style=”border: 0;”!–OutlookTree–

div id=”leftTree” class=”mini-outlooktree”

url=”${contextpath}/authmenu/jsonUserMenu” onnodeclick=”onNodeSelect”

textField=”text” idField=”id” parentField=”pid”/div

/div

div showCollapseButton=”false” style=”border: 0;”!–Tabs–

div id=”lr_systembox” style=”margin-right: 100px;margin-top: 0px;”

/div

div id=”mainTabs” class=”mini-tabs bg-toolbar” activeIndex=”0″ style=”width: 100%; height: 100%;”

div id=”maintreeid” title=”首页” name=”homePage” iconCls=”a38″ url=”${contextpath}/

WEB-INF/jsp/main.jsp”/div

/div

/div

/div

/div

/div

/body

/html

jsp页面中的${contextpath}显示的值为

在jsp中如何取得当前页面完整的URL(带参数)?

JSP页面

% String url = request.getScheme()+”://”+ request.getServerName()+request.getRequestURI()+”?”+request.getQueryString(); %

用JS可以的

window.location.href

如何用js获取当前打开的页面的路径

lz

(1)window.location.href : 整个URl字符串(在浏览器中就是完整的地址栏)返回值: ;name=java#imhere(2)window.location.protocol :URL 的协议部分返回值:http:(3)window.location.host : URL 的主机部分返回值: : URL 的端口部分(如果采用默认的80端口(update:即使添加了:80),那么返回值并不是默认的80而是空字符)返回值:””(5)window.location.pathname : URL 的路径部分(就是文件地址)返回值:/order/index.html(6)window.location.search : 查询(参数)部分 (除了给动态语言赋值以外,我们同样可以给静态页面,并使用javascript来获得相信应的参数值)返回值:orderid=1name=java(7)window.location.hash : 锚点返回值:#imhere(8)document.URL返回值: ;name=java#imhere//获取Url传过来的值

function Request(name)

{

new RegExp(“(^|)”+name+”=([^]*)”).exec(window.location.search.substr(1));

return RegExp.$2

}

如何得到一个jsp页面所在的项目的路径

在jsp和class文件中调用的相对路径不同。 在jsp里,根目录是WebRoot 在class文件中,根目录是WebRoot/WEB-INF/classes 当然你也可以用System.getProperty(“user.dir”)获取你工程的绝对路径。

另:在Jsp,Servlet,Java中详细获得路径的方法。

1.jsp中取得路径:

以工程名为TEST为例:

(1)得到包含工程名的当前页面全路径:request.getRequestURI()

结果:/TEST/test.jsp

(2)得到工程名:request.getContextPath()

结果:/TEST

(3)得到当前页面所在目录下全名称:request.getServletPath()

结果:如果页面在jsp目录下 /TEST/jsp/test.jsp

(4)得到页面所在服务器的全路径:application.getRealPath(“页面.jsp”)

结果:D:\resin\webapps\TEST\test.jsp

(5)得到页面所在服务器的绝对路径:absPath=new java.io.File(application.getRealPath(request.getRequestURI())).getParent();

结果:D:\resin\webapps\TEST

2.在类中取得路径:

(1)类的绝对路径:Class.class.getClass().getResource(“/”).getPath()

结果:/D:/TEST/WebRoot/WEB-INF/classes/pack/

(2)得到工程的路径:System.getProperty(“user.dir”)

结果:D:\TEST

3.在Servlet中取得路径:

(1)得到工程目录:request.getSession().getServletContext().getRealPath(“”) 参数可具体到包名。

结果:E:\Tomcat\webapps\TEST

(2)得到IE地址栏地址:request.getRequestURL()

结果:

(3)得到相对地址:request.getRequestURI()

结果:/TEST/test

JSP获取页面的元素的值有几种方式

javascript中获取jsp界面元素方法

1.getElementsByName(“name”)

可以获取jsp界面中元素名字为”name”的所有元素,返回的是一个object[ ] 数组,数组中每个元素包含一个从jsp界面中获得的元素。

2.getElementById(id)

根据id值来获取jsp界面中惟一的对象。

servlet中获取jsp界面元素方法

3.getParameter(“name”) 返回类型为String

用于获取jsp界面中一个名字为”name”的对象的value值。

4.getParameterValues(“name”)返回类型为String[]

用于获取jsp界面中多个名字为”name”的对象的value值。

web项目中,request的方法详解

以点到面,知道了web中getContextPath()这种获取路径的方式,显然其他的方式的是可以以此类推的。常说,工作学习找共同点嘛。       上一段我们也提高getContextPath()的含义,是jsp中获取路径的一种方式,返回当前页面所在的应用的名字。知其然知其所以然,知道它大体上的含义,看看在项目中是如何使用的

String path = request.getContextPath(); 

 String basePath = request.getScheme()+”://”+request.getServerName()+”:”+request.getServerPort()+path+”/”;”  

在程序中我们一般这样使用。说到了这里,我们可以看看request常用的方法:

       request.getSchema(),返回的是当前连接使用的协议,一般应用返回的是http、SSL返回的是https;

       request.getServerName(),返回当前页面所在的服务器的名字;

       request.getServerPort(),返回当前页面所在的服务器使用的端口,80;

       request.getContextPath(),返回当前页面所在的应用的名字。

       getContextPath()是jsp中获取路径的一种方式,那么获取到结果是什么呢?jsp其他获取路径的方式是怎样的呢?表示好奇,请听分解:

       以访问的jsp为:,工程名为/dmsd-itoo-exam-log-web为例:

        request.getContextPath(),得到工程名:/dmsd-itoo-exam-log-web;

        request.getServletPath(),返回当前页面所在目录下全名称:/course/index.jsp;

        request.getRequestURL(),返回IE地址栏地址:;

        request.getRequestURI() ,返回包含工程名的当前页面全路径:/dmsd-itoo-exam-log-web/course/index.jsp。

       对jsp获取当前应用的路径方法和request常用方法有了基本的了解,下面后台通过request.getScheme()获取当前页面使用协议遇到的问题:request.getScheme()获取到的确实http而不是https,与request.getRequestURL()拿到的一样也是http。

       这是为什么呢?

       原来,nginx+tomcat部署web服务,tomcat接收到的请求是来自nginx的http请求。我想这也是上一博文中说到项目用https启动请求不到页面的原因吧。

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/187525.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-11-28 06:23
下一篇 2024-11-28 06:23

相关推荐

  • Java JsonPath 效率优化指南

    本篇文章将深入探讨Java JsonPath的效率问题,并提供一些优化方案。 一、JsonPath 简介 JsonPath是一个可用于从JSON数据中获取信息的库。它提供了一种DS…

    编程 2025-04-29
  • java client.getacsresponse 编译报错解决方法

    java client.getacsresponse 编译报错是Java编程过程中常见的错误,常见的原因是代码的语法错误、类库依赖问题和编译环境的配置问题。下面将从多个方面进行分析…

    编程 2025-04-29
  • Java腾讯云音视频对接

    本文旨在从多个方面详细阐述Java腾讯云音视频对接,提供完整的代码示例。 一、腾讯云音视频介绍 腾讯云音视频服务(Cloud Tencent Real-Time Communica…

    编程 2025-04-29
  • Java Bean加载过程

    Java Bean加载过程涉及到类加载器、反射机制和Java虚拟机的执行过程。在本文中,将从这三个方面详细阐述Java Bean加载的过程。 一、类加载器 类加载器是Java虚拟机…

    编程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介绍

    本文将详细介绍Java Milvus SearchParam withoutFields的相关知识和用法。 一、什么是Java Milvus SearchParam without…

    编程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java语言中的一个版本,于2014年3月18日发布。本文将从多个方面对Java 8中某一周的周一进行详细的阐述。 一、数组处理 Java 8新特性之一是Stream…

    编程 2025-04-29
  • Java判断字符串是否存在多个

    本文将从以下几个方面详细阐述如何使用Java判断一个字符串中是否存在多个指定字符: 一、字符串遍历 字符串是Java编程中非常重要的一种数据类型。要判断字符串中是否存在多个指定字符…

    编程 2025-04-29
  • VSCode为什么无法运行Java

    解答:VSCode无法运行Java是因为默认情况下,VSCode并没有集成Java运行环境,需要手动添加Java运行环境或安装相关插件才能实现Java代码的编写、调试和运行。 一、…

    编程 2025-04-29
  • Java任务下发回滚系统的设计与实现

    本文将介绍一个Java任务下发回滚系统的设计与实现。该系统可以用于执行复杂的任务,包括可回滚的任务,及时恢复任务失败前的状态。系统使用Java语言进行开发,可以支持多种类型的任务。…

    编程 2025-04-29
  • Java 8 Group By 会影响排序吗?

    是的,Java 8中的Group By会对排序产生影响。本文将从多个方面探讨Group By对排序的影响。 一、Group By的概述 Group By是SQL中的一种常见操作,它…

    编程 2025-04-29

发表回复

登录后才能评论