java基礎(chǔ)視頻(解壓后)百度網(wǎng)盤資源免費(fèi)下載
在夷陵等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè) 網(wǎng)站設(shè)計(jì)制作按需網(wǎng)站策劃,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站設(shè)計(jì),成都營(yíng)銷網(wǎng)站建設(shè),成都外貿(mào)網(wǎng)站建設(shè)公司,夷陵網(wǎng)站建設(shè)費(fèi)用合理。
鏈接:
提取碼:inaz ?
java基礎(chǔ)視頻(解壓后)|第9章:枚舉注解(day14)|第8章:泛型(day14)|第7章:Java集合(day12-day13)|第6章:異常處理(day11-day12)|第5章:高級(jí)類特性2(day09-day11)|第4章:高級(jí)類特性1(day07-day09)|第3章:面向?qū)ο缶幊?day05-day07)|第2章:基本語法(day01-day04)|第1章:Java語言概述(day01)|第14章:網(wǎng)絡(luò)編程(day20)|第13章:Java反射機(jī)制(day19-day20)|第12章:Java常用類(day18)|第11章:多線程(day16-day17)|第10章:IO(day15-day16)?
視頻上傳不就是文件上傳么,你只要注意好保存了路徑就好了,播放使用正常html代碼就可以,要是使用jsp的話就是用個(gè)el表達(dá)式去判斷是否視頻文件存在,如果存在就創(chuàng)建一段代碼
樓主你好,可以試試這個(gè)
import javax.media.ControllerEvent;
import javax.media.ControllerListener;
import javax.media.EndOfMediaEvent;
import javax.media.PrefetchCompleteEvent;
import javax.media.RealizeCompleteEvent;
import javax.media.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class MediaPlayer extends JFrame implements ActionListener,
ItemListener, ControllerListener {
String title;
Player player;
boolean first = true, loop = false;
Component vc, cc;
String currentDirectory=null;
// 構(gòu)造函數(shù),其中包括了設(shè)置響應(yīng)窗口事件的監(jiān)聽器。
MediaPlayer(String title) {
super(title);
/* 關(guān)閉按鈕的實(shí)現(xiàn)。。 */
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
dispose();
}
public void windowClosed(WindowEvent e) {
if (player != null)
player.close();
System.exit(0);
}
});
// 調(diào)用程序菜單欄的方法成員完成菜單的布置
setupMenu();
setSize(400, 400);
setVisible(true);
}
// 本方法用以設(shè)置程序菜單欄
public void setupMenu() {
// 設(shè)置一個(gè)菜單
Menu f = new Menu("文件");
// 往設(shè)置的菜單添加菜單項(xiàng)
MenuItem mi = new MenuItem("打開");
f.add(mi);
mi.addActionListener(this);
f.addSeparator();
CheckboxMenuItem cbmi = new CheckboxMenuItem("循環(huán)", false);
cbmi.addActionListener(this);
f.add(cbmi);
f.addSeparator();
MenuItem ee = new MenuItem("退出");
ee.addActionListener(this);
f.add(ee);
f.addSeparator();
Menu l = new Menu("播放列表");
Menu c = new Menu("播放控制");
MenuItem move = new MenuItem("播放");
move.addActionListener(this);
c.add(move);
c.addSeparator();
MenuItem pause = new MenuItem("暫停");
pause.addActionListener(this);
c.add(pause);
c.addSeparator();
MenuItem stop = new MenuItem("停止");
stop.addActionListener(this);
c.add(stop);
c.addSeparator();
// 設(shè)置一個(gè)菜單欄
MenuBar mb = new MenuBar();
mb.add(f);
mb.add(c);
mb.add(l);
// 將構(gòu)造完成的菜單欄交給當(dāng)前程序的窗口;
setMenuBar(mb);
}
// 動(dòng)作時(shí)間響應(yīng)成員;捕捉發(fā)送到本對(duì)象的各種事件;
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
String cufile, selectfile, currentDirectory;
if (e.getActionCommand().equals("退出")) {
// 調(diào)用dispose以便執(zhí)行windowClosed
dispose();
return;
}
// 此事表明擁護(hù)選擇了“播放”命令;
// 如果當(dāng)前有一個(gè)文件可以播放則執(zhí)行播放命令;
if (e.getActionCommand().equals("播放")) {
if (player != null) {
player.start();
}
return;
}
// 如果當(dāng)前正在播放某一文件,則執(zhí)行暫停;
if (e.getActionCommand().equals("暫停")) {
if (player != null) {
player.stop();
}
return;
}
// 停止命令的響應(yīng);
if (e.getActionCommand().equals("停止")) {
if (player != null) {
player.stop();
player.setMediaTime(new Time(0));
}
return;
}
// 用戶選擇要播放的媒體文件
if (e.getActionCommand().equals("打開")) {
FileDialog fd = new FileDialog(this, "打開媒體文件", FileDialog.LOAD);
// fd.setDirectory(currentDirectory);
fd.setVisible(true);
// 如果用戶放棄選擇文件,則返回
if (fd.getFile() == null) {
return;
}
// 保存了所選文件的名稱及其路徑名稱已被稍后使用
// 同時(shí)設(shè)置當(dāng)前文件夾路徑
selectfile = fd.getFile();
currentDirectory = fd.getDirectory();
cufile = currentDirectory + selectfile;
// 將用戶選擇的文件作為一個(gè)菜單項(xiàng)加入播放列表,該菜單項(xiàng)名為該文件名;
// 被點(diǎn)擊后給出的命令串是該文件的全路徑名
MenuItem mi = new MenuItem(selectfile);
mi.setActionCommand(cufile);
MenuBar mb = getMenuBar();
Menu m = mb.getMenu(2);
mi.addActionListener(this);
m.add(mi);
} else {
// 程序邏輯運(yùn)行到次表示用戶選擇了一個(gè)“播放列表”中的媒體文件
// 此時(shí)可以通過如下動(dòng)作獲得該文件的全路徑名
cufile = e.getActionCommand();
selectfile = cufile;
}
// 如果存在一個(gè)播放器,則先將其關(guān)閉,稍后再重新創(chuàng)建
// 創(chuàng)建播放器時(shí)需要捕捉一些異常
if (player != null) {
player.close();
}
try {
player = Manager.createPlayer(new MediaLocator("file:" + cufile));
} catch (Exception e2) {
System.out.println(e2);
return;
}/*
* catch(NoPlayerException e2){ System.out.println("不能找到播放器");
* return ; }
*/
if (player == null) {
System.out.println("無法創(chuàng)建播放器");
return;
}
first = false;
setTitle(selectfile);
// 設(shè)置處理播放控制器實(shí)際的對(duì)象;
/**/
player.addControllerListener(this);
player.prefetch();
}
// 菜單狀態(tài)改變事件的響應(yīng)函數(shù);
public void itemStateChanged(ItemEvent arg0) {
// TODO Auto-generated method stub
}
public static void main(String[] args) {
// TODO Auto-generated method stub
new MediaPlayer("播放器");
}
// 調(diào)用繪圖函數(shù)進(jìn)行界面的繪制
// public void update() {
// }
// 繪圖函數(shù)成員
//public void paint(Graphics g) {
// }
public void controllerUpdate(ControllerEvent e) {
// TODO Auto-generated method stub
Container tainer = getContentPane();
// 調(diào)用player.close()時(shí)ControllerClosedEvent事件出現(xiàn)
// 如果存在視覺部件,則該部件應(yīng)該拆除(為了一致起見,我們對(duì)控制面版部件也執(zhí)行同樣的操作,下一次需要時(shí)再構(gòu)造)
if (e instanceof ControllerClosedEvent) {
if (vc != null) {
remove(vc);
vc = null;
}
if (cc != null) {
remove(cc);
cc = null;
}
}
// 播放結(jié)束時(shí),將播放指針置于文件之首,如果設(shè)定了循環(huán)播放,則再次啟動(dòng)播放器;
if (e instanceof EndOfMediaEvent) {
player.setMediaTime(new Time(0));
if (loop) {
player.start();
}
return;
}
// PrefetchCompletEvent事件發(fā)生后調(diào)用start,正式啟動(dòng)播放
if (e instanceof PrefetchCompleteEvent) {
player.start();
return;
}
// 本事件表示由于播放的資源已經(jīng)確定;此時(shí)要將媒體的圖形conmopnent
// 如果有顯示出來,同時(shí)將播放器player的控制顯示到窗口里;
if (e instanceof RealizeCompleteEvent) {
// 如果媒體中有圖像,將對(duì)應(yīng)圖像component載入窗體;
vc = player.getVisualComponent();
if (vc != null)
tainer.add(vc, BorderLayout.CENTER);
// 將對(duì)應(yīng)控制器component載入窗體;
cc = player.getControlPanelComponent();
cc.setBackground(Color.blue);
if (cc != null)
tainer.add(cc, BorderLayout.SOUTH);
// 有一些特殊媒體在播放時(shí)提供另外的控制手段,將控制器一并加入窗口;
/*
* gc=player.getGainControl(); gcc=gc.getControlComponent();
* if(gcc!=null) tainer.add(gcc,BorderLayout.NORTH);
*/
// 根據(jù)媒體文件中是否有圖像,設(shè)定相應(yīng)的窗口大小
if (vc != null) {
pack();
return;
} else {
setSize(300, 75);
setVisible(true);
return;
}
}
}
}
《mars java開發(fā)視頻》百度網(wǎng)盤資源免費(fèi)下載
鏈接:
提取碼:6eug
mars java開發(fā)視頻|Java當(dāng)中的異常(一).mp4|Java4Android_01_ppt.png|53.mp4|52_定義輸入輸出格式.mp4|51_綜合練習(xí)(二).mp4|50_綜合練習(xí)(一).mp4|49_開發(fā)工具之Eclipse(四).mp4|48_開發(fā)工具之Eclipse(三).mp4|47_開發(fā)工具之Eclipse(二).mp4|46_開發(fā)工具之Eclipse(一).mp4|45_hashCode()與toString().mp4|44_equals函數(shù)的作用.mp4|43_類集框架(三).mp4|42_類集框架(二).mp4 ?
Docker視頻免費(fèi)下載
鏈接:
提取碼:1r9g
Docker視頻|走進(jìn)Docker|從Docker到CaaS(一)Docker集群管理介紹|從Docker到CaaS(三)Kubernetes|從Docker到CaaS(六)微服務(wù)與CaaS|從Docker到CaaS(二)Docker 容器管理工具|從 Docker 到 CaaS(五)靈雀云部署 Docker 容器|
《第一行代碼Java視頻講解版》百度網(wǎng)盤pdf最新全集下載:
鏈接:
?pwd=t7i1 提取碼: t7i1
簡(jiǎn)介:第一行代碼 Java 視頻講解版從初學(xué)者的角度,以豐富的例子、通俗易懂的語言、簡(jiǎn)單的圖示,詳細(xì)地介紹了Java開發(fā)中重點(diǎn)用到的多種技術(shù)。全書分為15章,包括Java簡(jiǎn)介、程序基本概念、面向?qū)ο蠡靖拍?、面向?qū)ο蟾呒?jí)知識(shí)、包及訪問控制權(quán)限、異常的捕獲及處理、Eclipse開發(fā)工具、Java新特性、多線程、Java常用類庫(kù)、Java IO編程、Java網(wǎng)絡(luò)編程、Java類集框架、Java數(shù)據(jù)庫(kù)編程、DAO設(shè)計(jì)模式等內(nèi)容。? ?