⑴ jsp調用java並傳參數
如果不用Servlet或者諸如Struts這類框架來做後台處理的話,你完全可以在JSP文件里直接寫Java代碼來處理。<%String pp=request.getParameter("pp"); //表單提交上來的參數//直接調用smgp的API%>
⑵ jsp 如何調用java類 初學
不知道你用dwr試過沒有,一般在前端調用java類都是使用dwr因為它是專為,從頁面調用後台的java類產生的。以HelloWorld為例假設後台有一個實體類HelloWorld
public class HelloWorld {
public String hello(String name){
return "helloworld"+"name="+name+"now time="+new Date().toLocaleString();
}
}
1.引入dwr的jar包
2.將dwr.xml文件到web-INF目錄下
配置:
<dwr>
<allow>
<create javascript="HelloWorld" creator="new">
<param name="class" value="service.HelloWorld"></param>
</create>
</allow>
</dwr>
3.配置web.xml
加入:<!-- dwr -->
<servlet>
<servlet-name>dwr-invoker</servlet-name>
<servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
<!-- This should NEVER be present in live -->
<init-param>
<param-name>debug</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dwr-invoker</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
4.引入dwr的js,如:
<script type='text/javascript' src='dwr/interface/HelloWorld.js'></script>
<script type='text/javascript' src='dwr/engine.js'></script>
<script type='text/javascript' src='dwr/util.js'></script>
這一步你可以參考dwr的官方文檔中的實例,因為這里引入的js,包括目錄你都找不到的,所以以往的直接將js文件拖拉到要使用的頁面就行不通了,
分別介紹一下引入的三個js文件:
第一個:後綴為HelloWorld.js的估計你也能猜出來了,其實在後台你就是有一個類名就叫HelloWorld的,現在應該明白為什麼可以調用後台java類了吧(也就是說有幾個java類要調用就有幾個這樣的引入文件,只需要將HelloWorld名字換為你的另一個要引入的類)。
第二個:固定的寫法
第三個:不是必須的,可加可不加,不過它是為了是你操作更方便,一般都會加上。
5.下面就可以在頁面調用了:
<script type='text/javascript' src='dwr/interface/HelloWorld.js'></script>
<script type='text/javascript' src='dwr/interface/DepartmentsService.js'></script>
<script type='text/javascript' src='dwr/engine.js'></script>
<script type='text/javascript' src='dwr/util.js'></script>
<script type="text/javascript">
function hello(){
var name = document.getElementById("name").value;
HelloWorld.hello(name,callback);//直接使用引入的名稱調用後台類中的hello()方法
}
//回調函數用來獲取從後台傳遞來的參數,或者數據
function callback(date){
alert(date);
}
</script>
6.完成
希望能下個dwr的官方jar包裡面有好多例子,講的都很詳細的
⑶ 請問jsp獲得java方法的參數值方法。
如果是java方法傳到jsp可以用轉發來做:
request.setAttribute("name",name);
request.getRequestDispatcher("a.jsp").forward(request,response);
然後在a.jsp中用隱含對象request來接受:request.getAttribute("name");
如果是jsp到java方法的話可以用session來完成:
在jsp中:HttpSession session = request.getSession();
seesion.setAttribute("name",name);
java方法中接受:HttpSession session = request.getSession();
session.getAttribute("name");兩種方式都需要java類繼承HttpServlet
如果還有什麼不懂得話可以聯系418487301,主要你的問題還不是很清楚
⑷ JSP如何調用java代碼
首先,在服務端定義了一個類和靜態方法:
public class Test {
public static String sayHello(String name){
return "hello, " + name;
}
}
注意:必須是公開的靜態方法。
ajax分為同步、非同步調用,如果沒有傳遞回調函數,則是同步調用;
如果傳遞回調函數,則是非同步調用。
同步調用
<script type="text/javascript">
......
try{
var obj = Test.sayHello('world!');
......
}catch(e){
//e.error 錯誤碼
//e.message 錯誤描述
}
......
</script>
不傳遞回調函數,以try…catch來處理錯誤。
在同步調用模式下,如果有網路錯誤、業務邏輯錯誤等,會拋出一個異常。
非同步調用
<script type="text/javascript">
......
Test.sayHello('world!',
function(obj){ //success callback function
......
},
function(error, message){ //fail callback function
}
);
......
</script>
傳遞回調函數作為參數。如果只有一個回調函數, 則默認是成功的回調函數。
⑸ JSP裡面怎麼調用java類裡面的方法。
首先你寫的是Javascript的代碼,而Javascript是不用String聲明變數,而是var
首先你得從JSP原理學起,前後台的代碼本身是沒有關聯關系的,只是通過頁面GET或POST時的參數,後台代碼進行不同的處理,你需要手動實現一個請求比如action=save,後台switch request["action"]然後如果是"save",就做你的SAVE函數
⑹ 在jsp中如何調用java中的方法
如果你有一個類為Person,Person中有個方法為public void setName(String userName),那麼在jsp中可以這樣寫
<%
Person p = new Person();
p.setName("張三");
%>
⑺ JSP 文件怎麼調用java文件
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
導入你需要使用的java方法所在的包,
然後直接調用就可以了
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()+ path + "/";%>
<% %>中的內容就是java方法的調用!!!