⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 page1.java

📁 能够实现基本的文件上传
💻 JAVA
字号:
/* * To change this template, choose Tools | Templates * and open the template in the editor. */package fileuploadexample;import com.sun.rave.web.ui.appbase.AbstractPageBean;import com.sun.webui.jsf.component.Button;import com.sun.webui.jsf.component.ImageComponent;import com.sun.webui.jsf.component.Label;import com.sun.webui.jsf.component.MessageGroup;import com.sun.webui.jsf.component.StaticText;import com.sun.webui.jsf.component.Upload;import com.sun.webui.jsf.model.UploadedFile;import java.io.File;import javax.faces.FacesException;/** * <p>Page bean that corresponds to a similarly named JSP page.  This * class contains component definitions (and initialization code) for * all components that you have defined on this page, as well as * lifecycle methods and event handlers where you may add behavior * to respond to incoming events.</p> * * @version Page1.java * @version Created on 2009-5-4, 15:31:10 * @author Administrator */public class Page1 extends AbstractPageBean {    private String realImageFilePath;               private static final String IMAGE_URL = "/resources/image-file";    // <editor-fold defaultstate="collapsed" desc="Managed Component Definition">    /**     * <p>Automatically managed component initialization.  <strong>WARNING:</strong>     * This method is automatically generated, so any user-specified code inserted     * here is subject to being replaced.</p>     */    private void _init() throws Exception {    }    private Label label1 = new Label();    public Label getLabel1() {        return label1;    }    public void setLabel1(Label l) {        this.label1 = l;    }    private Label label2 = new Label();    public Label getLabel2() {        return label2;    }    public void setLabel2(Label l) {        this.label2 = l;    }    private Label label3 = new Label();    public Label getLabel3() {        return label3;    }    public void setLabel3(Label l) {        this.label3 = l;    }    private Upload fileUpload1 = new Upload();    public Upload getFileUpload1() {        return fileUpload1;    }    public void setFileUpload1(Upload u) {        this.fileUpload1 = u;    }    private StaticText staticText2 = new StaticText();    public StaticText getStaticText2() {        return staticText2;    }    public void setStaticText2(StaticText st) {        this.staticText2 = st;    }    private StaticText fileNameStaticText = new StaticText();    public StaticText getFileNameStaticText() {        return fileNameStaticText;    }    public void setFileNameStaticText(StaticText st) {        this.fileNameStaticText = st;    }    private StaticText fileTypeStaticText = new StaticText();    public StaticText getFileTypeStaticText() {        return fileTypeStaticText;    }    public void setFileTypeStaticText(StaticText st) {        this.fileTypeStaticText = st;    }    private StaticText fileSizeStaticText = new StaticText();    public StaticText getFileSizeStaticText() {        return fileSizeStaticText;    }    public void setFileSizeStaticText(StaticText st) {        this.fileSizeStaticText = st;    }    private ImageComponent image1 = new ImageComponent();    public ImageComponent getImage1() {        return image1;    }    public void setImage1(ImageComponent ic) {        this.image1 = ic;    }    private MessageGroup messageGroup1 = new MessageGroup();    public MessageGroup getMessageGroup1() {        return messageGroup1;    }    public void setMessageGroup1(MessageGroup mg) {        this.messageGroup1 = mg;    }    private Button uploadFileButton = new Button();    public Button getUploadFileButton() {        return uploadFileButton;    }    public void setUploadFileButton(Button b) {        this.uploadFileButton = b;    }    // </editor-fold>    /**     * <p>Construct a new Page bean instance.</p>     */    public Page1() {    }    /**     * <p>Callback method that is called whenever a page is navigated to,     * either directly via a URL, or indirectly via page navigation.     * Customize this method to acquire resources that will be needed     * for event handlers and lifecycle methods, whether or not this     * page is performing post back processing.</p>     *      * <p>Note that, if the current request is a postback, the property     * values of the components do <strong>not</strong> represent any     * values submitted with this request.  Instead, they represent the     * property values that were saved for this view when it was rendered.</p>     */    @Override    public void init() {// Perform initializations inherited from our superclass        super.init();// 执行必须在初始化受管组件        //*之前*完成的应用程序初始化        // TODO - 在此处添加您自己的初始化代码// <editor-fold defaultstate="collapsed" desc="由 Visual Web 管理的组件初始化">// 自动初始化受管的组件        // *注意* - 不应修改此逻辑        try {            _init();        } catch (Exception e) {            log("Page1 Initialization Failure", e);            throw e instanceof FacesException ? (FacesException) e : new FacesException(e);        }    }    /**     * <p>Callback method that is called after the component tree has been     * restored, but before any event processing takes place.  This method     * will <strong>only</strong> be called on a postback request that     * is processing a form submit.  Customize this method to allocate     * resources that will be required in your event handlers.</p>     */    @Override    public void preprocess() {    }    /**     * <p>Callback method that is called just before rendering takes place.     * This method will <strong>only</strong> be called for the page that     * will actually be rendered (and not, for example, on a page that     * handled a postback and then navigated to a different page).  Customize     * this method to allocate resources that will be required for rendering     * this page.</p>     */    @Override    public void prerender() {        String uploadedFileName = (String)       this.fileNameStaticText.getValue();       if ( uploadedFileName != null ) {           image1.setUrl(IMAGE_URL);            }    }    /**     * <p>Callback method that is called after rendering is completed for     * this request, if <code>init()</code> was called (regardless of whether     * or not this was the page that was actually rendered).  Customize this     * method to release resources acquired in the <code>init()</code>,     * <code>preprocess()</code>, or <code>prerender()</code> methods (or     * acquired during execution of an event handler).</p>     */    @Override    public void destroy() {    }        /**     * <p>Return a reference to the scoped data bean.</p>     *     * @return reference to the scoped data bean     */    protected SessionBean1 getSessionBean1() {        return (SessionBean1) getBean("SessionBean1");    }    /**     * <p>Return a reference to the scoped data bean.</p>     *     * @return reference to the scoped data bean     */    protected RequestBean1 getRequestBean1() {        return (RequestBean1) getBean("RequestBean1");    }    /**     * <p>Return a reference to the scoped data bean.</p>     *     * @return reference to the scoped data bean     */    protected ApplicationBean1 getApplicationBean1() {        return (ApplicationBean1) getBean("ApplicationBean1");    }    public String uploadFileButton_action() {        //待办事项:执行此操作。返回值为某个导航        //情况名称;如果返回值为空,将返回至同一页面。        UploadedFile uploadedFile = fileUpload1.getUploadedFile();                         if( uploadedFile == null )            return null;        String uploadedFileName = uploadedFile.getOriginalName();        // Some browsers return complete path name, some don't        // Make sure we only have the file name        // First, try forward slash        int index = uploadedFileName.lastIndexOf('/');        String justFileName;        if ( index >= 0) {            justFileName = uploadedFileName.substring( index + 1 );        } else {            // Try backslash            index = uploadedFileName.lastIndexOf('\\');            if (index >= 0) {                justFileName = uploadedFileName.substring( index + 1 );            } else {                // No forward or back slashes                justFileName = uploadedFileName;            }        }        this.fileNameStaticText.setValue(justFileName);        Long uploadedFileSize = new Long(uploadedFile.getSize());        this.fileSizeStaticText.setValue(uploadedFileSize);        String uploadedFileType = uploadedFile.getContentType();        this.fileTypeStaticText.setValue(uploadedFileType);        if ( uploadedFileType.equals("image/jpeg")        || uploadedFileType.equals("image/pjpeg")        || uploadedFileType.equals("image/gif")        || uploadedFileType.equals("image/png")        || uploadedFileType.equals("image/x-png")) {            try {                File file = new File(this.realImageFilePath);                uploadedFile.write(file);            } catch (Exception ex) {                error("Cannot upload file: " + justFileName);            }        } else {            error("You must upload a JPEG, PJPEG, GIF, PNG, or X-PNG file.");            new File(this.realImageFilePath).delete();        }        return null;    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -