各位好:
想請教一下
以下是我java的程式
public class LoginServlet extends HttpServlet {
public int show()
{int a=1;
return a;
}
public void show2()
{System.out.println("hello");
}
}
以下是我jsp的程式
<html>
<head></head>
<body></body>
<%
LoginServlet log=new LoginServlet();
log.show2();
%>
</html>
想問在jsp程式的 log.show2();為何無法print 出 show2()的文字
謝謝
問題:
所以我不能印在前端嗎?
有其他方法嗎?謝謝
回答:
可以
------------JAVA部分---------------
public class LoginServlet {
public int show()
{
int a=1;
return a;
}
public string show2()
{
return "hello";
}
}
------------JSP部分---------------
<html>
<head></head>
<body></body>
<%
LoginServlet log=new LoginServlet();
%>
<%= log.show2() %>
</html>
補充:
1.System.out.println是輸出在Console
jsp <%="xxx"%> 才是輸出在網頁上
2.LoginServlet不要這樣用
HttpServlet用途是來做web請求跟回應的接口
問題:
我想問 public void show2()用void行不行....
回答:
可以,但會很奇怪
要改也是可以,要先依序了解以下知識
1 jsp 先轉成 java 再轉成 class檔案
2 jsp 會繼承 org.apache.jasper.runtime.HttpJspBase
暐翰大大好:
我知道public string show2()或是public int show()
這樣是可以的
但我想問 public void show2()用void行不行....
謝謝
cool3690
我等等寫一個完整範例給你
只是不建議
語法基礎
了解了,謝謝大大
1 jsp 先轉成 java 再轉成 class檔案
2 jsp out物件的類別是JspWriter
3.可以看出jsp底層也是這樣寫的
會去呼叫_jspService方法
然後依靠JspWriter來渲染網頁
總結範例
public class LoginServlet {
public int show()
{
int a=1;
return a;
}
public void show2(JspWriter out)
{
out.print("hello");
}
}
<html>
<head></head>
<body></body>
<%
LoginServlet log=new LoginServlet();
%>
<% log.show2(out); %>
</html>