java里面怎么读取web.xml里面的context-param值

zhaolh_78 2014-02-28 09:15:21
用MyEclipse创建了一个web项目,在web.xml的context-param节点定义数据库的连接信息以及账号密码等,应该怎么读取context-param的值,要引入哪些包,使用getServletContext().getInitParameter,总是提示没有定义方法
...全文
10813 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
言月秋 2016-11-03
  • 打赏
  • 举报
回复
public class xxxx extends HttpServlet(HttpServletRequest request, HttpServletResponse response){ }
zouyuanping1 2014-11-18
  • 打赏
  • 举报
回复
因为你没有继承HttpServlet
moxueling 2014-05-29
  • 打赏
  • 举报
回复
getServletContext().getInitParameter 拿的下面这个路径里的参数 <servlet> <init-param>....</init-param> <servlet>
steforward 2014-03-01
  • 打赏
  • 举报
回复
你得先把你的配置文件信息贴上来,别人才能帮你分析。 数据库的配置信息一般不会写到web.xml配置文件中,而是写在Properties属性文件内。 导包必须要有javax.servlet.ServletContext; 全局初始化参数配置在<wep-app></web-app>内,的格式如下: <wep-app> <context-param> <param-name>参数名</param-name> <param-value>参数值</param-value> </context-param> (其他配置) </web-app> 访问格式:
ServletContext sctx = getServletContext();//创建ServletContext对象
String 参数值 = sctx.getInitParameter(String 参数名);
//访问全局初始化参数
zhaolh_78 2014-03-01
  • 打赏
  • 举报
回复
DBManager是一个class类,作用是执行sql语句,那么不用Servlet,在class类里面怎么获取context-param,刚刚开始学java,小白问题,请见谅
steforward 2014-03-01
  • 打赏
  • 举报
回复
还是看看Servlet怎么写吧,连格式都不对
zhaolh_78 2014-03-01
  • 打赏
  • 举报
回复
刚开始学java,以前做.net的时候,一般都是把数据库连接信息放到web.config文件里面,java里面不是放到web.xml里面吗。
配置信息如下:
<context-param>
<param-name>DRIVER_CLASS</param-name>
<param-value>com.microsoft.sqlserver.jdbc.SQLServerDriver</param-value>
</context-param>
<context-param>
<param-name>DATABASE_URL</param-name>
<param-value>jdbc:sqlserver://localhost:1433;DatabaseName=webSite</param-value>
</context-param>
具体的报错信息见图片

长笛党希望 2014-03-01
  • 打赏
  • 举报
回复
引用 7 楼 zhaolh_78 的回复:
[quote=引用 6 楼 NNTT2010 的回复:] 一般用户配置都封装在properties文件中, 假如楼主真要存放在web.xml中,那么也可以读取,但是一定要在servlet中 如 public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String 参数值 = this.getServletContext().getInitParameter("参数名"); }
用properties文件可以了,以前做.net都是放到Web.config里面,我以为java就是放到web.xml里面呢[/quote] 好的,楼主加油。
zhaolh_78 2014-03-01
  • 打赏
  • 举报
回复
引用 6 楼 NNTT2010 的回复:
一般用户配置都封装在properties文件中, 假如楼主真要存放在web.xml中,那么也可以读取,但是一定要在servlet中 如 public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String 参数值 = this.getServletContext().getInitParameter("参数名"); }
用properties文件可以了,以前做.net都是放到Web.config里面,我以为java就是放到web.xml里面呢
长笛党希望 2014-03-01
  • 打赏
  • 举报
回复
一般用户配置都封装在properties文件中, 假如楼主真要存放在web.xml中,那么也可以读取,但是一定要在servlet中 如 public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String 参数值 = this.getServletContext().getInitParameter("参数名"); }
steforward 2014-03-01
  • 打赏
  • 举报
回复
Servlet必须要继承HttpServlet抽象类,而HttpServlet继承了GenericServlet抽象类, getServletContext()方法是GenericServlet抽象类内部定义的方法,所有才会不需要对象就可直接调用该方法获取ServletContext对象

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧