真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

java上傳圖片功能代碼 java上傳圖片到tomcat

請問用Java 如何實現(xiàn)圖片上傳功能 ?

我有一段上傳圖片的代碼,并且可以根據(jù)實際,按月或按天等,生成存放圖片的文件夾

創(chuàng)新互聯(lián)專注于企業(yè)成都營銷網(wǎng)站建設、網(wǎng)站重做改版、偃師網(wǎng)站定制設計、自適應品牌網(wǎng)站建設、html5商城開發(fā)、集團公司官網(wǎng)建設、成都外貿網(wǎng)站建設、高端網(wǎng)站制作、響應式網(wǎng)頁設計等建站業(yè)務,價格優(yōu)惠性價比高,為偃師等各大城市提供網(wǎng)站開發(fā)制作服務。

首先在JSP上放一個FILE的標簽這些我都不說了,你也一定明白,我直接把處理過程給你發(fā)過去

我把其中存到數(shù)據(jù)庫中的內容刪除了,你改一下就能用

/**

*

* 上傳圖片

* @param servlet

* @param request

* @param response

* @return

* @throws Exception

*/

//這里我是同步上傳的,你隨意

public synchronized String importPic(HttpServlet servlet, HttpServletRequest request,HttpServletResponse response) throws Exception {

SimpleDateFormat formatDate = new SimpleDateFormat("yyyyMM");

Date nowtime=new Date();

String formatnowtime=formatDate.format(nowtime);

File root = new File(request.getRealPath("/")+"uploadfile/images/"+formatnowtime+"/"); //應保證在根目錄中有此目錄的存在 如果沒有,下面則上創(chuàng)建新的文件夾

if(!root.isDirectory())

{

System.out.println("創(chuàng)建新文件夾成功"+formatnowtime);

root.mkdir();

}

int returnflag = 0;

SmartUpload mySmartUpload =new SmartUpload();

int file_size_max=1024000;

String ext="";

String url="uploadfile/images/"+formatnowtime+"/";

// 只允許上載此類文件

try{

// 初始化

mySmartUpload.initialize(servlet.getServletConfig(),request,response);

mySmartUpload.setAllowedFilesList("jpg,gif,bmp,jpeg,png,JPG");

// 上載文件

mySmartUpload.upload();

} catch (Exception e){

response.sendRedirect()//返回頁面

}

com.jspsmart.upload.File myFile = mySmartUpload.getFiles().getFile(0);

if (myFile.isMissing()){ //沒有選擇圖片做提示!

returnflag = 3;

}else{

String myFileName=myFile.getFileName(); //取得上載的文件的文件名

ext= myFile.getFileExt(); //取得后綴名

if(ext.equals("jpg")||ext.equals("gif")||ext.equals("bmp")||ext.equals("jpeg")||ext.equals("png")||ext.equals("JPG")){ //jpeg,png不能上傳!)

int file_size=myFile.getSize(); //取得文件的大小

String saveurl="";

if(file_sizefile_size_max){

try{

//我上面說到,把操作數(shù)據(jù)庫的代友刪除了,這里就應該是判斷,你的圖片是不是已經(jīng)存在了,存在要怎么處理,不存在要怎么處了,就是你的事了 }

//更改文件名,取得當前上傳時間的毫秒數(shù)值

Calendar calendar = Calendar.getInstance();

//String filename = String.valueOf(calendar.getTimeInMillis());

String did = contractBean.getMaxSeq("MULTIMEDIA_SEQ");

String filename = did;

String flag = "0";

String path = request.getRealPath("/")+url;

String ename = myFile.getFileExt();

//.toLowerCase()轉換大小寫

saveurl=request.getRealPath("/")+url;

saveurl+=filename+"."+ext; //保存路徑

myFile.saveAs(saveurl,mySmartUpload.SAVE_PHYSICAL);

//將圖片信息插入到數(shù)據(jù)庫中

// ------上傳完成,開始生成縮略圖-----

java.io.File file = new java.io.File(saveurl); //讀入剛才上傳的文件

String newurl=request.getRealPath("/")+url+filename+"_min."+ext; //新的縮略圖保存地址

Image src = javax.imageio.ImageIO.read(file); //構造Image對象

float tagsize=200;

int old_w=src.getWidth(null);

int old_h=src.getHeight(null);

int new_w=0;

int new_h=0;

int tempsize;

float tempdouble;

if(old_wold_h){

tempdouble=old_w/tagsize;

}else{

tempdouble=old_h/tagsize;

}

// new_w=Math.round(old_w/tempdouble);

// new_h=Math.round(old_h/tempdouble);//計算新圖長寬

new_w=150;

new_h=110;//計算新圖長寬

BufferedImage tag = new BufferedImage(new_w,new_h,BufferedImage.TYPE_INT_RGB);

tag.getGraphics().drawImage(src,0,0,new_w,new_h,null); //繪制縮小后的圖

FileOutputStream newimage=new FileOutputStream(newurl); //輸出到文件流

JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(newimage);

encoder.encode(tag); //近JPEG編碼

newimage.close();

returnflag = 1;

}else{

returnflag = 0;

System.out.println("('上傳文件大小不能超過"+(file_size_max/1000)+"K');");

}

}else{

returnflag = 2;

}

}

response.sendRedirect();

return "11";

}

解釋一下這段JAVA 關于圖片上傳的代碼

private File file;

private String fileFileName;

private String picture;

//都有getter 和 setter

InputStream is = new FileInputStream(file);

//引入一個IO流的輸入流

String root = ServletActionContext.getRequest()

.getRealPath("/bookpicture");

//通過REQUEST來得到相對地址,并在后面加上/bookpicture

File f = new File(root, this.getFileFileName());

//定義一個FILE文件,第一個參數(shù)是文件的路徑,第二個是文件的名字

picture="."+"\\"+"bookpicture"+"\\"+this.getFileFileName();

//為PICTURE字符串賦值,/地址/文件名

System.out.println

("======picture====="+picture);

//從控制臺輸出Picture

OutputStream os = new FileOutputStream(f);

//第一個文件的輸出流

byte[] buffer = new byte[1024];

//定義一個bufer的字符串,長度為1024

int len = 0;

while ((len = is.read(buffer)) 0) {

//如果從制定文件中讀取到的信息為結束就繼續(xù)循環(huán)

os.write(buffer, 0, len);

//將文件讀出的內容寫入到指定的文件中

}

求JAVA上傳圖片代碼

public String imagesUpload(){

log.debug("images upload");

if(files == null){

saveMessage("沒有上傳任何文件!");

return ERROR;

}

// 查看上傳臨時目錄是否存在

String sep = File.separator;

String condPath = sep + "upload" + sep +"tmp" +sep;

String uploadDir = ServletActionContext.getServletContext().getRealPath(condPath) + sep;

File dirPath = new File(uploadDir);

if (!dirPath.exists())

dirPath.mkdirs();

String extension, fileName;

int count = 0;

StringBuilder picNameSB = new StringBuilder("");

ListString picNamesSet = new ArrayListString();

try{

for(File tempFile : files){

if(count0)

picNameSB.append("##");

extension = UserUtil.getFileExtension(filesFileName[count]);

fileName = generatePictureName(uploadDir, doType + count, extension);

File newFile = new File(fileName);

UserUtil.copyFileContent(tempFile,newFile);

picNamesSet.add(newFile.getName());

picNameSB.append(newFile.getName());

count++ ;

}

getSession().setAttribute("picNamesSet",picNamesSet);

picName = picNameSB.toString();

}catch(IOException e){

e.printStackTrace();

return ERROR;

}

int x= 1;

return SUCCESS;

}

private String generatePictureName(final String dir, final String suffix, final String fileExtension){

StringBuffer name = new StringBuffer(dir);

String tmpFileName = String.valueOf(System.currentTimeMillis());

if(suffix != null)

tmpFileName += suffix;

tmpFileName += "." + fileExtension;

name.append(tmpFileName);

return name.toString();

}


網(wǎng)站題目:java上傳圖片功能代碼 java上傳圖片到tomcat
標題URL:http://weahome.cn/article/dohccgp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部