jsp的appilication.getInitParameter()方法无法获取到值的问题
背景介绍
今天研究jsp的内置对象时发现,使用appilication.getInitParameter()从web.xml文件中获取值的时候,死活获取不到,折腾了将近一个小时,后来出现问题的原因却让我感到智商遭到了侮辱。。。。
web.xml的配置信息
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
<!--配置第一个参数:数据驱动名称-->
<context-param>
<param-name>driver</param-name>
<param-value>com.mysql.jdbc.Driver</param-value>
</context-param>
<!--数据库的url-->
<context-param>
<param-name>url</param-name>
<param-value>jdbc:mysql://localhost:3306/keyan</param-value>
</context-param>
<!--配置第二个参数:用户名-->
<context-param>
<param-name>usr</param-name>
<param-value>root</param-value>
</context-param>
<!--配置第三个参数:密码-->
<context-param>
<param-name>passwd</param-name>
<param-value>root</param-value>
</context-param>
</web-app>
起初我以为是配置信息出现了错误,但是怎么看也不像是出了错误。
jsp文件信息
<%
String driver = application.getInitParameter("driver");
String url = application.getInitParameter("url");
String usr = application.getInitParameter("usr");
String passwd = application.getInitParameter("passwd");
/*注册驱动*/
//driver = "com.mysql.jdbc.Driver";
Class.forName(driver);
//开始链接
Connection connection = DriverManager.getConnection(url,usr,passwd);
//创建查询语句
Statement statement = connection.createStatement();
//sql语句
String sql = "select * from e_person";
//开始执行
ResultSet set = statement.executeQuery(sql);
%>
<table border="1" bgcolor="blue" width="300px">
<%
while(set.next()){
%>
<tr>
<td><%set.getString(1);%></td>
<td><%set.getString(2);%></td>
</tr>
<%
}
%>
</table>
再看这里,也是没什么问题的。
最终解决的办法
首先,你要确定你上面两个文件都没有写错,其次,如果你用了JRebel,请重新启动tomcat,而不是使用热部署,我就是被这玩意坑的,太惨了。。。。
问题的原因应该是这样的,虽然JRebel可以在你更新了后台或者前端的文件信息时,能热部署到服务器上,但是貌似这货并没有将web.xml文件重新加载一遍,所以导致了这个问题。
当然了,如果你重启服务器还是出现这个问题,那么就是你的文件写错了。
Good luck for you!
结语
感谢您的阅读,欢迎指正博客中存在的问题,也可以跟我联系,一起进步,一起交流!
微信公众号:进击的程序狗
邮箱:roobtyan@outlook.com
个人博客:https://roobtyan.cn
jsp的appilication.getInitParameter()方法无法获取到值的问题的更多相关文章
- JSF页面中使用js函数回调后台bean方法并获取返回值的方法
由于primefaces在国内使用的并不是太多,因此,国内对jsf做系统.详细的介绍的资料很少,即使有一些资料,也仅仅是对国外资料的简单翻译或者是仅仅讲表面现象(皮毛而已),它们的语句甚至还是错误的, ...
- C#.NET为List加入扩展方法:获取唯一值
public static class ListTools { /// <summary> /// 获取唯一值列表 /// </summary> /// <param n ...
- C#枚举扩展方法,获取枚举值的描述值以及获取一个枚举类下面所有的元素
/// <summary> /// 枚举扩展方法 /// </summary> public static class EnumExtension { private stat ...
- java的System.getProperty()方法能够获取的值
java.version Java 执行时环境版本号 java.vendor Java 执行时环境供应商 java.vendor.url Java 供应商的 URL java.home Java 安装 ...
- jsp页面执行java语法,获取的值在页面调用
首先在页面头引用用到类的包路径 写需要执行的java语法 页面转换引用 <!-- 引用包路径 --> <%@ page language="java" impor ...
- java的System.getProperty()方法可以获取的值
java.version Java 运行时环境版本 java.vendor Java 运行时环境供应商 java.vendor.url Java 供应商的 URL java.home Java 安装目 ...
- 在JSP中使用el函数标签获取默认值(男女性别选项)
http://blog.csdn.net/b10060224/article/details/45771025
- asp.net 调用post方法并获取返回值
/// <summary> /// http协议 post数据 接受返回结果 /// </summary> /// <param ...
- System.getProperty()方法可以获取的值
/** 获得当前类的完整路径.最后一句 */ package org.outman.dms.server; import java.net.MalformedURLException; import ...
随机推荐
- B - Stacks of Flapjacks UVA - 120
BackgroundStacks and Queues are often considered the bread and butter of data structures and find us ...
- c#使用Socket实现局域网内通信
服务器端代码: using System; using System.Collections.Generic; using System.ComponentModel; using System.Da ...
- IOCTL_DISK_GET_DRIVE_GEOMETRY
IOCTL_DISK_GET_DRIVE_GEOMETRY: 获取磁盘参数 c++实现: #include <Windows.h> #include <winioctl.h> ...
- reduce()、filter()、map()、some()、every()、...展开属性
reduce().filter().map().some().every()....展开属性 这些概念属于es5.es6中的语法,跟react+redux并没有什么联系,我们直接在https:// ...
- Java中的static关键字和new关键字作用介绍
一.static关键字的作用 1.可以用于修改类的成员变量.代码块和类 通过static可以将类的成员声明为静态成员,静态的成员归属于整个类,而不是属于某个对象.无论通过类还是对象访问静态成员,操作的 ...
- 吴裕雄--天生自然C++语言学习笔记:C++ 命名空间
假设这样一种情况,当一个班上有两个名叫 Zara 的学生时,为了明确区分它们,在使用名字之外,不得不使用一些额外的信息,比如他们的家庭住址,或者他们父母的名字等等. 同样的情况也出现在 C++ 应用程 ...
- hdu 3308 线段树,单点更新 求最长连续上升序列长度
LCIS Time Limit: 6000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submis ...
- springboot+thymeleaf项目中使用th:replace访问templates子目录下的模板,会报错找不到模板路径
解决方法: 先将模板路径放置templates目录下,发现可以访问,说明th:replace是可以用的. 那可能是出现在路径问题上面. 于是我开始调错,改路径. 后来在网上查找资料.说了很多种方法. ...
- React全局浮窗、对话框
下面代码是组件源码: import React, {Component} from 'react' import {createPortal} from 'react-dom' import styl ...
- RPC——看这一篇就…显然不够
引言 RPC blablabla…… RPC 知识点 扩展 有给老婆解释的如:https://www.jianshu.com/p/2accc2840a1b