<script src="/${appName}/commons/jslib/CommonValue.js"></script>

新建一个com.autumn.servlet.Dispatcher.java文件

package com.autumn.servlet;

import javax.servlet.ServletConfig;
import javax.servlet.ServletException; /**
* Created by Administrator on 2018/6/6.
*/
public class Dispatcher extends org.springframework.web.servlet.DispatcherServlet {
private static final long serialVersionUID = -7677752525845571027L;
@Override
public void init(ServletConfig config) throws ServletException {
super.init(config);
String appName = config.getInitParameter("appName").trim(); //web.xml中初始化参数
config.getServletContext().setAttribute("appName", appName); //将这个appName放入servletContext中
}
}
    <!-- springmvc的前端控制器 -->
<servlet>
<servlet-name>bookkeep-web</servlet-name>
<servlet-class>com.autumn.servlet.Dispatcher</servlet-class> <!--原来为org.springframework.web.servlet.DispatcherServlet-->
<!-- contextConfigLocation不是必须的, 如果不配置contextConfigLocation, springmvc的配置文件默认在:WEB-INF/servlet的name+"-servlet.xml" -->
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring/Springmvc.xml</param-value>
</init-param>
<init-param>
<param-name>appName</param-name>
<param-value>Bookkeeping</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>bookkeep-web</servlet-name>
<!-- 拦截所有请求jsp除外 -->
<url-pattern>/</url-pattern>
</servlet-mapping>

Springmvc.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.2.xsd
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.2.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.2.xsd">
<!-- 扫描controller驱动 -->
<context:component-scan base-package="com.autumn.controller" />
<!-- 注解驱动 -->
<mvc:annotation-driven /> <!--controller返回的视图解析器,例如返回login,实际解析为http://ip:port/projectName/WEB-INF/jsp/login.jsp-->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/jsp/" />
<property name="suffix" value=".jsp" />
</bean>
</beans>

Controler测试

@Controller
@RequestMapping("/loginController")
public class LoginController {
@Autowired
public LoginService loginService; @RequestMapping("/login/{id}")
@ResponseBody //将返回的对象解析成json字符串
public Account login(@PathVariable String id){
Account account = loginService.login(id);
return account; //返回json字符串
} @RequestMapping("/loginpage/{id}")
public String loginpage(@PathVariable String id){
Account account = loginService.login(id);
if (account==null) {
return "login"; //返回springmvc中配置的/WEB-INF/jsp/login.jsp
}else {
return "index"; //返回springmvc中配置的/WEB-INF/jsp/index.jsp
}
}
}

其他方法

不用统一管理的${appName}可以用<base href="">标签

<base> 标签为页面上的所有链接规定默认地址或默认目标。通常情况下,浏览器会从当前文档的 URL 中提取相应的元素来填写相对 URL 中的空白。

jsp中先声明schema://server:port/contextpath/

<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

然后在页面上声明base标签,指定base的url

<base href="<%=basePath%>">

这样的话页面中所有的图片或这里链接都会在schema://server:port/contextpath/下面找

前端jsp页面script引入url项目名使用${appName}的更多相关文章

  1. 12月6日 被引入的jsp 页面,引入 js 要注意结束符 要用 </script> 而不是 />

    12月6日  被引入的jsp 页面,引入 js 要注意结束符 要用  </script> 而不是 />

  2. jstl-日期格式化-jsp页面需引入fmt标签

    jsp页面需引入fmt标签: <taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"> ...

  3. JSP页面中引入另一个JSP页面

    一个JSP页面中引入另一个JSP页面,相当于把另一个JSP页面的内容复制到对应位置: <%@include file="date.jsp" %> 一般页面的top和bo ...

  4. 后端model传入前端JSP页面中的值判断后再取值

    所遇到的问题后端model传入前端JSP页面中的值通过foreach循环内要满足条件才能取值给Div中,我们知道jsp页面中可以直接用EL表达式取值,格式就是${"model中传来的数据&q ...

  5. Java项目在jsp页面中引入jquery框架的步骤

    环境:在Java  web项目中引入juqery框架 工具:MyEclipse8.5 [步骤如下] A:新建一个Java web项目TestJquery,在WebRoot目录下创建一个jquery文件 ...

  6. Eclipse添加jsp页面后引入java指令报错解决方法

    新建jsp页面老提示: Multiple annotations found at this line: - The superclass "javax.servlet.http.HttpS ...

  7. jsp页面怎么引入js

    人老了,容易忘记事情,再此记录 这里需要注意的是js文件夹要直接放在WebRoot或者WebContent文件夹下面,不要放在WEB-INF下面.因为TomCat对WEB-INF这个文件夹下面的资源是 ...

  8. 在jsp页面如何获得url参数

    方法一:当一个url过来时,如:http://localhost:8080/pro/demo/hello.jsp?name=john,在hello.jsp页面,我们可以这样得到name的值: < ...

  9. 将Web项目访问的URL项目名设置为"/"

    工具:Eclipse 步骤: 1.鼠标右键项目名--->properties--->Web Project Setting--->Context root. 将Context roo ...

随机推荐

  1. 清空messages方法

    1.du -sh /var/log/messages 2.losf /var/log/messages 3.cat /dev/null > /var/log/messages 4.du -sh ...

  2. Java Naming and Directory Interface (JNDI) Java 命名和目录接口

    https://www.oracle.com/technetwork/java/jndi/index.html Lesson: Overview of JNDI (The Java™ Tutorial ...

  3. # 释放内存 filter_res_q_l = filter_res_q_l[-2048:] filter_res_a_l = filter_res_a_l[-2048:]

    # 释放内存filter_res_q_l = filter_res_q_l[-2048:]filter_res_a_l = filter_res_a_l[-2048:]

  4. JavaScript callback function 理解

    看到segmentfault上的这个问题 JavaScript 回调函数怎么理解,觉得大家把异步和回调的概念混淆在一起了.做了回答: 我觉得大家有点把回调(callback)和异步(asynchron ...

  5. 自动化测试学习day4

    主要学习内容:修改文件.集合.函数.模块 修改文件两种方法 修改文件方法一(缺点:代码繁琐,一次性将文件读出,文件过大可能会卡住) with open('geci', 'a+', encoding=' ...

  6. Python 面向对象 类 __str__

    class dog(object): def __init__(self,name): self.name = name d = dog('mike') print(d) # <__main__ ...

  7. 在一台server上部署多个Tomcat

    版权声明: https://blog.csdn.net/u011518709/article/details/27181665 在一台server上配置多个Tomcat的方法: 这几天因为在研究OGS ...

  8. Java基础方法

    1:读取resource下面的文件 ClassPathResource cpr = new ClassPathResource("./MyBatisXmlFile"); File ...

  9. 常微分方程初值问题:单步方法 [MATLAB]

    #先上代码后补笔记# #可以直接复制粘贴调用的MATLAB函数代码!# 1. 朗格-库塔(Runge-Kutta)方法族 目前只实现了四阶Runge-Kutta方法. function [ YMat ...

  10. SQL Server 一些使用小技巧

    1.查询的时候把某一个字段的值拼接成字符串 以下是演示数据. 第一种方式:使用自定义变量 ) SET @Names='' -- 需要先赋值为空字符串,不然结果会是 null SELECT @Names ...