一個簡單的jsp+servlet實例,實現簡單的登錄


開發環境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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM