天天看點

jsp檔案如何連接配接伺服器,JSP 開發環境搭建與項目運作(二)

上一篇講到了如何搭建伺服器環境和運作伺服器。這一篇給大家講講jsp如何與伺服器建立連接配接。

如果你想了解伺服器環境如何配置,請參考:JSP 開發環境搭建與項目運作(一)

下面,我們來 做一個将本地某個檔案夾下的所有檔案都顯示在網頁上的需求

第一步:建立Serve

package yqb_test_webserver;

import java.io.IOException;

import java.util.List;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javax.servlet.http.HttpSession;

public class Hello extends HttpServlet {

private static final long serialVersionUID = 1L;

public Hello() {

// TODO Auto-generated constructor stub

}

protected void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

doPost(request, response);

}

protected void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

// TODO Auto-generated method stub

response.setContentType("text/html;charset=utf-8");

response.setCharacterEncoding("UTF-8");

response.getWriter().write("歡迎你:" + request.getParameter("username"));

HttpSession session = request.getSession();

List names = Util.getFileName();

for (int i = 0; i < names.size(); i++) {

System.out.println(names.get(i));

}

session.setAttribute("names", names);

String path = "file:///Users/maomao/Documents/";

session.setAttribute("path", path);

String index = "index.jsp";

response.sendRedirect(index);

}

}

上面代碼的主要目的是擷取“file:///Users/maomao/Documents/”檔案夾下面的所有檔案名

session.setAttribute("names", names);是将資料源添加到session裡面。key為“names”,,session是連接配接伺服器與jsp用戶端的橋梁。

response.sendRedirect("index.jsp");是傳回資料給到index.jsp檔案,這樣index.jsp檔案就會接收到來這裡的資料了。

第二步:配置web.xml

yqb_test_webserver

index.html

index.htm

index.jsp

default.html

default.htm

default.jsp

This is the description of my J2EE component

This is the display name of my J2EE component

Hello

yqb_test_webserver.Hello

Hello

/login

表示web伺服器起來以後預設顯示的頁面,這裡寫了很多頁面,會從上到下依次尋找對應的頁面,隻要找到一個就可以顯示了。

這裡面配置接口類名稱和接口對應key值,“/login”是Hello.java對應的用戶端調用的key值

第三步:配置jsp檔案

pageEncoding="UTF-8"%>

Insert title here

String path = (String) session.getAttribute("path");

String urlEnd = "/index.html";

List names = (List) session.getAttribute("names");

for (int i = 0; i < names.size(); i++) {

%>

}

%>

List names =(List)session.getAttribute("names");

通過這句代碼接收前面傳回的檔案名清單,後面是以清單形式展示檔案名。

這是通過頁面直接擷取資料的示例,下面的送出表單的示例:

name:

password:

value="Submit" />

action="login"

這裡的“login”是在web.xml裡面配置的接口名稱。

在Hello.java裡面通過request.getParameter("username")就可以擷取使用者輸入的使用者名了。

以上就是jsp與伺服器通信的全部内容,裡面我踩過的坑都已經提醒了大家,希望能夠幫助到你。