java mvc实例_Java Web实现的基本MVC实例分析
本文实例讲述了Java Web实现的基本MVC。分享给大家供大家参考。具体如下:
login.jsp——视图部分的输入文件
success.jsp——视图部分的输出文件
failure.jsp——视图部分的输出文件
LoginBean.java——模型部分
LoginServlet.java——控制器部分
web.xml——web应用的配置文件
下面分别介绍:
1、login.jsp
该功能的输入文件,用户首先访问这个文件。主要用于输入用户名和口令。
代码如下:
function isValidate(form)
{
// 得到用户输入的信息
username = form.username.value;
userpass = form.userpass.value;
// 判断用户名长度
if(!minLength(username,6))
{
alert("用户名长度小于6位!");
form.username.focus();
return false;
}
if(!maxLength(username,8))
{
alert("用户名长度大于8位!");
form.username.focus();
return false;
}
// 判断口令长度
if(!minLength(userpass,6))
{
alert("口令长度小于6位!");
form.userpass.focus();
return false;
}
if(!maxLength(userpass,8))
{
alert("口令长度大于8位!");
form.userpass.focus();
return false;
}
return true;
}
// 验证是否满足最小长度
function minLength(str,length)
{
if(str.length>=length)
return true;
else
return false;
}
// 判断是否满足最大长度
function maxLength(str,length)
{
if(str.length<=length)
return true;
else
return false;
}
用户登陆
用户登录
οnsubmit="return isValidate(form1)">
用户名:
口令:
代码中提供了客户端验证功能(用户名和口令的长度为6-8位)。验证通过之后会把请求提交给控制器Servlet。
2、success.jsp
登录成功之后会跳转到这个界面,界面的代码如下:
登录成功
${sessionScope.username}您好,欢迎登录网上书店!
代码中使用表达式语言把登录后的用户信息显示在街面上。
3、failure.jsp
登录失败后会跳转到这个界面,界面的代码如下:
登录失败
用户名或者口令不正确,请重新登录!
代码中提供了一个超链接,能够链接到登录界面。
4、LoginBean.java
完成登录功能,这里假设用户名和口令相等表示登录成功。
package beans;
public class LoginBean {
public boolean validate(String username,String userpass){
return username.equals(userpass);
}
}
5、LoginServlet.java
该文件完成控制,主要功能可以描述如下:
①. 从login.jsp获取用户输入的用户名和口令;
②. 创建LoginBean的对象,调用LoginBean的方法validate;
③. 根据方法返回的结果,选择success.jsp或者failure.jsp对用户响应。
完整的代码如下:
package servlets;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.*;
import javax.servlet.http.*;
import beans.*;
public class LoginServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request,response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 获取用户输入的用户ID和口令
String username = request.getParameter("username");
String userpass = request.getParameter("userpass");
// 创建模型对象
LoginBean loginBean = new LoginBean();
// 调用业务方法进行验证
boolean b = loginBean.validate(username,userpass);
// 要转向的文件
String forward;
// 如果登陆成功,把用户名写入session中,并且转向success.jsp,
// 否则转向failure.jsp
if(b){
// 获取session
HttpSession session = (HttpSession)request.getSession(true);
// 把用户名保存到session中
session.setAttribute("username",username);
// 目标转向文件是success.jsp
forward = "success.jsp";
}else{
// 目标转向文件是failure.jsp
forward = "failure.jsp";
}
// 获取Dispatcher对象
RequestDispatcher dispatcher = request.getRequestDispatcher(forward);
// 完成跳转
dispatcher.forward(request,response);
}
}
代码中把登录用户的用户信息保存在了session中,在实际应用中同样也是这样处理的。
6、web.xml
主要代码是Servlet的配置,代码如下:
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
This is the description of my J2EE component
This is the display name of my J2EE component
LoginServlet
servlets.LoginServlet
LoginServlet
login
希望本文所述对大家的JSP程序设计有所帮助。
java mvc实例_Java Web实现的基本MVC实例分析相关推荐
- java项目使用过滤器实例_Java web开发--过滤器篇(详细介绍)
一. web过滤器的介绍 1.过滤器 在生活中,过滤这种我们时常可见:比如水资源的处理,化学药剂的提取等等.所谓过滤,就是指对某事物的处理进行一定的处理获取相应的结果的一个过程.它可以总结为下: 过滤 ...
- java中thread实例_Java多线程并发执行demo代码实例
主类:MultiThread,执行并发类 package java8test; import java.util.ArrayList; import java.util.List; import ja ...
- java打开浏览器_Java调用浏览器打开网页完整实例
这篇文章主要介绍了Java调用浏览器打开网页的方法,以完整实例形式分析了java打开网页的相关技巧,需要的朋友可以参考下 本文实例讲述了Java调用浏览器打开网页的方法.分享给大家供大家参考.具体实现 ...
- java web tomcat 实例_Java Web应用开发实例
[1.GIS的概念 1.1什么是gis 地理信息系统 (GIS, Geographic Information System) 是一种基于计算机的工具,它可以对在地球上存在的东西和发生的事件进行成图和 ...
- java web mvc 拆分_JAVA WEB初接触——简单的MVC架构
1.概述 之前有过开发web的经验,因此我不会向无头苍蝇一般,心里还是有点数的
- java web网站实例_Java Web开发: 基于HttpServlet的用户登录网站 实例
2013-02-04 20:50 814人阅读 评论(0) 一个简单的小例子,基于httpservlet的用户登录(杂家是菜鸟刚接触javaee,只能从最简单出发了),首先看业务逻辑: 有三个文件组成 ...
- java秒嘀短信登录验证实例_java web实现手机短信验证码登录实例
运行环境 jdk7+tomcat7 项目技术(必填) Servlet+Ajax+Bootstrap 数据库文件 我这里没用到数据库,比较简单,如果需要用到数据库不会的话可以私信我或者加我QQ jar包 ...
- web开发的java语言步骤_java web开发入门一(servlet和jsp)基于eclispe
servlet 用java语言开发动态资源网站的技术,在doGet方法中拼接显示html,在doPost方法中提交数据.类似于.net的ashx技术. servlet生成的class文件存放在tomc ...
- java servlet原理_Java Web 深入分析(8) Servlet工作原理解析
Servlet Servlet(Server Applet)是Java Servlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序,主要功能在于交互式地浏览和修改数据,生成动态We ...
最新文章
- matplotlib如何把坐标轴一横一竖给绘制出来
- c++ 句柄 计算控件坐标_练习答案|| 计算机基础第【28】期
- 【Thymeleaf】格式化日期
- python --函数
- 网络技术术语英汉对照
- ASP.NET MVC的过滤器笔记
- hive退出命令_从零开始学习大数据系列(五十五)使用Hive命令行及内置服务
- matlab gui怎样将结果保存_Processing将串行数据保存用作matlab数据分析
- Oracle 隔离级别
- 剑指Offer的学习笔记(C#篇)-- 二叉树的下一个节点(好理解版本)
- 阿言学习之Hadoop fs常用命令
- 在linux环境下编译运行OpenCV程序的两种方法 - woshijpfgg
- 设计模式讲解2:static proxy和decorator的不同点
- 如何在虚拟机下安装一个Linux操作系统?(简简单单30步,安装Linux详细教程)
- 基于 BIP39 协议创建 Ethereum HD Wallet
- C++/C补充知识点,数组,数组传参,二维数组传参打印三种发方法,正则表达式
- More Accurate Question Answering on Freebase阅读笔记
- 土豆网(第三方网站)使用qq登录的步骤和原理------oAuth协议
- 鹿晗关晓彤公开恋情,是如何把新浪微博的服务器搞垮的?
- 华为手机鸿蒙系统测评,华为发布的鸿蒙系统到底有多牛(让理想成为现实)
热门文章
- c++ primer plus中文版_如何成为一名厉害的C/C++程序员?
- 神经网络入门概念和框架理解(YOLOv1v2v3改进分析)
- Django单表,连表查询
- Luogu P1164小A点菜
- Expected one result (or null) to be returned by selectOne(), but found: 2
- 12种获取节点和元素的代码
- jsp内置对象的提交方式
- 常用加密算法的Java实现(一)
- jvm间歇性崩溃分析
- winform登录时,在密码框按下回车,直接登陆