2011-03-18 52 views
1

我需要在指點我一些幫助,如何轉換*這個代碼下面C++的Java與C++轉換

<html><body> 
<table> 
<% 
while(rs.next()){ 
%><tr> 
<td><%=rs.getString("id") %></td> 
<td><%=rs.getString("date") %></td> 
<td><%=rs.getString("email") %></td> 
</tr> 
<%}%> 
<%} 
catch(Exception e){e.printStackTrace();} 
finally{ 
if(con!=null) con.close(); 
} 
%> 
</body></html> 

轉換*表示寫類似的東西 - 混合和搞砸層(這其實是所有功能於1層)

不過,說實話,我希望你提出我關於C++數據訪問層和網絡接口的一些讀物,因爲我從來沒有做過這樣的在C++中的東西,只是一些簡單的程序/ OOP

非常感謝您的任何幫助

回答

1

我希望這有助於解釋Web腳本語言的介紹。 JSP(以及ASP和PHP)實際上是「Inside-Out Code」[1]。它們看起來像嵌入在文本中的代碼,但是這僅僅是一個錯覺 ......

  • <%=EXPRESSION%>成爲<%Response.Write(EXPRESSION)%>
  • <% STATEMENTS %>成爲"); STATEMENTS; Response.Write(@"
  • 前置Response.Write(@"和追加");

...而你幾乎得到了你的程序。

那麼你就變成了:

Response.Write(@" 
<html><body> 
<table> 
");try{ 
while(rs.next()){ 
Response.Write(@"<tr> 
<td>"); Response.Write(rs.getString("id")); Response.Write(@"</td> 
<td>"); Response.Write(rs.getString("date")); Response.Write(@"</td> 
<td>"); Response.Write(rs.getString("date")); Response.Write(@"</td> 
</tr> 
");}Response.Write(@" 
");} 
catch(Exception e){e.printStackTrace();} 
finally{ 
if(con!=null) con.close(); 
} 
Response.Write(@" 
</body></html>"); 

這樣說來,用格式化的LITTEL位,你可以看到,它實際上是一個非常簡單的程序,轉換應該是同樣簡單。

困難的一點將轉換像數據庫訪問庫的東西。

[1]好吧,它比這更復雜一點,但基本上就是這樣。 JSP/PHP/ASP文件經過一個預處理器,將所有指令轉換爲Java/VBScript/C#/ Whatever,這看起來非常像上面展示的。結果被認爲是一個沼氣標準的計算機程序,然後編譯/解釋和運行。

+0

你能給我一些鏈接來閱讀有關C++的JSP嗎? – dantuch 2011-03-19 20:13:45

+0

@dantuch,不,對不起,我不認爲這樣的事情存在。我的答案是讓你看到JSP和常規編程語言之間的相似性。要用C++編寫Web應用程序,您需要CGI,NSAPI和ISAPI文檔,以及***真的很好的理由。 :-)使用JSP/ASP/PHP是因爲它們擅長web應用程序。 – Ben 2011-03-21 11:59:14

+0

仍然有公司使用C++編寫代碼(所以我確定他們也是在做Web應用程序),願意教他們的開發人員使用設計模式並顯示一些反模式是我的理由:) ...所以任何幫助是因爲我知道NONE關於wep應用程序與C++;),它不會改變我會被迫使用桌面示例 – dantuch 2011-03-21 12:19:23