jsp当前页面接收到参数怎么显示页面
时间: 2024-05-09 10:14:24 浏览: 15
首先,在JSP页面中,可以使用JSP内置对象request来获取前端传递过来的参数,例如:
```jsp
<%
// 获取前端传递过来的参数
String name = request.getParameter("name");
%>
```
然后,通过JSP脚本语言,将获取到的参数进行展示,例如:
```jsp
<h1>欢迎 <%= name %> 的光临!</h1>
```
其中,`<%= name %>`表示将获取到的参数name输出到页面中。
最后,将JSP页面部署到Web服务器中,访问该页面时,就可以看到页面中展示了从前端传递过来的参数。
相关问题
帮我写一些代码实现以下功能:(1) 在JSP的页面中以表格的形式打印杨辉三角; (2) 写两个页面,应用include动作,从第一个页面向第二个页面传递整数参数m和n,在第二个页面中接收参数,并根据n的值打印nm的矩阵。 (3) 应用forward动作,从一个页面向另外一个页面传递整数参数m和n,在另外一个页面求m和n之间所有整数的和,并显示在页面上。 (4) 实现一个基于JSP的在线考试系统,该系统能够显示当前时间、实现网上答题以及自动评卷; (5) 实现一个简单的网上书店系统,其中包括购物车的功能;
我可以回答这个问题。以下是实现以上功能的代码:
(1)在JSP的页面中以表格的形式打印杨辉三角:
<%
int rows = 10; // 杨辉三角的行数
int[][] triangle = new int[rows][rows];
// 初始化杨辉三角
for (int i = 0; i < rows; i++) {
triangle[i][0] = 1;
triangle[i][i] = 1;
for (int j = 1; j < i; j++) {
triangle[i][j] = triangle[i-1][j-1] + triangle[i-1][j];
}
}
// 输出杨辉三角
out.println("<table>");
for (int i = 0; i < rows; i++) {
out.println("<tr>");
for (int j = 0; j <= i; j++) {
out.println("<td>" + triangle[i][j] + "</td>");
}
out.println("</tr>");
}
out.println("</table>");
%>
(2)写两个页面,应用include动作,从第一个页面向第二个页面传递整数参数m和n,在第二个页面中接收参数,并根据n的值打印nm的矩阵。
第一个页面:
<%
int m = 5;
int n = 3;
%>
<%@ include file="secondPage.jsp?m=<%=m%>&n=<%=n%>" %>
第二个页面:
<%
int m = Integer.parseInt(request.getParameter("m"));
int n = Integer.parseInt(request.getParameter("n"));
%>
<table>
<%
for (int i = 0; i < n; i++) {
out.println("<tr>");
for (int j = 0; j < m; j++) {
out.println("<td>" + i + "," + j + "</td>");
}
out.println("</tr>");
}
%>
</table>
(3)应用forward动作,从一个页面向另外一个页面传递整数参数m和n,在另外一个页面求m和n之间所有整数的和,并显示在页面上。
第一个页面:
<%
int m = 1;
int n = 10;
request.setAttribute("m", m);
request.setAttribute("n", n);
request.getRequestDispatcher("secondPage.jsp").forward(request, response);
%>
第二个页面:
<%
int m = Integer.parseInt(request.getAttribute("m").toString());
int n = Integer.parseInt(request.getAttribute("n").toString());
int sum = 0;
for (int i = m; i <= n; i++) {
sum += i;
}
out.println("Sum of numbers between " + m + " and " + n + " is " + sum);
%>
(4)实现一个基于JSP的在线考试系统,该系统能够显示当前时间、实现网上答题以及自动评卷;
这个功能比较复杂,需要设计数据库、后台逻辑等,无法在这里提供完整的代码。可以参考一些开源的在线考试系统,如OpenExam。
(5)实现一个简单的网上书店系统,其中包括购物车的功能;
这个功能也比较复杂,需要设计数据库、后台逻辑等,无法在这里提供完整的代码。可以参考一些开源的网上书店系统,如BookStore。
创建jsp页面,使用java servlet和java bean,连接数据库bus,选择下拉框中的出发地和目的地,点击查询即可在当前页面显示数据库中的车次信息
好的,这是一个涉及到前端界面、后端逻辑处理和数据库连接的完整项目需求。我会尽力回答你的问题。
首先,你需要在项目中创建一个 JSP 页面,该页面包含一个表单,其中包含出发地和目的地的下拉框、一个查询按钮和一个用于显示查询结果的表格。
在表单中,你需要使用 Java Servlet 和 Java Bean 来处理用户的请求和从数据库中检索数据。具体而言,当用户提交表单时,Servlet 可以将出发地和目的地的值作为参数传递给 Java Bean,Java Bean 然后使用 JDBC API 连接到数据库并查询车次信息。最后,Java Bean 将查询结果返回给 Servlet,Servlet 将其传递给 JSP 页面以进行显示。
以下是一个简单的代码示例,仅供参考:
JSP 页面:
```html
<html>
<head>
<title>Bus Schedule Query</title>
</head>
<body>
<h1>Bus Schedule Query</h1>
<form action="busQuery" method="post">
<label>Departure:</label>
<select name="departure">
<option value="city1">City 1</option>
<option value="city2">City 2</option>
<option value="city3">City 3</option>
</select>
<label>Destination:</label>
<select name="destination">
<option value="city1">City 1</option>
<option value="city2">City 2</option>
<option value="city3">City 3</option>
</select>
<input type="submit" value="Query">
</form>
<table>
<tr>
<th>Bus Number</th>
<th>Departure Time</th>
<th>Arrival Time</th>
</tr>
<c:forEach items="${busList}" var="bus">
<tr>
<td>${bus.number}</td>
<td>${bus.departureTime}</td>
<td>${bus.arrivalTime}</td>
</tr>
</c:forEach>
</table>
</body>
</html>
```
Java Servlet:
```java
@WebServlet("/busQuery")
public class BusQueryServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String departure = request.getParameter("departure");
String destination = request.getParameter("destination");
BusQueryBean bean = new BusQueryBean();
List<Bus> busList = bean.queryBus(departure, destination);
request.setAttribute("busList", busList);
RequestDispatcher dispatcher = request.getRequestDispatcher("busQuery.jsp");
dispatcher.forward(request, response);
}
}
```
Java Bean:
```java
public class BusQueryBean {
public List<Bus> queryBus(String departure, String destination) {
List<Bus> busList = new ArrayList<>();
try {
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/bus", "root", "password");
PreparedStatement stmt = conn.prepareStatement("SELECT * FROM schedule WHERE departure=? AND destination=?");
stmt.setString(1, departure);
stmt.setString(2, destination);
ResultSet rs = stmt.executeQuery();
while (rs.next()) {
Bus bus = new Bus();
bus.setNumber(rs.getString("number"));
bus.setDepartureTime(rs.getString("departure_time"));
bus.setArrivalTime(rs.getString("arrival_time"));
busList.add(bus);
}
rs.close();
stmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
return busList;
}
}
```
在上面的代码示例中,`Bus` 类代表一辆公交车,包含车次号、出发时间和到达时间等属性。`BusQueryServlet` 类作为 Servlet,负责接收表单提交的请求,并将请求转发给 `BusQueryBean` 类进行处理。`BusQueryBean` 类使用 JDBC API 连接到数据库并执行查询操作,将查询结果封装到 `Bus` 对象中,并返回 `List<Bus>` 类型的查询结果。
请注意,上面的代码示例仅供参考,并不包含完整的错误处理和安全性检查。在实际项目中,你需要根据具体需求进行修改和完善。