一個簡單的jsp+servlet執行個體,實現簡單的登入

來源:互聯網
上載者:User

標籤:extend   class   輸入   sse   action   提示   server   isp   als   

開發環境myeclipse+tomcat5.5

一、先建立web project

在功能表列選File->New->Web->Dynamic Web Project

Project name我命名為JavaWebTest01 (可以隨便起)

Target runTime 選我們之前tomcat配置的版本。

一直NEXT到Finish

 

二. 建立 jsp 頁面

1、在WebContent下建立一個jsp頁面(如果列表裡沒有jsp選項,到other裡去找)

這裡我給jsp頁面的名字命為welcome,點擊Finish,然後再body中修改如下內容:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="gbk"%>
<%@ page language="java" import="com.servlet.*"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<%
    Acount account = (Acount)session.getAttribute("account");
%>
<h2>
Welcome to "<%= account.getUsername()%>" Login System!
</h2>
This is the first javaWeb Project!
</body>
</html>

 

2、建立login.jsp檔案,只需修改body中的內容,如下所示:

<body>
    <form action="login">
    username:<input type="text" name="username"><br>
    password:<input type="password" name="pwd"><br>
    <input type="submit">
    </form>
  </body>

 

3、在scr目錄下的com.ht.servlet編寫AcountBean.java檔案,代碼如下:

package com.ht.servlet;

public class AccountBean {
 private String username = "";
 private String password = "";
 public String getPassword() {
  return password;
 }
 public void setPassword(String password) {
  this.password = password;
 }
 public String getUsername() {
  return username;
 }
 public void setUsername(String username) {
  this.username = username;
 }
}

 

4、在scr目錄下的com.ht.servlet編寫servlet類CheckAccount.java檔案,代碼如下:

package com.ht.servlet;

import java.io.IOException;

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 CheckAccount extends HttpServlet {

 @Override
 protected void doPost(HttpServletRequest req, HttpServletResponse resp)
   throws ServletException, IOException {
  doGet(req,resp);
 }

 @Override
 public void doGet(HttpServletRequest req, HttpServletResponse resp)
   throws ServletException, IOException {
  HttpSession session = req.getSession();
  AccountBean account = new AccountBean();
  String username = req.getParameter("username");
  String pwd = req.getParameter("pwd");
  account.setPassword(pwd);
  account.setUsername(username);
  if((username != null)&&(username.trim().equals("jsp"))) {
   if((pwd != null)&&(pwd.trim().equals("1"))) {
    System.out.println("success");
    session.setAttribute("account", account);
    String login_suc = "success.jsp";
    resp.sendRedirect(login_suc);
    return;
   }
  }
  String login_fail = "fail.jsp";
  resp.sendRedirect(login_fail);
  return;
 }
 
}
5、在WebRoot目錄下編寫success.jsp檔案 成功後跳轉

<body>
    <%
    AccountBean account = (AccountBean)session.getAttribute("account");
    %>
    username:<%= account.getUsername()%>
     <br>
     password:<%= account.getPassword() %>
  </body>

6、在WebRoot目錄下編寫fail.jsp檔案 失敗後跳轉

<body>
   Login Failed! <br>
</body>

 

說明:在success.jsp檔案中用到了AccountBean中的getUsername()方法,所以需要在頁面頭上添加包名的命名空間,如下

<%@ page language="java" import="com.ht.servlet.*"%> ,然後才能在頁面上使用username:<%= account.getUsername()%>這種方式訪問。

 

7、修改web.xml設定檔

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
 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_2_5.xsd">
  <welcome-file-list>
    <welcome-file>login.jsp</welcome-file>
  </welcome-file-list>
 
  <servlet>
       <description>This is the description of my J2EE component</description>
       <display-name>This is the display name of my J2EE component</display-name>
         <servlet-name>CheckAccount</servlet-name>
       <servlet-class>com.ht.servlet.CheckAccount</servlet-class>
     </servlet>

     <servlet-mapping>
       <servlet-name>CheckAccount</servlet-name>
       <url-pattern>/login</url-pattern>
     </servlet-mapping>

 
</web-app>

 

三.部署到server

  添加一個伺服器,運行我們的工程。

點擊 視窗->顯示視圖->servers 則開啟伺服器視窗,點擊右鍵,建立->server,一步一步的跟著嚮導建立好伺服器,這裡我們用的是前面我們已經配置好的tomcat5.5,如果不會的請看我前面的文章,或者自己去百度吧。

伺服器建立完成後,在伺服器上右鍵,選擇“Add and Remove...”菜單,把我們剛剛的項目添加到配置中,一直到finish。

然後右鍵我們建立的server,在菜單中選擇publish發布我們的工程到伺服器,發布完成之後,啟動我們的伺服器。

開啟瀏覽器運行http://localhost:8080/JavaWebTest01/ 啟動起來看到如下介面 就是我們剛才建立的jsp頁面。

一個簡單的web工程就起來了哦,是不是很簡單很有趣。

下一期我們將通過一個登陸功能,體驗下介面與後台java的互動~

說明:

1、在瀏覽器中後面輸入的網站名稱必須和項目名稱相同,包括大小寫也要一樣如:JavaWebTest01,否則會提示找不到頁面,不知道是我系統內容的問題,還是Eclipse就必須這樣。

2、在伺服器建立之後,也就是發布之前,要先修改項目的輸出路徑,最好是當前項目的LogTest/WebContent/WEB-INF/classes中,否則有可能找不的處理的類。如是我從其他項目中的一個。

 

 

參考出處:

http://songzhan.iteye.com/blog/1849802

http://blog.sina.com.cn/s/blog_81890d830102wcca.html

一個簡單的jsp+servlet執行個體,實現簡單的登入

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.