web项目的src下有个类 mypackage.mycalss 类里面有方法do()我想在JSP页面中放置一个按钮,一点击按钮就可以实现:
 mycalss my = new mycalss();
 my.do();请问各位大哥如何实现?
我知道这个问题很菜,但是希望能说的越详细越好,因为我真的也很菜~~~~另外还有个问题:如果我的方法do()执行时会输出一些提示信息(System.out.println()),能不能把这些信息即时的显示在当前页面上?谢谢了~~~O(∩_∩)O

解决方案 »

  1.   

    你把你的类继承servlet类吧...然后在service()方法中调用你的do()方法.
      

  2.   

    啊?还需要servlet啊?有没有简单点的方式啊
      

  3.   

    简单就当做一个from提交执行的了。
      

  4.   

    做一个form提交,还是提交到当前页来,然后把do方法的要输出的信息保存在request对象里,当前页在加上从request对象里取处保存信息的部分显示。如果取出来的信息为空那就不显示。
      

  5.   

    在你的当前页面加入<%  %>  在这里写 将你 在方法里 输出的提示信息写在<%= >里面就行了
      

  6.   


    我在JSP页面加上:
    <%@page import="mypackage.*"%>
    <script language="javascript">
    function doMethod(){
    <% myclass class = new mycalss();
    class.do();
    %>
    </script>
    <input type="button" name="btn" value="do" onclick="javascript:doMethod()">可是点击按钮没有反应,哪位帮我改改?
      

  7.   

    这怎么可能调用得到,JS代码不能直接调用JAVA代码,用Ajax吧 。或者做成表单提交
      

  8.   

    你那代码在加载jsp就已经执行了.
      

  9.   

    那样用很奇怪,功能倒是可以实现。用javascript发送action 调用servlet也可以。
      

  10.   

    lz要是理解了BS结构的真谛,就不会问这种问题了。呵呵如果要执行“服务器端”的一个程序,
    bs结构,必须有一个request,
    无论是ajax/servlet/dwr(其实也是ajax),都是这个道理。楼主自己选一个吧。good luck
      

  11.   

    JSP代码是服务器端代码,JS代码是浏览器端代码,一个在服务器上运行,一个在浏览器端运行。
    你发起一个http请求,请求一个jsp,肯定是服务器端代码先得到执行,然后把网页的文本数据发送到浏览器,浏览器解析完毕,js代码则开始在浏览器端执行。整个代码的执行顺序搞明白了,你的问题也就知道该怎么做了。
      

  12.   

    用dwr做,实现是很 简单的!MM加油!
      

  13.   


    大哥,你是什么都不会啊,对web什么都不知道
      

  14.   

    纯属乱盖,看了以上的回帖,程序越来越戏剧化了,缺乏了当年的"JAVA纯真"。先把理论弄清楚吧,路过而已。。
      

  15.   

    用dwr做,我有个现成的实例,留下邮箱。
      

  16.   

    Dwr的简单使用—helloword
    1. 新建工程dwrdemo,将dwr.jar包放入webapp的web-inf/lib目录下。
    2. 编辑配置文件
    1).web.xml
    以下几行代码必须被添加到web-inf/web.xml文件中。
    <servlet>
        <servlet-name>dwr-invoker</servlet-name>   <servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
        <init-param>
          <param-name>debug</param-name>
          <param-value>true</param-value>
        </init-param>
      </servlet>  <servlet-mapping>
        <servlet-name>dwr-invoker</servlet-name>
        <url-pattern>/dwr/*</url-pattern>
      </servlet-mapping>
    2).dwr.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://getahead.org/dwr/dwr20.dtd"><dwr>
      <allow>
       <create creator="new" javascript="service">
          <param name="class" value="helloWorld.Service"/>
        </create>
        
      </allow>
    </dwr>
    3. 编写service方法。
    package helloWorld;public class Service {
    public String sayHello(String yourName){
    return "Hello World" + yourName;
    }
    }
    4. 测试dwr
    将代码放入应用服务器tomcat,启动。
    然后在地址栏输入http://localhost:8080/dwrdemo/dwr
     
    点击service,会看到刚才些的sayHello()方法,输入自己名字,点击“excute“,如果有正确的返回结果,说明测试成功。可以进行下一步。
      

  17.   

    5. 编写jsp。注意在jsp中引入3个重要的js。
    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><html>
    <head>
    <title>dwrdemo</title>
    <script type='text/javascript' src='/dwrdemo/dwr/interface/service.js'></script>
    <script type='text/javascript' src='/dwrdemo/dwr/engine.js'></script>
    <script type='text/javascript' src='/dwrdemo/dwr/util.js'></script>
    <script type='text/javascript'>
    function firstDwr() {
    service.sayHello("123", callBackHello);
    }
    function callBackHello(data) {
    alert(data);
    }
    </script>
    </head>
    <body>
    <input type="button" name="button" value="测试" onclick="firstDwr()">
    </body>
    </html>
    地址栏输入http://localhost:8080/dwrdemo/firstd_dwr.jsp
    显示结果如下,则成功应用dwr。
      

  18.   

    <script type="text/javascript">
    function toAdd(){
    document.forms[0].action+="?method=toAdd";
    document.forms[0].submit();
    }
    </script>
    <form method="post" action="action.do" >
    <input type="button" value="添加" onclick="javascript:toAdd();">页面上的然后在你action里 写你这个 do 内容
    public ActionForward do(ActionMapping mapping, ActionForm form,
    HttpServletRequest request, HttpServletResponse response) {
    }
      

  19.   

    手写一个js使用AJAX就能实现了撒
      

  20.   

    很简单的,做一个表单提交,提交到一个jsp里面调用你的代码,然后再返回到原页面