Ⅰ javaweb中實現文件上傳完整代碼(servlet裡面dopost的代碼)
structs
的
jsp
頁面文件上傳表單,只要項目是SSH的就行了
jsp:
<s:form
action="add.do"
id="inputForm"
enctype="multipart/form-data"
>
<td
>
<s:file
name="upload"
cssClass="{required:true}"
contenteditable="false"></s:file>
<span
class="field_tipinfo">請選擇文件</span>
</td>
</s:form
action:
private
File
upload;//上傳的文件
....
public
String
add()
throws
Exception
{
//保存文件
save(upload);
}
...
Ⅱ 在Java項目中上傳圖片時如何使上傳的圖片自動保存到指定路徑
用struts也可以實現 多文件上傳
下面是我寫的代碼,
參數中有要保存的目錄
作為參考!
/*文件目錄*/
public static String [] fileArray={
"logo.png",
"index.swf",
"OEMInfo.txt",
"favicon.ico"};
/**
* @author Caoshun
* @see 接收並保存文件
* */
public static void receiveAndSaveAllFileByPath(ActionForm form,String rootPath1,String rootPath2){
String fileName="";
//獲取表單中的文件資源
Hashtable<Object, Object> files = form.getMultipartRequestHandler().getFileElements();
//遍歷文件,並且循環保存
//當前處理文件序號
int file_num=1;
for (Enumeration<Object> e = files.keys(); e.hasMoreElements();) {
/*根據處理的當前文件下標,確定文件名*/
fileName=fileArray[file_num-1];
FormFile file = (FormFile) files.get((String) e.nextElement());
if (file != null && file.getFileSize() > 0) {
try {
//使用formfile.getInputStream()來獲取一個文件的輸入流進行保存。
//文件名
//String fileName = file.getFileName();
//System.out.println("debug in AddEnterpriceAction.java on line 152 fileName is : "+fileName);
//文件大小
//int fileSize = file.getFileSize();
//文件流
InputStream is = file.getInputStream();
//將輸入流保存到文件
//String rootPath = this.servlet.getServletContext().getRealPath("files");
//往cn中寫入
File rf = new File(rootPath1);
FileOutputStream fos = null;
fos = new FileOutputStream(new File(rf, fileName));
byte[] b = new byte[10240];
int real = 0;
real = is.read(b);
while (real > 0) {
fos.write(b, 0, real);
real = is.read(b);
}
//往en中寫入
File rf2 = new File(rootPath2);
InputStream is2 = file.getInputStream();
FileOutputStream fos2 = null;
fos2 = new FileOutputStream(new File(rf2, fileName));
byte[] b2 = new byte[10240];
int real2 = 0;
real2 = is2.read(b2);
while (real2 > 0) {
fos2.write(b2, 0, real2);
real2 = is2.read(b2);
}
//關閉文件流
fos.close();
is.close();
fos2.close();
is2.close();
} catch (RuntimeException e1) {
e1.printStackTrace();
} catch (Exception ee) {
ee.printStackTrace();
}
file.destroy();
}
file_num++;
}
}
Ⅲ struts 後台action得到的數據怎麼傳到前台jsp中
有以下常用的幾種
將數據賦給action的成員變數,自動會傳到前台jsp
action方法參數設成map,然後將數據放到map中,會帶到前台jsp
action方法中,通過request.setattribute即可
Ⅳ 用Java寫上傳文件(圖片)
首先希望我的回答能給你帶來幫助
首先寫一個上傳類
public class procts_shang_chuang {
public static boolean GOTO(String paht,FormFile file)
{
boolean bool =false;
int betered = 0;
byte[] buufer = new byte [2042];
if(file.getFileSize()>0&&file.getFileSize()<500000)
{
try {
InputStream in = file.getInputStream();//寫入文件
OutputStream out = new FileOutputStream(paht);
while((betered=in.read(buufer, 0, 2042))!=-1)
{
out.write(buufer, 0, betered);//將文件寫入伺服器
}
in.close();
out.close();
bool = true;
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
bool = false;
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
bool = false;
e.printStackTrace();
}
}
return bool;
}
public static boolean delete_file(String path)
{
File file = new File(path);
boolean bool = false;
if(file.isFile())
{
System.out.println("文件存在");
bool = file.delete();
}
return bool;
}
}
這個類主要是上傳和刪除圖片的類
那麼下來直接調用就可以了 通過頁面往action中提交數據
if(form instanceof Procts_addForm)//如果form是FilesForm
{
String engding = request.getCharacterEncoding();
if((engding != null) && (engding.equalsIgnoreCase("utf-8")))
{
response.setContentType("text/html; charset=gb2312");//如果沒有指定編碼,編碼格式為gb2312
}
FormFile file = procts_addForm.getFiles();
inpa = Huoqu_weiyi_biaoshi.getUniqueId();
String path = request.getRealPath("/guanliyuan/ji_zhu_procts_img/"+(inpa+file.getFileName()));
System.out.println(path);
String name = file.getFileName();
inpa = "/guanliyuan/ji_zhu_procts_img/"+inpa+file.getFileName();
bool = procts_shang_chuang.GOTO(path, file);
}
這樣就把圖片上傳上去了 仔細看看 批量上傳和這個一樣只是需要做一點點的改動而已
有什麼不明白的可以聯系我Q號:549726411
Ⅳ java 怎麼在客戶端把客戶端一個文件上傳到web伺服器上
遠程桌面連接到A就行了
Ⅵ java培訓都講什麼東西
Java培訓要學習的內容還是很多的,下面我們來看一下全日制面授班5-6個月的培訓Java要學習哪些知識:
第一階段:Java核心基礎
可掌握的技能
1深入理解Java面向對象思想
2掌握開發中常用基礎API
3熟練使用集合框架、IO流、異常
4能夠基於JDK8開發
課程設計特色
本階段除了JavaSE中要求大家必會的java基礎知識外,重點加強了數據結構思想、集合源碼分析、jdk9-11新特性的介紹,讓學員不光「知其然,還要知其所以然」,從最開始便培養學員深入學習和架構思維能力。
第二階段:資料庫關鍵技術
可掌握的技能
1掌握最流行關系型數據MySQL常見操作
2熟練增刪改查數據處理
3掌握Java JDBC、連接池操作
課程設計特色
我們選擇市面最流行的MySQL資料庫來開展本階段資料庫知識的學習,層層遞進,讓大家掌握開發使用的數據是如何存儲和處理的。並且逐步深入學習到索引和優化、鎖機制、存儲過程等。
第三階段:web網頁技術
可掌握的技能
1掌握基本的JavaWeb基礎知識JSP/Servlet/jQuery等
2具備基本的B/S結構軟體開發能力
3可以動手開發一個B/S架構的Web項目
課程設計特色
本階段以項目案例為驅動,採用所學即所用的方式指導大家學習,在邊學邊練過程中,可深入掌握Web開發技術,具備與之匹配的實戰能力。
第四階段:開發必備框架
可掌握的技能
1掌握SSM框架技術
2掌握使用Maven進行模塊的開發
3熟悉基本的Linux命令以及Linux伺服器的使用
4掌握高級緩存技術Redis的原理,並熟練使用
課程設計優勢
SSM框架的學習和框架設計,入門門檻都太高,理解起來晦澀。課程抓住這兩個痛點。 通過從0搭建一個較為完備的web框架來提升自己的開發能力,同時能夠管中窺豹,去了解SSM框架的設計思路,再輔以通俗易懂的Spring和mybatis核心模塊源碼的講解,將課程門檻拉低, 讓大家通過學習本門課程後能夠通過自己學習讀懂Spring乃至其他框架的源碼。 本課程的目標是:讓新手學到技術,讓老手學到思想,讓高手學到境界。
第五階段:互聯網高級技術
可掌握的技能
分布式管理系統、Keepalived+Nginx主備、微服務架構技術、消息中間件技術、MySQL調優、高並發技術、性能優化、內存和GC等
課程設計優勢
本課程由一線大廠技術大咖與尚矽谷組成專家團隊精心打磨,並定期更新,囊括企業面試和開發中主流前沿的技術,涵蓋Java開發工程師不同成長階段的問題及優選解決方案。每個熱門技術當做單課深入講解,而非某些機構只是一帶而過,或項目中簡單使用。
相信只有讓學員可以系統學習和掌握核心技術,才能在面試和開發中脫穎而出。
第六階段:大型企業項目
項目設計特色
該課程項目是一套完整的、經企業大咖和教研團隊精心挑選打磨的項目體系。以電商、金融、醫療、教育、旅遊等主流行業為核心載體,採用當下最熱門的微服務架構SpringCloud和前端架構Vue,每個項目同時又各有側重。最終打造成全網稀缺的一整套系統開發課程和企業級項目真實開發流程,「好貨不怕看」,每個項目都有對應配套項目視頻,可以體驗。技術全面前沿,深入展開,對標阿里p7,業務真實還原企業開發解決方案,而非某些機構僅僅只是技術堆砌,只打口號。學習期間帶你實戰移動端、PC端、H5等多終端的系統,本系統可對接各類真實業務系統,如金融、電商、預約掛號、在線學習等各行業的業務系統,為系統對接上支持微信、支付寶、銀聯、融合支付、混合支付等多種企業級支付模式,讓你的系統一鍵支持【支付】功能。互聯網未來潛力已毋庸置疑。學習系統的核心業務特色,掌握微服務架構技術、前後端技術,刻不容緩。