2011-03-18 74 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