在这里, 你将学习如何获取给定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
该页面从用户获取rollno, 并将此数据转发到servlet, 该servlet负责根据给定的rollno显示记录。
<
html>
<
body>
<
form action="servlet/Search">
Enter your Rollno:<
input type="text" name="roll"/>
<
br/>
<
input type="submit" value="http://www.srcmini.com/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文件夹中。
【Servlet获取给定rollno结果的示例】下载jar文件ojdbc14.jar
推荐阅读
- 在Eclipse中创建Servlet示例详细图解
- 在NetBeans IDE中创建servlet示例图解
- Servlet从服务器下载文件的示例
- Servlet中的事件和监听器
- Servlet中的CRUD操作示例图解
- 在myeclipse IDE中创建Servlet实例图解
- 创建servlet示例的详细步骤图解
- Servlet中的Cookie用法详解
- Win10无法安装Visual Studio 2017的处理办法