精华内容
下载资源
问答
  • 两种资源配置方式
    千次阅读
    2018-08-27 22:50:36

    一、Servlet的三种实现方式

    Servlet(Server Applet)是Java Servlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序,主要功能在于交互式地浏览和修改数据,生成动态Web内容。

    1、Servlet的第一种创建方式:继承HttpServlet(最优)

          重写doGet(HttpServletRequest request, HttpServletResponse response)方法

        重写 doPost(HttpServletRequest request, HttpServletResponse response)方法

    2、Servlet创建的第二种方式:实现接口Servlet

    重写getServletConfig()方法

    重写 getServletInfo() 方法

    重写init(ServletConfig arg0)方法

    重写service(ServletRequest request, ServletResponse response)方法

    重写destroy()方法

    3、Servlet的第三种创建方式:继承GenericServlet类

    重写service(ServletRequest request, ServletResponse response)方法

    二、servlet的两种配置方式

    1、第一种注解式配置 Servlet3.0及以后 :

    @WebServlet(value="/hello",loadOnStartup=1)

    2、第二种web.xml配置 Servlet所有版本都支持:

     <servlet>
      <!--名称  -->
        <servlet-name>hello2</servlet-name>
        <!--Servlet的全称类名  -->
        <servlet-class>com.abc.web.servlet.HelloServlet</servlet-class>
        <!--启动的优先级,数字越小越先起动  -->
        <load-on-startup>1</load-on-startup>
      </servlet>
      <!--映射配置  -->
      <servlet-mapping>
      <!--名称  -->
        <servlet-name>hello2</servlet-name>
        <!--资源的匹配规则:精确匹配  -->
        <url-pattern>/hello2</url-pattern>
      </servlet-mapping>

     

    更多相关内容
  • 参考学习: ...诉求:Spring Boot 默认为我们提供了静态资源处理,而有时我们需要自定义资源映射,可定义项目内部目录,也可定义外部目录。此处举例外部目录映射配置。 方法一:通过配置文件配置

    参考学习:
    http://www.zslin.com/web/article/detail/23
    http://blog.csdn.net/catoop/article/details/50501706

    诉求:Spring Boot 默认为我们提供了静态资源处理,而有时我们需要自定义资源映射,可定义项目内部目录,也可定义外部目录。此处举例外部目录映射配置。

    方法一:通过配置文件配置

    在Springboot中可以直接在配置文件中覆盖默认的静态资源路径的配置信息:
    作用在application.yml或application.properties
    首先系统有默认配置,其中默认配置的 /** 映射到 /static (或/public、/resources、/META-INF/resources)

    默认大概意思如下所示(为了和下面进行对比):
    spring:
        mvc:
            static-path-pattern: /**
        resources:
             static-locations: classpath:/META-INF/resources/,classpath:/resources/, classpath:/static/, classpath:/public/

    定义 static-path-pattern: /** ,会覆盖默认配置,需要在static-locations添加默认的内部目录和自定义目录,应为

    添加自定义外部目录并覆盖默认
    spring:
        mvc:
            static-path-pattern: /**
        http:
            multipart:
                location: F://preview
        resources:
            static-locations: classpath:/META-INF/resources/,classpath:/resources/, classpath:/static/, classpath:/public/, file:${spring.http.multipart.location}

    如果定义 static-path-pattern: /we/**,则访问static-locations里目录时都应加上”/we/”
    spring.mvc.static-path-pattern 只可以定义一个,目前不支持多个逗号分割的方式,

    方法二:通过@Configuration配置

    @Configuration
    public class ApplicationConfig extends WebMvcConfigurerAdapter {
    
        @Override
        public void addResourceHandlers(ResourceHandlerRegistry registry) {
            /**
             * 如果我们将/xxxx/** 修改为 /** 与默认的相同时,则会覆盖系统的配置,可以多次使用 addResourceLocations 添加目录,
             * 优先级先添加的高于后添加的。
             *
             * 如果是/xxxx/** 引用静态资源 加不加/xxxx/ 均可,因为系统默认配置(/**)也会作用
             * 如果是/** 会覆盖默认配置,应用addResourceLocations添加所有会用到的静态资源地址,系统默认不会再起作用
             */
            registry.addResourceHandler("/**")
                    .addResourceLocations("classpath:/META-INF/resources/")
                    .addResourceLocations("classpath:/resources/")
                    .addResourceLocations("classpath:/static/")
                    .addResourceLocations("classpath:/public/");
            registry.addResourceHandler("/we/**").addResourceLocations("file:F:/preview/");
            super.addResourceHandlers(registry);
        }
    }

    此方法直接写在代码内,同方法一一样,可以覆盖默认配置,添加自定义映射配置,也可以只添加自定义映射配置,不覆盖默认配置。方法二比之方法一更为灵活。

    展开全文
  • SpringBoot 配置Mybatis两种方式

    万次阅读 2018-08-30 09:56:32
    在SpringBoot结合Mybatis使用时,有的人将mapper.xml 存放到resouce的目录下,有的想把Mapper.xml 和接口放到一起,但是这样/就会存在Mapper.xml加载不了,导致方法无法找到,现在咱们看看两种方式配置。...

    目前SpringBoot被各企业广泛使用,在SpringBoot结合Mybatis使用时,有的人将mapper.xml 存放到resouce的目录下,有的想把Mapper.xml 和接口放到一起,但是这样/就会存在Mapper.xml加载不了,导致方法无法找到,现在咱们看看两种方式的配置。

    首先说第一种:

    也就是网上说的最多的一种,添加依赖,我就不细说了。

    1.在application.properties 中添加对xml中对实体对象引用的配置

    2.在application.properties 添加xml在resouces目录下的位置

    如下图

    mybatis.type-aliases-package=com.gao.security.bean
    mybatis.mapper-locations=classpath:mybatis/mapper/*.xml

    目录结构如下

    3.在springboot 主入口添加注解,里面值为Mapper对应的Java接口类

    @MapperScan("com.gao.security.dao")

    然后第一种配置方式就结束了,你可以正常使用mabatis了。

    接下来,咱们再说第二种,第二种先对更简单些

    优点:无需在application.properties  添加第一种的那种配置,也不用在springboot主入口添加MapperScan注解

    具体配置:

    1.将Mapper和Java接口存放一个目录,如下

    2.只需要在pom.xml 中的build标签中添加resouce资源的配置加载src/main/java 中的xml即可,如下图

    <build>
            <plugins>
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                </plugin>
            </plugins>
            <resources>
                <resource>
                    <directory>src/main/java</directory>
                    <includes>
                        <include>**/*.xml</include>
                    </includes>
                </resource>
                <resource>
                    <directory>src/main/resources</directory>
                </resource>
            </resources>
        </build>

    好了,现在两种方式都讲了,具体可以根据自己想法使用哪一种就可以了

    展开全文
  • Yarn的资源配置参数

    千次阅读 2022-03-05 16:13:41
    YARN的资源调度主要针对的是内存(Memory)和CPU,并将其组合抽象成Container来管理分配。 在YARN中,资源管理由ResourceManager和NodeManager共同完成,其中,ResourceManager中的调度器负责资源的分配,而...

    YARN的资源调度主要针对的是内存(Memory)和CPU,并将其组合抽象成Container来管理分配。

    在YARN中,资源管理由ResourceManager和NodeManager共同完成,其中,ResourceManager中的调度器负责资源的分配,而NodeManager则负责资源的供给和隔离。ResourceManager将某个NodeManager上资源分配给任务(这就是所谓的“资源调度”)后,NodeManager需按照要求为任务提供相应的资源,甚至保证这些资源应具有独占性,为任务运行提供基础的保证,这就是所谓的资源隔离。

    在正式介绍具体的资源调度和隔离之前,先品味一下内存和CPU这两种资源的特点,这是两种性质不同的资源。内存资源的多少会会决定任务的生死,如果内存不够,任务可能会运行失败;相比之下,CPU资源则不同,它只会决定任务运行的快慢,不会对生死产生影响。

    Memory配置

    计算单台机器的Container上限值

    containers = min (2*CORES, 1.8*DISKS, (Total available RAM) / MIN_CONTAINER_SIZE)
    

    其中:

    • CORES: 机器CPU核数
    • DISKS: 机器上挂载的磁盘个数
    • Total available RAM: 机器总内存
    • MIN_CONTAINER_SIZE: Container最小的容量大小

    MIN_CONTAINER_SIZE主要与机器可用的RAM有关:

    单台机器可用RAMContainer最小值
    <4GB256MB
    4GB-8GB512MB
    8GB-24GB1024MB
    >24GB2048MB

    YARN配置(内存相关)

    • yarn.nodemanager.resource.memory-mb

    表示该节点上YARN可使用的物理内存总量,默认是8192(MB)。

    注意,如果你的节点内存资源不够8GB,则需要调减小这个值,而YARN不会智能的探测节点的物理内存总量。

    • yarn.nodemanager.vmem-pmem-ratio

    任务每使用1MB物理内存,最多可使用虚拟内存量,默认是2.1。

    • yarn.nodemanager.pmem-check-enabled

    是否启动一个线程检查每个任务正使用的物理内存量,如果任务超出分配值,则直接将其杀掉,默认是true。

    • yarn.nodemanager.vmem-check-enabled

    是否启动一个线程检查每个任务正使用的虚拟内存量,如果任务超出分配值,则直接将其杀掉,默认是true。

    • yarn.scheduler.minimum-allocation-mb

    单个container可申请的最少物理内存量,默认是1024(MB),如果一个任务申请的物理内存量少于该值,则该对应的值改为这个数。

    • yarn.scheduler.maximum-allocation-mb

    单个container可申请的最少物理内存量,默认是1024(MB),如果一个任务申请的物理内存量少于该值,则该对应的值改为这个数。

    默认情况下,YARN采用了线程监控的方法判断任务是否超量使用内存,一旦发现超量,则直接将其杀死。由于Cgroups对内存的控制缺乏灵活性(即任务任何时刻不能超过内存上限,如果超过,则直接将其杀死或者报OOM),而Java进程在创建瞬间内存将翻倍,之后骤降到正常值,这种情况下,采用线程监控的方式更加灵活(当发现进程树内存瞬间翻倍超过设定值时,可认为是正常现象,不会将任务杀死),因此YARN未提供Cgroups内存隔离机制。

    CPU配置

    在YARN中使用的是虚拟CPU,虚拟CPU是YARN自己引入的概念,初衷是,考虑到不同节点的CPU性能可能不同,每个CPU具有的计算能力也是不一样的,比如某个物理CPU的计算能力可能是另外一个物理CPU的2倍,这时候,你可以通过为第一个物理CPU多配置几个虚拟CPU弥补这种差异。用户提交作业时,可以指定每个任务需要的虚拟CPU个数。在YARN中,CPU相关配置参数如下:

    YARN配置(CPU相关)

    • yarn.nodemanager.resource.cpu-vcores

    表示该节点上YARN可使用的虚拟CPU个数,默认是8,注意,目前推荐将该值设值为与物理CPU核数数目相同。

    如果你的节点CPU核数不够8个,则需要调减小这个值,而YARN不会智能的探测节点的物理CPU总数。

    • yarn.scheduler.minimum-allocation-vcores

    单个任务可申请的最小虚拟CPU个数,默认是1,如果一个任务申请的CPU个数少于该数,则该对应的值改为这个数。

    • yarn.scheduler.maximum-allocation-vcores

    单个任务可申请的最多虚拟CPU个数,默认是32。

    默认情况下,YARN是不会对CPU资源进行调度的,你需要配置相应的资源调度器来支持

    资源划分方式

    默认情况下,NodeManager不会对CPU资源进行任何隔离,你可以通过启用Cgroups让你支持CPU隔离。

    由于CPU资源的独特性,目前这种CPU分配方式仍然是粗粒度的。举个例子,很多任务可能是IO密集型的,消耗的CPU资源非常少,如果此时你为它分配一个CPU,则是一种严重浪费,你完全可以让他与其他几个任务公用一个CPU,也就是说,我们需要支持更粒度的CPU表达方式。

    借鉴亚马逊EC2中CPU资源的划分方式,即提出了CPU最小单位为EC2 Compute Unit(ECU),一个ECU代表相当于1.0-1.2 GHz 2007 Opteron or 2007 Xeon处理器的处理能力。YARN提出了CPU最小单位YARN Compute Unit(YCU),目前这个数是一个整数,默认是720,由参数yarn.nodemanager.resource.cpu-ycus-per-core设置,表示一个CPU core具备的计算能力(该feature在2.2.0版本中并不存在,可能增加到2.3.0版本中),这样,用户提交作业时,直接指定需要的YCU即可,比如指定值为360,表示用1/2个CPU core,实际表现为,只使用一个CPU core的1/2计算时间。注意,在操作系统层,CPU资源是按照时间片分配的,你可以说,一个进程使用1/3的CPU时间片,或者1/5的时间片。

    参考文献:

    1. http://dongxicheng.org/mapreduce-nextgen/hadoop-yarn-memory-cpu-scheduling/
    展开全文
  • (7)Dubbo的四种配置方式

    千次阅读 2018-12-11 23:23:38
    Dubbo共有四种配置方式:xml配置、dubbo.properties属性配置、API配置、注解配置。本节将会对这四方式分别做下介绍,同时也会对主要的配置方式给出范例。 一:xml配置 所有配置项分为三大类,参见下表中的"...
  • spring配置国际化资源文件的时候,需要注意的地方,自己在配置过程中,遇到了配置路径总是not found的问题。经查找资料,总结如此文所述
  • SpringBoot 静态资源映射的两种方式

    千次阅读 2019-08-31 22:33:52
    一、webjars方式映射静态资源文件 我们之前使用Maven构建一个Web项目时,在main目录下会存在一个webapp的目录,我们以前都是将所有的页面或静态资源导在这个目录下,但现在使用SpringBoot项目我们应该将静态资源文件...
  • MyBatis配置数据源的两种方式

    万次阅读 2017-10-31 23:55:55
    ---------------------siwuxie095               ... 1、配置方式一:配置数据库连接信息到核心配置文件中    在 mybatis-config.xml 中添加如下内容:     version="1.0
  • Redis持久化的两种方式配置

    千次阅读 2017-11-10 08:45:43
    Redis优秀的性能是由于其将所有的数据都存储在内存中,同样memcached也是这样做的,但是为...Redis支持两种方式的持久化,一种是RDB方式,一种是AOF方式。这两种方式可以单独使用其中一种,或者混合使用。  R
  • 考虑到两种方案,一种是使用springboot项目直接访问外部静态资源文件(最好是不要将前端工程打包到后端项目中,前后端分离的项目估计也不会直接打包在一块吧)采用这种方式可以直接访问到页面,但是页面所加载的js文件找...
  • 第一为 Properties.Settings.Default.参数名= 参数值; Properties.Settings.Default.Save();  在第一次运行时会读取App.config里的初始值 但是一旦调用Save方法后,Settings里“用户”范围的属性就会...
  • 使用SpringBoot搭建web项目时静态资源的访问必然是一个...一、静态资源配置 SpringBoot默认从以下几个目录访问静态资源: /META-INF/resources/ /resources/ /static /public/ 以上4个默认目录中如果存在同一个静态...
  • spring+hibernate 两种整合方式配置文件

    万次阅读 2016-07-05 02:07:32
    之前的文章都是讲解springmvc+spring+mybatis 的整合,而很少有springmvc+spring+hibernate 因为工作的需要,最近在使用hibernate 所以下面我们来看看 spring整合hibernate的配置...spring整合hibernate 有两种方式
  • Spring bean配置的三种方式(XML、注解、Java类)

    万次阅读 多人点赞 2019-03-01 17:34:56
    本文将详细介绍Spring Bean配置的三不同方式的特点与使用条件。 一,Spring 的配置文件概述 其实,Spring的配置文件是Spring容器对Bean进行生产以及关系注入的图纸,他是Spring的基础。如果我们没有配置文件的话...
  • 配置数据源的三种方式

    万次阅读 2018-12-03 15:12:29
    1. 在TomCat中配置好数据源,然后使用java自带的类获取连接 使用步骤: 在D:\apache-tomcat-8.5.32\conf\server.xml 中配置好JNDI数据源 &lt;!--配置MySQL数据库的JNDI数据源--&gt; &lt;Resource ...
  • 一、前述Spark可以和Yarn整合,将Application提交到Yarn上运行,和StandAlone提交模式一样,Yarn也有两种提交任务的方式。二、具体 1、yarn-client提交任务方式配置 在client节点配置中spark-env.sh添加Hadoop_...
  • 在编程的某些情况下,我们需要读取jar包中的文件,这种情况要区别于我们平时使用类加载器读取配置文件,这个时候配置在jar包中,就能读取到,但是配置文件也可以不在jar包中,只要放在Class-Path下就行了,所以这种...
  • yarn资源调度参数配置

    千次阅读 2018-07-12 22:11:27
    在Hadoop2.0中, YARN负责管理MapReduce中的资源(内存, CPU等)并且将其打包成Container. 这样可以精简MapReduce, 使之专注于其擅长的数据处理任务, 将无需考虑资源调度. 如下图所示 YARN会管理集群中所有机器的可用...
  • springboot maven 打包的两种方式

    千次阅读 2019-08-23 17:01:28
    1、配置文件不外放 a、maven配置打包插件 <!--打包配置,执行mvn clean package--> <packaging>jar</packaging> <!--maven打war包依赖配置--> <!--<packaging>war<...
  • springMVC对静态资源放行的两种方式

    千次阅读 2018-08-01 10:55:31
    1、配置对全部资源放行 &lt;!-- 全部资源放行 --&gt; &lt;mvc:default-servlet-handler/&gt; 2、对指定目录下的资源放行 &lt;!-- 对指定目录下的静态资源放行 --&gt; &lt;mvc:...
  • 资源服务器验证Token的几种方式

    千次阅读 2021-04-14 21:04:01
    资源服务器验证Token的两种方式
  • springboot访问静态资源两种情况

    千次阅读 2020-03-07 10:46:05
    1.springboot自身访问静态资源 ...1.在springboot项目中,访问静态资源是怎么配置的?哪里体现? springboot默认访问静态资源路径是 (1)classpath:/META-INF/resources/ (2)classpath:/resources/ (3)clas...
  • 作为一名程序员,特别是java web开发的程序员,在使用servlet/jsp的时候,我们必须要知道实现页面跳转的两种方式的区别和联系:即转发和重定向的区别。 1、RequestDispatcher.forward方法只能将请求转发给同一个...
  • Hadoop YARN同时支持内存和CPU两种资源的调度(默认只支持内存,如果想进一步调度CPU,需要自己进行一些配置),本文将介绍YARN是如何对这些资源进行调度和隔离的。 在YARN中,资源管理由ResourceManager和...
  • 这里提供两种连接方式 PuTTY连接 Xshell连接 不用担心资源下载,本文免费提供资源下载 一、PuTTY连接 1.1、下载PuTTY工具 官网: https://www.chiark.greenend.org.uk/~sgtatham/putty/l...
  • 使用 springcloud.alibaba 的Sentinel 时,在 Sentinel 控制台,进行流控规则 配置 时,资源名 有两种填写方式: 请求的 URL (对应的 @GetMapping 、RequestMapping 的 value 值) @SentinelResource 的 value 值 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 957,896
精华内容 383,158
关键字:

两种资源配置方式