實現servlet登陸

    在java web開發中,servlet是服務器端的java應用程序,可以接收客戶端請求並作出相應的迴應。

 

    要建立servlet應用程序,首先要安裝tomcattomcat的安裝網上教程很多,大家可以自行搜索,這裏推薦一篇Tomcat7的安裝教程

 

           tomcat安裝成功後,在其安裝路徑下,有webapps文件夾,專門用來發布web項目,每個項目需要在webapps下單獨建立一個文件夾,我們下載建立一個test_servlet文件夾,在該文件夾下建立一個WEB-INF文件夾,在WEB-INF下建立classeslib文件夾,並添加一個web.xml文件。

 

目錄建立好了,接下來首先建立login.html文件,該文件實現了簡單的登錄功能

<html>
	<head>
		<title>實現servlet登錄響應</title>
	</head>
	<body>
		<!--action爲html表單要提交到的服務器端程序地址,login爲web.xml配置的servlet的url-pattern,是相對url,也可以寫成絕對url:http://127.0.0.1:8080/test_servlet/login-->
		<form action="login">
			<div align="center" >
			用戶名:<input type="text" name="username" /><br />
			密   碼:<input type="password" name="userpwd" /><br />
			<input type="submit" name="btnLogin" value="登錄" />
			<input type="reset" name="btnReset" value="重置" />
			</div>
		</form>
	</body>
</html>


    寫好後把html文件拷貝到test_servlet文件夾下,然後建立servletservlet是一個java類,因此我們建立名叫LoginServlet.java的類,代碼如下:

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

//該類要實現HttpServlet接口,並添加上面的引用
public class LoginServlet extends HttpServlet{
	public void doGet(HttpServletRequest request,
                     HttpServletResponse response)
              throws ServletException,
                     IOException{
					 
		//獲得客戶端表單中的用戶名和密碼,根據表單控件的name屬性獲取
		String username=request.getParameter("username");		 
		String password=request.getParameter("userpwd");
		
		System.out.println("用戶名是"+username);
		System.out.println("密碼是"+password);
		
		//打印到html頁,並返回客戶端
		response.setContentType("text/html");
		response.getWriter().println("Login Success!!!");
		
	}
}

    建立好該類後,進行編譯,將編譯後的文件放到test_servlet文件加下的classes文件夾中。

 

    至此,代碼寫的差不多了。我們寫的html文件,作爲客戶端,發出請求後,怎麼訪問tomcat服務器上的servlet程序呢?是通過web.xml映射訪問的,看下web.xml文件中的代碼

<?xml version="1.0" encoding="ISO-8859-1"?>

<web-app xmlns="http://java.sun.com/xml/ns/javaee"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
                      http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
  version="3.0">
	<!--該節點爲servlet類添加一個name-->
	<servlet>
		<servlet-name>Myservlet</servlet-name>
		<servlet-class>LoginServlet</servlet-class>
	</servlet>
	
	<!--該節點把name和servlet的虛擬路徑做對應,客戶端表單的action路徑爲url-pattern對應的路徑-->
	<servlet-mapping>
		<servlet-name>Myservlet</servlet-name>
		
		<!--servlet的虛擬路徑,實現了和servlet類文件的映射,實現了java web的目錄安全,因爲客戶端不直接訪問類文件,而是訪問虛擬路徑-->
		<url-pattern>/login</url-pattern>
	</servlet-mapping>
  
</web-app>


    到此,可以啓動tomcat了,運行tomcat目錄裏的bin文件夾下的startup.bat文件,然後輸入http://127.0.0.1:8080/test_servlet/login.html(注意url區分大小寫,如果是大小寫有誤會出現404),就可以訪問頁面了,填寫用戶名和密碼後,服務器會返回LoginSuccess!







發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章