欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JavaWeb項(xiàng)目音頻資源播放實(shí)現(xiàn)方法詳解

 更新時(shí)間:2019年10月11日 10:21:21   作者:德邦總管  
這篇文章主要介紹了JavaWeb項(xiàng)目音頻資源播放實(shí)現(xiàn)方法詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

一、方式1:登陸系統(tǒng)后進(jìn)行播放,即在瀏覽器端

需要在JSP頁(yè)面編寫(xiě)相關(guān)代碼

<div id="midea" style="display: none;">
  <object id='player' height='100' width='200' classid='CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6'>
    <param name='AutoStart' value='0' />
    <param name='Balance' value='0' />
    <param name='enabled' value='-1' />
    <param name='EnableContextMenu' value='-1' />
    <param name='url' value='${pageContext.request.contextPath}/player/bestduanxin.wav' />
    <param name='volume' value='100' />
    <param name='uiMode' value='mini' />
  </object>
</div>

在js腳本里調(diào)用

document.getElementById('player').controls.play();
setTimeout(stopPlayer,6000);
function stopPlayer(){
  document.getElementById('player').controls.stop();
}

二、方式2:不用登陸即可播放,即在服務(wù)器端

需在java后臺(tái)編寫(xiě)相關(guān)代碼

import java.applet.Applet;
import java.applet.AudioClip;
import java.net.URL;
import java.util.Timer;
import java.util.TimerTask;
import javax.servlet.http.HttpServletRequest;
 
public class AudioPlayer {
  public static void player(HttpServletRequest request){
    URL audioUrl=null;
    try {
      //項(xiàng)目URL根路徑
      String path = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+request.getContextPath();
      //音頻資源地址
      audioUrl = new URL(path+"/player/bestduanxin.wav");
      //創(chuàng)建音頻播放類
      final AudioClip audioClass=Applet.newAudioClip(audioUrl);
      audioClass.loop();
      //new一個(gè)線程執(zhí)行停止播放
        TimerTask task = new TimerTask() {
        @Override
        public void run() {
          audioClass.stop();
        }
      };
      //new一個(gè)定時(shí)器,指定播放若干秒后執(zhí)行停止播放
      Timer timer = new Timer();
      timer.schedule(task, GetPropertiesValue.getTimes()*GetPropertiesValue.getDuration());
    } catch (Exception e) {
      e.printStackTrace();
    }
  }
}

附獲取音頻文件時(shí)長(zhǎng)的方法

File file = new File(url.substring(0, url.indexOf("WEB-INF"))+"player/bestduanxin.wav");<br>Clip clip = AudioSystem.getClip();
AudioInputStream ais = AudioSystem.getAudioInputStream(file);
clip.open(ais);<br>//得到的時(shí)間為微秒(μs),除以1000得到毫秒(ms)數(shù)
System.out.println(clip.getMicrosecondLength()/1000);

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringBoot2基于重復(fù)創(chuàng)建bean的問(wèn)題及解決

    SpringBoot2基于重復(fù)創(chuàng)建bean的問(wèn)題及解決

    這篇文章主要介紹了SpringBoot2基于重復(fù)創(chuàng)建bean的問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • Java基礎(chǔ)之ArrayList的擴(kuò)容機(jī)制

    Java基礎(chǔ)之ArrayList的擴(kuò)容機(jī)制

    這篇文章主要介紹了Java基礎(chǔ)之ArrayList的擴(kuò)容機(jī)制,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)java基礎(chǔ)的小伙伴們有很好的幫助,需要的朋友可以參考下
    2021-05-05
  • SpringBoot中利用@Valid和@Validated進(jìn)行參數(shù)校驗(yàn)

    SpringBoot中利用@Valid和@Validated進(jìn)行參數(shù)校驗(yàn)

    為了保證數(shù)據(jù)的正確性、完整性,前后端都需要進(jìn)行數(shù)據(jù)檢驗(yàn),作為一名后端開(kāi)發(fā)工程師,不能僅僅依靠前端來(lái)校驗(yàn)數(shù)據(jù),我們還需要對(duì)接口請(qǐng)求的參數(shù)進(jìn)行后端的校驗(yàn),所以本文給大家介紹了SpringBoot中利用@Valid和@Validated進(jìn)行參數(shù)校驗(yàn),需要的朋友可以參考下
    2024-09-09
  • Java編程中字節(jié)流與字符流IO操作示例

    Java編程中字節(jié)流與字符流IO操作示例

    這篇文章主要介紹了Java編程中字節(jié)流與字符流IO操作示例,并且簡(jiǎn)單總結(jié)了IO流操作的基本規(guī)律,需要的朋友可以參考下
    2016-02-02
  • Spring boot 整合KAFKA消息隊(duì)列的示例

    Spring boot 整合KAFKA消息隊(duì)列的示例

    這篇文章主要介紹了Spring boot 整合 KAFKA 消息隊(duì)列的示例,幫助大家更好的理解和使用spring boot框架,感興趣的朋友可以了解下
    2020-10-10
  • 配置Ant執(zhí)行Jmeter腳本過(guò)程詳解

    配置Ant執(zhí)行Jmeter腳本過(guò)程詳解

    這篇文章主要介紹了配置Ant執(zhí)行Jmeter腳本過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • java精度計(jì)算代碼 java指定精確小數(shù)位

    java精度計(jì)算代碼 java指定精確小數(shù)位

    這篇文章主要為大家詳細(xì)介紹了java精度計(jì)算代碼,java指定精確小數(shù)位,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-02-02
  • Java二維碼登錄流程實(shí)現(xiàn)代碼(包含短地址生成,含部分代碼)

    Java二維碼登錄流程實(shí)現(xiàn)代碼(包含短地址生成,含部分代碼)

    近年來(lái),二維碼的使用越來(lái)越風(fēng)生水起,本篇文章主要介紹了Java二維碼登錄流程實(shí)現(xiàn)代碼,其中包含短地址生成,有興趣的可以了解一下。
    2016-12-12
  • Java線程池的拒絕策略實(shí)現(xiàn)詳解

    Java線程池的拒絕策略實(shí)現(xiàn)詳解

    這篇文章主要介紹了Java線程池的拒絕策略實(shí)現(xiàn)詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-09-09
  • 解決Netty解碼http請(qǐng)求獲取URL亂碼問(wèn)題

    解決Netty解碼http請(qǐng)求獲取URL亂碼問(wèn)題

    這篇文章主要介紹了解決Netty解碼http請(qǐng)求獲取URL亂碼問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06

最新評(píng)論