返回顶部
首页 > 资讯 > 精选 >Struts中action线程安全问题解析
  • 421
分享到

Struts中action线程安全问题解析

javaaction线程安全 2023-05-30 23:05:42 421人浏览 薄情痞子
摘要

【问题描述】最近公司安排我面试Java的FreshMan,面试者一般是工作1年多点的新人(这里我就装老一下,其实我也才工作3年不到),在被问及Struts1和Struts2的Action的线程安全问题的时候,大多是支支吾吾,答不出所以然。所

【问题描述】

最近公司安排我面试Java的FreshMan,面试者一般是工作1年多点的新人(这里我就装老一下,其实我也才工作3年不到),在被问及Struts1和Struts2的Action的线程安全问题的时候,大多是支支吾吾,答不出所以然。所以在这里我整理一下我个人的理解。

【问题答案】

这是由于Servlet的工作原理产生的。我们先来简单回顾一下Servlet的生命周期“初始化->init->service->destroy->卸载”。
这里大家都知道,我们在WEB.xml里面定义一个servlet的时候,我们可以给他们设置一个“load-on-startup” 的值,如果 Servlet 的 load-on-startup 配置项大于 0,那么在 Context 容器启动的时候就会被实例化,并且Tomcat给每一个servlet加载并且实例化一个对象(注解:也就是说,我们用户在web.xml里面配置的每一个servlet都会被实例成一个servlet对象)

a, 下面的配置表示会有两个servlet对象被实例化,即使他们对应的是同一个servlet class

<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5"    xmlns="Http://java.sun.com/xml/ns/javaee"    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">  <servlet>   <servlet-name>ServletTest1</servlet-name>   <servlet-class>web.servlet.ServletTest1</servlet-class>  </servlet>   <servlet-mapping>   <servlet-name>ServletTest1</servlet-name>   <url-pattern>/servlet/ServletTest1</url-pattern>  </servlet-mapping>    <servlet>   <servlet-name>ServletTest2</servlet-name>   <servlet-class>web.servlet.ServletTest1</servlet-class>  </servlet>   <servlet-mapping>   <servlet-name>ServletTest2</servlet-name>   <url-pattern>/servlet/ServletTest1</url-pattern>  </servlet-mapping> </web-app> 

--结束END--

本文标题: Struts中action线程安全问题解析

本文链接: https://lsjlt.com/news/222213.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Struts中action线程安全问题解析
    【问题描述】最近公司安排我面试Java的FreshMan,面试者一般是工作1年多点的新人(这里我就装老一下,其实我也才工作3年不到),在被问及Struts1和Struts2的Action的线程安全问题的时候,大多是支支吾吾,答不出所以然。所...
    99+
    2023-05-30
    java action 线程安全
  • 解析Spring中@Controller@Service等线程安全问题
    目录首先问@Controller@Service是不是线程安全的?总结:首先问@Controller @Service是不是线程安全的? 答:默认配置下不是的。为啥呢?因为默认情况下...
    99+
    2024-04-02
  • java中线程安全问题举例分析
    这篇文章主要讲解了“java中线程安全问题举例分析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“java中线程安全问题举例分析”吧!一、什么时候数据在多线程并发的环境下会存在安全问题?三个条...
    99+
    2023-06-21
  • Java中线程安全问题
    目录一.线程不安全二.那些情况导致了线程不安全?三.Java中解决线程不安全的方案1.volatile“轻量级”解决线程不安全2.synchronized自动加锁四.公平锁与非公平锁...
    99+
    2024-04-02
  • Java多线程中线程安全问题的示例分析
    这篇文章主要介绍了Java多线程中线程安全问题的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1. 什么是线程安全和线程不安全?什么是线程安全呢?当多个线程并发访问某...
    99+
    2023-06-29
  • Java多线程 - 线程安全和线程同步解决线程安全问题
    文章目录 线程安全问题线程同步方式一: 同步代码块方式二: 同步方法方式三: Lock锁 线程安全问题 线程安全问题指的是: 多个线程同时操作同一个共享资源的时候可能会出现业务安全问题,称为线程安全问题。 举例:...
    99+
    2023-08-20
    java 安全 jvm
  • 关于java中线程安全问题详解
    目录一、什么时候数据在多线程并发的环境下会存在安全问题?二、怎么解决线程安全问题?三、银行 取钱/存钱 案例为什么会出现线程安全问题四、总结 一、什么时候数据在多线程并发的环境下会存...
    99+
    2024-04-02
  • Java多线程之线程安全问题详解
    目录1. 什么是线程安全和线程不安全?2. 自增运算为什么不是线程安全的?3. 临界区资源和竞态条件总结:面试题: 什么是线程安全和线程不安全?自增运算是不是线程安全的?如何保证多线...
    99+
    2024-04-02
  • Java中线程安全问题该如何理解
    这期内容当中小编将会给大家带来有关Java中线程安全问题该如何理解,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。线程安全问题是一个比较高深的问题,是很多程序员比较难掌握的一个技术难点,如果一个程序员对线程...
    99+
    2023-06-17
  • Java多线程之线程安全问题
    文章目录 一. 线程安全概述1. 什么是线程安全问题2. 一个存在线程安全问题的程序 二. 线程不安全的原因和线程加锁1. 案例分析2. 线程加锁2.1 理解加锁2.2 synchroni...
    99+
    2023-09-21
    java 线程安全 多线程 synchronized jvm
  • Servlet的线程安全问题
    目录引入Servlet的多线程机制如何修复1.实现 SingleThreadModel 接口2.避免使用成员变量3.同步对共享数据的操作思考与小结参考文章引入 首先看看这样的代码,有...
    99+
    2024-04-02
  • SpringBean的线程安全问题
    目录@Controller、@Service是不是线程安全的?ThreadLocal vs 线程同步机制线程同步机制ThreadLocal总结Spring容器中的Bean是否线程安全...
    99+
    2024-04-02
  • JavaSimpleDateFormat线程不安全问题
    目录多线程 ——SimpleDateFormat原因分析解决方法解决方法1解决方法2总结多线程 ——SimpleDateFormat ...
    99+
    2023-03-24
    Java多线程不安全 SimpleDateFormat线程不安全
  • Java线程安全与非线程安全解析
    ArrayList和Vector有什么区别?HashMap和HashTable有什么区别?StringBuilder和StringBuffer有什么区别?这些都是Java面试中常见的基础问题。面对这样的问题,回答是:ArrayList是非线...
    99+
    2023-05-31
    java 线程安全 ava
  • java中SimpleDateFormat非线程安全问题的示例分析
    小编给大家分享一下java中SimpleDateFormat非线程安全问题的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!SimpleDateFormat非线程安全问题实现1000个线程的时间格式化package&...
    99+
    2023-06-20
  • Java线程安全状态专题解析
    一、观察线程的所有状态 线程的状态是一个枚举类型 Thread.State public static void main(String[] args) { f...
    99+
    2024-04-02
  • SimpleDateFormat线程安全问题排查详解
    目录一. 问题现象二. 原因排查三. 原因分析四. 解决方案一. 问题现象 运营部门反馈使用小程序配置的拉新现金红包活动二维码,在扫码后跳转至404页面。 二. 原因排查 首先,检查...
    99+
    2022-11-13
    SimpleDateFormat线程安全排查 SimpleDateFormat线程安全
  • Java多线程之线程安全问题怎么解决
    本篇内容主要讲解“Java多线程之线程安全问题怎么解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java多线程之线程安全问题怎么解决”吧!1.线程安全概述1.1什么是线程安全问题首先我们需要...
    99+
    2023-06-30
  • Java中线程状态+线程安全问题+synchronized的用法详解
    目录java中的线程状态线程安全问题案例分析多线程对同一变量进行写操作内存可见性问题指令重排序问题synchronized的用法synchronized起作用的本质修饰普通方法修饰静...
    99+
    2024-04-02
  • Java使用线程同步解决线程安全问题详解
    第一种方法:同步代码块: 作用:把出现线程安全的核心代码上锁 原理:每次只能一个线程进入,执行完毕后自行解锁,其他线程才能进来执行 锁对象要求:理论上,锁对象只要对于当前同时执行的线...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作