servlet-api

本次内容总结

1、再次学习Servlet的初始化方法

2、学习Servlet中的ServletContext和<context-param>

3、什么是业务层

4、IOC

5、过滤器

7、TransActionManager、ThreadLocal、OpenSessionInViewFilter

1、再次学习Servlet的初始化方法

1)Servlet生命周期:实例化、初始化、服务、销毁。

2)Servletz中的初始化方法有两个:init(),init(config)--->使用时会调用无参的

其中带参数的方法如下

public void init(ServletConfig config) throws ServletException {

this.config = config;

this.init();

}

无参的方法如下

public void init() throws ServletException {

}

所以我们要是想在初始化的时候做一些自定义操作,那么就可以重写无参的init方法,比如通过config.getInitParameter()获取初始化参数、通过getConfig()获取ServletConfig对象等,即:

我们可以通过如下步骤获取初始化设置的数据

获取config对象: ServletConfig servletConfig = getServletConfig();

获取初始化参数值: String helloValue = servletConfig.getInitParameter("hello");

那初始化怎么去配

3)在web.xml文件中配置Servlet

<servlet>

<servlet-name>Demo01Servlet</servlet-name>

<servlet-class>com.wenrui.servlet.Demo01Servlet</servlet-class>

<init-param>

<param-name>hello</param-name>

<param-value>world</param-value>

//根据这个hello来获取world值,key-value类型

</init-param>

<init-param>

<param-name>username</param-name>

<param-value>jim</param-value>

</init-param>

</servlet>

<servlet-mapping>

<servlet-name>Demo01Servlet</servlet-name>

<url-pattern>/demo01</url-pattern>

</servlet-mapping>
4)也可以通过注解的方式配置

一开始是这样的写法@WebServlet("/demo01"},WebServlet是一个属性名,点进去发现urlPatter后面+s,说明可以有多个,这也就对应配置文件当中servlet-mapping可以有多个,

咱们现在用这个@WebServlet(urlPatterns = {"/demo01"},initParams = {

// @WebInitParam(name = "hello",value = "world"),

// @WebInitParam(name = "username",value = "jim")

//})优化配置文件感觉

2.通过ServletContext(Servlet上下文,和config一样都是接口)获取配置的上下文参数(<context-param>)

1)获取ServletContext,有很多中方法

<context-param>

<param-name>contextConfigLocation</param-name>

<param-value>classpath:applicationContext.xml</param-value>

</context-param>

在初始化方法中:

ServletContext servletContext = getServletContext();//其实servletContext就是application

在服务方法中也可以通过request对象获取:

ServletContext servletContext = req.getServletContext();

ServletContext servletContext1 = req.getSession().getServletContext();

2)获取初始化值:

String contextConfigLocationValue = servletContext.getInitParameter("contextConfigLocation");

相关推荐
musenh18 小时前
servlet入门
servlet
wfsm2 天前
flowable使用01
java·前端·servlet
六件套是我3 天前
redission实现延时队列
android·java·servlet
非典型代码4 天前
Jenkins发不出邮件
运维·servlet·jenkins
佐杰4 天前
Jenkins安装部署
运维·servlet·jenkins
chxii5 天前
Spring Boot 中,内嵌的 Servlet 容器(也称为嵌入式 Web 服务器)
spring boot·servlet
BUG?不,是彩蛋!5 天前
Maven-Java 项目到底解决了什么痛点?
java·servlet·maven
CS Beginner9 天前
【搭建】个人博客网站的搭建
java·前端·学习·servlet·log4j·mybatis
一只小透明啊啊啊啊12 天前
Java Web 开发的核心组件:Servlet, JSP,Filter,Listener
java·前端·servlet
芙蓉王真的好112 天前
优化 Jenkins 构建脚本:避免 pnpm lockfile 相关报错的关键配置
spring·servlet·jenkins