前端jsp页面script引入url项目名使用${appName}
<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}的更多相关文章
- 12月6日 被引入的jsp 页面,引入 js 要注意结束符 要用 </script> 而不是 />
12月6日 被引入的jsp 页面,引入 js 要注意结束符 要用 </script> 而不是 />
- jstl-日期格式化-jsp页面需引入fmt标签
jsp页面需引入fmt标签: <taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"> ...
- JSP页面中引入另一个JSP页面
一个JSP页面中引入另一个JSP页面,相当于把另一个JSP页面的内容复制到对应位置: <%@include file="date.jsp" %> 一般页面的top和bo ...
- 后端model传入前端JSP页面中的值判断后再取值
所遇到的问题后端model传入前端JSP页面中的值通过foreach循环内要满足条件才能取值给Div中,我们知道jsp页面中可以直接用EL表达式取值,格式就是${"model中传来的数据&q ...
- Java项目在jsp页面中引入jquery框架的步骤
环境:在Java web项目中引入juqery框架 工具:MyEclipse8.5 [步骤如下] A:新建一个Java web项目TestJquery,在WebRoot目录下创建一个jquery文件 ...
- Eclipse添加jsp页面后引入java指令报错解决方法
新建jsp页面老提示: Multiple annotations found at this line: - The superclass "javax.servlet.http.HttpS ...
- jsp页面怎么引入js
人老了,容易忘记事情,再此记录 这里需要注意的是js文件夹要直接放在WebRoot或者WebContent文件夹下面,不要放在WEB-INF下面.因为TomCat对WEB-INF这个文件夹下面的资源是 ...
- 在jsp页面如何获得url参数
方法一:当一个url过来时,如:http://localhost:8080/pro/demo/hello.jsp?name=john,在hello.jsp页面,我们可以这样得到name的值: < ...
- 将Web项目访问的URL项目名设置为"/"
工具:Eclipse 步骤: 1.鼠标右键项目名--->properties--->Web Project Setting--->Context root. 将Context roo ...
随机推荐
- 清空messages方法
1.du -sh /var/log/messages 2.losf /var/log/messages 3.cat /dev/null > /var/log/messages 4.du -sh ...
- Java Naming and Directory Interface (JNDI) Java 命名和目录接口
https://www.oracle.com/technetwork/java/jndi/index.html Lesson: Overview of JNDI (The Java™ Tutorial ...
- # 释放内存 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:]
- JavaScript callback function 理解
看到segmentfault上的这个问题 JavaScript 回调函数怎么理解,觉得大家把异步和回调的概念混淆在一起了.做了回答: 我觉得大家有点把回调(callback)和异步(asynchron ...
- 自动化测试学习day4
主要学习内容:修改文件.集合.函数.模块 修改文件两种方法 修改文件方法一(缺点:代码繁琐,一次性将文件读出,文件过大可能会卡住) with open('geci', 'a+', encoding=' ...
- Python 面向对象 类 __str__
class dog(object): def __init__(self,name): self.name = name d = dog('mike') print(d) # <__main__ ...
- 在一台server上部署多个Tomcat
版权声明: https://blog.csdn.net/u011518709/article/details/27181665 在一台server上配置多个Tomcat的方法: 这几天因为在研究OGS ...
- Java基础方法
1:读取resource下面的文件 ClassPathResource cpr = new ClassPathResource("./MyBatisXmlFile"); File ...
- 常微分方程初值问题:单步方法 [MATLAB]
#先上代码后补笔记# #可以直接复制粘贴调用的MATLAB函数代码!# 1. 朗格-库塔(Runge-Kutta)方法族 目前只实现了四阶Runge-Kutta方法. function [ YMat ...
- SQL Server 一些使用小技巧
1.查询的时候把某一个字段的值拼接成字符串 以下是演示数据. 第一种方式:使用自定义变量 ) SET @Names='' -- 需要先赋值为空字符串,不然结果会是 null SELECT @Names ...