培训第29天----Struts2框架初识(3)

            今天就写一个知识点吧-----图片的复制

一.通过表单来复制图片

        1.前台表单提交所要复制的文件 

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>上传文件</title>
</head>
<body>
     <!-- 利用form表单上传文件 -->
     <form action="fileAction" method="post" enctype="multipart/form-data">
     	<table>
     		<tr><input type="file" name="upFile"/></tr>
     		<tr><input type="submit" value="上传"/>
     	</table>
     </form>
</body>
</html>

 

         2.利用Action来做复制图片的操作

package com.java.Controller;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

import org.apache.struts2.ServletActionContext;

import com.opensymphony.xwork2.ActionSupport;

public class FileAction extends ActionSupport{
	   //利用属性驱动获得传过来的值
	   private File upFile;
	   //代理之前的文件名称
	   private String upFileFileName;
	   
	   //set方法名 一定要与前台的name名称要相对应
	   public void setUpFile(File upFile) {
		this.upFile = upFile;
	}
	   
	   public void setUpFileFileName(String upFileFileName) {
		this.upFileFileName = upFileFileName;
	}


	@Override
        //图片复制
       public String execute() throws IOException {
		  //得到绝对路径
		  String jdlj=ServletActionContext.getServletContext().getRealPath("upFile");
		  System.out.println();
    	  //用流方式读取表单发送过来的文件
		  InputStream inputStream=new FileInputStream(upFile);
		  //定义要拷贝文件的目的地,要文件的后缀名
		  File url=new File(jdlj+"\\"+upFileFileName);
		  OutputStream outputStream=new FileOutputStream(url);
		  int read;
		  while((read = inputStream.read())!=-1) {
			  outputStream.write(read);
		  }
		  inputStream.close();
		  outputStream.close();
		  return NONE;
       }
}

       3.struts2必不可少的struts.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
	"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
	"http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>
	<package name="com.java.controller" namespace="/" extends="struts-default">
		<action name="fileAction" class="com.java.Controller.FileAction">
			<result name = "success"></result>
		</action>
	</package>
</struts>

             一会还要学英语,时间快到了。-----争取明天把今天少写的知识点补回来。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值