个性化阅读
专注于IT技术分析

Servlet获取给定rollno结果的示例

在这里, 你将学习如何获取给定rollno的结果。我假设有一个如下表:

CREATE TABLE  "RESULT" 
   (	"ROLLNO" NUMBER, "NAME" VARCHAR2(40), "RESULT" VARCHAR2(40), "GRADE" VARCHAR2(40), CONSTRAINT "RESULT_PK" PRIMARY KEY ("ROLLNO") ENABLE
   )
/

我们假设此表中有很多记录。在此示例中, 我们从servlet的数据库中获取数据并进行打印。为了简化程序, 我们正在servlet中执行所有数据库逻辑。但是最好将它与servlet文件分开。


给定rollno的获取结果示例

在此示例中, 我们创建了三个文件

  • index.html
  • Search.java
  • web.xml

index.html

该页面从用户获取rollno, 并将此数据转发到servlet, 该servlet负责根据给定的rollno显示记录。

<html>
<body>
<form action="servlet/Search">
Enter your Rollno:<input type="text" name="roll"/><br/>

<input type="submit" value="search"/>
</form>
</body>
</html>

Search.java

这是servlet文件, 该文件从用户那里获取输入, 并将此数据与数据库映射, 并打印匹配数据的记录。在此页面中, 我们将显示数据库的列名以及数据, 因此我们使用ResultSetMetaData接口。

import java.io.*;
import java.sql.*;
import javax.servlet.ServletException;
import javax.servlet.http.*;

public class Search extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

response.setContentType("text/html");
PrintWriter out = response.getWriter();
		
String rollno=request.getParameter("roll");
int roll=Integer.valueOf(rollno);
		
try{
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con=DriverManager.getConnection(
"jdbc:oracle:thin:@localhost:1521:xe", "system", "oracle");
			
PreparedStatement ps=con.prepareStatement("select * from result where rollno=?");
ps.setInt(1, roll);
			
out.print("<table width=50% border=1>");
out.print("<caption>Result:</caption>");

ResultSet rs=ps.executeQuery();
			
/* Printing column names */
ResultSetMetaData rsmd=rs.getMetaData();
int total=rsmd.getColumnCount();
out.print("<tr>");
for(int i=1;i<=total;i++)
{
out.print("<th>"+rsmd.getColumnName(i)+"</th>");
}

out.print("</tr>");
			
/* Printing result */

while(rs.next())
{
out.print("<tr><td>"+rs.getInt(1)+"</td><td>"+rs.getString(2)+"
</td><td>"+rs.getString(3)+"</td><td>"+rs.getString(4)+"</td></tr>");
				
}

out.print("</table>");
			
}catch (Exception e2) {e2.printStackTrace();}
		
finally{out.close();}

}
}

web.xml文件

这是向容器提供servlet信息的配置文件。

<web-app>

<servlet>
<servlet-name>Search</servlet-name>
<servlet-class>Search</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>Search</servlet-name>
<url-pattern>/servlet/Search</url-pattern>
</servlet-mapping>

</web-app>

下载此示例(无IDE开发)

下载此示例(使用Myeclipse IDE开发)

下载此示例(使用Eclipse IDE开发)

下载此示例(使用Netbeans IDE开发)


要将Java应用程序与Oracle数据库连接, 需要加载ojdbc14.jar文件。将此jar文件放在WEB-INF / lib文件夹中。

下载jar文件ojdbc14.jar

赞(0) 打赏
未经允许不得转载:srcmini » Servlet获取给定rollno结果的示例
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

微信扫一扫打赏