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");

相关推荐
阿杜杜不是阿木木15 小时前
authentik开源身份认证与管理平台-与 Jenkins 集成(5)
运维·servlet·jenkins·authing·authentik
happymaker06262 天前
请求头 & 文件下载 & JSP 内置对象实战
java·前端·servlet
花千树-0102 天前
兼容 ThreadLocal 的用户上下文透传方案:WebFlux 项目改造实践
java·spring boot·servlet·jetty
2401_840192273 天前
数据库连接池和java servlet
java·数据库·servlet
白露与泡影3 天前
Spring Boot 中Servlet、Filter、Listener 四种注册方式全解析
spring boot·后端·servlet
me8323 天前
【Linux】Docker部署Jenkins
servlet·docker·jenkins
WZTTMoon4 天前
Spring Boot 中Servlet、Filter、Listener 四种注册方式全解析
spring boot·后端·servlet
MX_93594 天前
SpringMVC请求参数
java·后端·spring·servlet·apache
jonyleek5 天前
JVS物联网应用中控制器的四大职责和设备接入全流程
java·struts·servlet·私有化部署
weixin_443478515 天前
Flutter学习之输入组件
学习·flutter·servlet