Servlet可以配置一些初始化参数,我们可以在Servlet中获得这些初始化的参数。
下面用一个例子:
编写一个使用JDBC连接数据库的Servlet程序,为了保证这个Servlet的通用性,我们可以把它的驱动程序、连接数据库的URL、用户名和密码配置到web.xml文件中。当Servlet执行操作时,通过ServletConfig获得初始化的参数以连接数据库
代码如下:
import java.io.*;
import javax.sql.*;
import javax.servlet.*;
import java.servlet.http.*;
import java.sql.*;
import com.microsoft.jdbc.sqlserver.SQLServerDriver;
public class JDBCServler extends HttpServlet{
//连接数据库的属性
String driver;
String url;
String password;
String user;
//处理get请求
public void doGet(HttpServletRequest request,HttpServletResponse response) thorws IOException,ServletException{
response.setContextType("text/html;charset=gb2312");
PrintWiter out=response.getWriter();
try{
Connection con=getConnection();
Statement stmt=con.createStatement();
ResultSet rst=stmt.executeQuery("select * from user_info");
while(rst.next()){
out.println(rst.getString("useid"));
out.println("<br>");
}
rst.close();
stmt.close();
con.close();
}catch(SQLException e){
e.printStackTrace();
}
}
//处理Post请求
public void doPost(HttpServletRequest request,HttpServletResponse response)throws IOException,ServletException
{
doGet(request,response);
}
//获得初始化参数
public void init()throws ServletException{
driver=getInitParameter("DRIVER");
password=getInitParameter("PASSWORD");
url=getInitParameter("URL);
user=getInitParameter("USER");
}
//帮助方法,获得到数据库的连接
private Connection getConnection(){
Connection con=null;
try{
Class.forName(driver);
con=DriverManager.getConnection(url,userm,password);
}
catch(Exception e){
e.printStackTrace();
}
return con;
}
}
在上面的Java代码中主要getInitParameter(String paramterName)这个方法。这个方法实现获得连接数据库的参数。
看看Servlet的配置吧
<servlet>
<servlet-name>JDBCServlet</servlet-name>
<servlet-class>com.test.JDBCServlet</servlet-class>
<init-param>
<param-name>DRIVER</param-name>
<param-value>com.microsoft.jdbc.sqlserver.SQLServer</param-value>
</init-param>
<init-param>
<param-name>URL</param-name>
<param-value>jdbc:microsoft.sqlserver://127.0.0.1:1433;DatabaseName=testjsp</param-value>
</init-param>
<init-param>
<param-name>USER</param-name>
<param-value>root</param-value>
</init-param>
<init-param>
<param-name>PASSWORD</param-name>
<param-value>123456</param-value>
</init-param>
<servlet>
.....
<servlet-mapping>
<servlet-name>JDBCServlet</servlet-name>
<url-pattern>/init_servlet</url-pattern>
</servlet-mapping>
分享到:
相关推荐
14. 可以获得Servlet初始化参数的是C. `ServletConfig`。`ServletConfig`对象包含了Servlet的初始化参数。 15. 在J2EE中,Servlet的生命周期由Servlet容器管理,包括Servlet的加载、初始化、服务和销毁等阶段。 ...
2. **配置log4j文件名参数**:在web.xml中,为Servlet配置初始化参数,指明`log4j`配置文件的名称。 3. **在Servlet中调用初始化方法**:在Servlet的`init()`方法中,获取Web应用的根目录,结合配置的文件名,构造...
2. `ServletConfig`接口:每个Servlet实例在初始化时都会得到一个`ServletConfig`对象,其中包含了Servlet的配置信息,如Servlet的初始化参数。 3. `HttpServletRequest`接口:这个接口提供了访问HTTP请求数据的...
4. **ServletConfig接口**:每个Servlet实例在初始化时都会获得一个ServletConfig对象,它包含了Servlet的配置信息,如Servlet名称、初始化参数等。 5. **HttpServletRequest接口**:表示来自客户端的HTTP请求,...
+ ServletConfig :定义了在 Servlet 初始化的过程中由 Servlet 容器传递给 Servlet 的配置信息对象。 + ServletContext :定义 Servlet 使用的方法以获取其容器的信息 + ServletRequest :定义一个对象封装客户...
缺省的 init() 方法设置了 Servlet 的初始化参数,并用它的 ServletConfig 对象参数来启动配置, 因此所有覆盖 init() 方法的 Servlet 应调用 super.init() 以确保仍然执行这些任务。在调用 service() 方法之前,应...
4. **ServletConfig接口**:每个Servlet在初始化时都会得到一个ServletConfig对象,它包含了Servlet的配置信息,如初始化参数。 5. **ServletContext接口**:ServletContext是整个Web应用程序的共享区域,它允许...
2. **ServletConfig接口**:`javax.servlet.ServletConfig`接口提供了初始化Servlet所需的信息,如Servlet的初始化参数,以及Servlet与Web应用之间的关联信息。 3. **GenericServlet类**:`javax.servlet....
它提供了获取Servlet初始化参数、Servlet容器的名称以及Servlet的别名等方法。 5. **ServletContext接口**:代表整个Web应用程序的上下文环境,通过ServletConfig可以获得。它可以获取Web应用的全局信息,如Web应用...
- **`ServletConfig`**:用于获取Servlet的初始化参数以及配置信息,每个Servlet都有一个对应的`ServletConfig`实例。 - **方法**:`getInitParameter(String name)`用于获取指定名称的初始化参数值;`...
- `getServletConfig()`: 返回当前 Servlet 的 `ServletConfig` 对象,可以用来获取 Servlet 的初始化参数。 #### 二、ServletConfig 对象 - **ServletConfig** 对象包含了 Servlet 在 `web.xml` 配置文件中的...
在Servlet的生命周期中,`init()`方法在Servlet实例化后首次被调用,用于初始化Servlet;`service()`方法处理客户端请求;而`destroy()`方法在Servlet销毁前执行,用于释放资源。源码中,我们可以看到这些方法的具体...
Servlet 3.0增强了Servlet容器的初始化参数功能,允许开发者更灵活地配置Servlet容器的行为。例如,可以通过`web.xml`文件或注解来设置初始化参数,这些参数可以在Servlet的生命周期中被访问和使用。 #### 4. **...
在Web应用中,通过web.xml文件配置Servlet,包括Servlet的映射、初始化参数、会话配置等。在Mac上,确保Eclipse项目的WEB-INF目录下有此文件,并正确配置Servlet。 5. **在Mac上的Eclipse中使用**: - **导入jar...
2. **Servlet的配置**:在`web.xml`文件中,我们可以定义Servlet的映射路径,以及Servlet的初始化参数等。 3. **Servlet的继承**:Servlet通常会继承`javax.servlet.http.HttpServlet`类,并重写其`doGet`和`doPost...
4. **ServletConfig接口**:Servlet在初始化时会得到一个`ServletConfig`对象,包含Servlet的配置信息,如初始化参数。 5. **ServletContext接口**:代表整个Web应用的共享环境,提供全局数据存储和事件通知。通过`...
`ServletConfig` 接口提供了一种方式来获取 Servlet 的初始化参数和配置信息。每个 Servlet 在初始化时都会得到一个 `ServletConfig` 对象。 **核心方法:** 1. **getServletName()** - **功能**:获取 Servlet ...
- `ServletConfig`接口提供了Servlet配置信息,比如Servlet的初始化参数,可以通过`init(ServletConfig config)`方法的参数获取。 - `ServletContext`接口代表了Servlet的上下文,是所有Servlet共享的信息存储区,...