当前位置: 首页 > news >正文

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

相关文章:

  • C++中的各式类型转换
  • vr视频制作攻略(VR视频制作基础知识)
  • PNG图片转icon图标Python脚本(简易版) - 随笔
  • 43、Server.UrlEncode、HttpUtility.UrlDecode的区别?
  • dockers笔记
  • 3.4 数字特征
  • LeetCode LCR 016. 无重复字符的最长子串 (Java)
  • centos7.x下,使用宝塔进行主从复制的原理和实践
  • JavaScript实践(三)JavaScript序列化与反序列化深度解析
  • 使用ADB命令操作Android的apk/aab包
  • PyTorch 分布式训练
  • 2025年渗透测试面试题总结-渗透测试红队面试九(题目+回答)
  • Milvus(21):过滤搜索、范围搜索、分组搜索
  • 【2025最新】Pycharm里如何运行多个py文件
  • Python基础学习-Day23
  • 撤回不了一点 v1.0.2,支持微信QQ钉钉飞书等消息防撤回
  • yolo11n-obb训练rknn模型
  • 博客系统技术需求文档(基于 Flask)
  • ArcGIS、InVEST与RUSLE在水土流失模拟及分析中的实践技术
  • 使用docker安装clickhouse集群
  • 前四个月人民币贷款增加10.06万亿元,4月末M2余额同比增长8%
  • 前四个月社会融资规模增量累计为16.34万亿元,比上年同期多3.61万亿元
  • 英国首相斯塔默住所起火,警方紧急调查情况
  • 季后赛主场优势消失之谜,这事竟然要赖库里
  • 人民币对美元即期汇率盘中创半年新高,离岸市场升破7.2
  • 全球医药股普跌,A股创新药板块下挫