dwr-Ajax 오픈 소스 프레임워크

6091 단어 dwrJ2EE/CSS/JQuery
dwr 전체 명칭 Direct 웹 Remoting 원리는 자바 코드를 js 대상으로 바꾸어 전역 접근을 실현한다
web.xml



DWR (Direct Web Remoting)
  A Simple Demo DWR

  
    org.directwebremoting.servlet.DwrListener
  
  
  
    dwr-invoker
    org.directwebremoting.servlet.DwrServlet
    
    
      debug
      true
    
  
    1
  
   
  
    dwr-invoker
    /dwr/*
      

dwr.xml

dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 3.0//EN" "http://getahead.org/dwr/dwr30.dtd">



  

    

    
    
      
    
    
    
    
    
    


  

package org.konghao.dwr.model;

import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;

import javax.servlet.http.HttpServletRequest;

import org.apache.commons.io.FileUtils;
import org.apache.commons.io.FilenameUtils;
import org.directwebremoting.WebContext;
import org.directwebremoting.WebContextFactory;

public class MyDwr {
    public String hello(String world) {
        System.out.println("hello "+world);
        return "hello "+world;
    }
    
    public User load() {
        User u = new User(1,"  ",new Group(1,"   "));
        return u;
    }
    
    public List list() {
        List users = new ArrayList();
        users.add(new User(1,"  ",new Group(1,"   ")));
        users.add(new User(2,"  ",new Group(2,"   ")));
        users.add(new User(3,"  ",new Group(3,"   ")));
        return users;
    }
    
    public void add(User user) {
        System.out.println(user);
    }

    public void deleteUser() {
        throw new MyException("          ");
    }
    
    public int add(int a,int b) {
        return a+b;
    }
    
    public String upload(InputStream is,String filename) throws IOException {
        //WebContext    HttpServlet   
        WebContext wc = WebContextFactory.get();
        HttpServletRequest req = wc.getHttpServletRequest();
        String realpath = req.getSession().getServletContext().getRealPath("upload");
        String fn = FilenameUtils.getName(filename);
        String filepath = realpath+"/"+fn;
        FileUtils.copyInputStreamToFile(is, new File(filepath));
        return filepath;
    }
}
package org.konghao.dwr.model;

public class MyException extends RuntimeException {

    public MyException() {
        super();
        // TODO Auto-generated constructor stub
    }

    public MyException(String message, Throwable cause) {
        super(message, cause);
        // TODO Auto-generated constructor stub
    }

    public MyException(String message) {
        super(message);
        // TODO Auto-generated constructor stub
    }

    public MyException(Throwable cause) {
        super(cause);
        // TODO Auto-generated constructor stub
    }

}
package org.konghao.dwr.model;

public class User {
    private int id;
    private String username;
    private Group group;
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getUsername() {
        return username;
    }
    public void setUsername(String username) {
        this.username = username;
    }
    public Group getGroup() {
        return group;
    }
    public void setGroup(Group group) {
        this.group = group;
    }
    public User(int id, String username, Group group) {
        super();
        this.id = id;
        this.username = username;
        this.group = group;
    }
    public User() {
        super();
    }
    @Override
    public String toString() {
        return "User [id=" + id + ", username=" + username + ", group=" + group
                + "]";
    }
}
package org.konghao.dwr.model;

public class Group {
    private int id;
    private String name;
    
    
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public Group(int id, String name) {
        super();
        this.id = id;
        this.name = name;
    }
    public Group() {
        super();
    }
    @Override
    public String toString() {
        return "Group [id=" + id + ", name=" + name + "]";
    }
    
    
}

새로 고침 없이 파일 업로드

html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">



Insert title here
/dwr/engine.js">
/dwr/util.js">
/dwr/interface/MyDwr.js">

function upload() {
    var file = dwr.util.getValue("myfile");
    alert(file.value);
    alert(file);
    MyDwr.upload(file,file.value,function(data){
        alert(data);
    });
}



        
    

좋은 웹페이지 즐겨찾기