`

用户登录系统的演变(model1到mvc)

 
阅读更多

model1--->model1.x---->mvc(model2)

 1.Login.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    </head>
  
  <body>
    <form action="/jsp1/LoginCheck.jsp" method="post">
    	用户名:<input type="text" name="id"/><br>
    	密    码:<input type="password" name="passw"/><br>
    	<input type="submit" value="提交"/>
    	<input type="reset" value="重置"/>
    	<hr>
    </form>
  </body>
</html>

 2.LoginCheck,jsp

<%@ page language="java" import="java.util.*,java.sql.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>My JSP 'LoginCheck.jsp' starting page</title>
    
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->

  </head>
  
  <body>
  <%!
  	//定义数据库驱动(全局变量)
  	public static final String DRIVER = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; //sqlserver 驱动
  	public static final String DBURL = "jdbc:sqlserver://localhost:1433;DatabaseName=Demo";//数据库连接地址
  	public static final String DBUSER = "sa"; //数据库用户名
  	public static final String DBPASSW = "Founder123";//密码
   %>
   <%
   	Connection conn = null; //声明数据库连接对象
   	PreparedStatement pstmt = null;//声明数据库操作
   	ResultSet rs = null;//声明数据库结果集
   	boolean flag = false;//定义标志位
   	String id = null;
    %>
    
    <%
    	try{
    		Class.forName(DRIVER);//加载驱动
    		conn = DriverManager.getConnection(DBURL,DBUSER,DBPASSW);//获取数据库连接
    		String sql = "select * from user1 where id = ? and password = ? ";
    		pstmt = conn.prepareStatement(sql);//实例化数据库操作
    		pstmt.setString(1,request.getParameter("id"));
    		pstmt.setString(2,request.getParameter("passw"));
    		rs = pstmt.executeQuery();//执行查询
    		if(rs.next()){
    			id = rs.getString(1);
    			flag = true; //标记为true,表示登陆成功
    		}
    	}catch(Exception e){
    		System.out.println(e);
    	}
    	finally{
    		try{
    			rs.close();
    			pstmt.close();
    			conn.close();
    		}catch(Exception e){}
    	}
    	
     %>
     
     <%
     	if(flag){ 
     %>
     	<jsp:forward page="login_success.jsp">
     		<jsp:param name="id" value="<%=id %>"/>
     	</jsp:forward>
     <%
     	}else{
      %>
    	<jsp:forward page="login_failure.jsp"/>
    <%} %>
  </body>
</html>

 

3.login_success.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>My JSP 'login_success.jsp' starting page</title>
    
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->

  </head>
  
  <body>
  	<center>
  		<h1>登陆成功</h1>
        <h2>欢迎<font color="red"><%=request.getParameter("id") %></font>光临</h2>	
  	</center>
    
  </body>
</html>

 

 

4.login_failure.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>My JSP 'login_failure.jsp' starting page</title>
    
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->

  </head>
  
  <body>
    <center>
    	<h2>登陆失败,请重新<a href="Login.jsp">登陆</a></h2>
    </center>
  </body>
</html>

 

分享到:
评论

相关推荐

    韩顺平php从model1到分层再到mvc并使用smarty笔记-2.doc

    【PHP编程模式演变:从Model1到分层再到MVC】 在PHP开发中,随着项目规模的扩大,代码组织和管理的方式也在不断演进。早期的Model1模式是一种简单的架构,而随着对软件工程理解的深入,开发者逐渐转向了分层架构和...

    ASP.NET系统开发中MVC设计模式

    随着.NET框架的发展,ASP.NET MVC逐渐演变为ASP.NET Core MVC,进一步提升了跨平台支持和性能。 总结来说,ASP.NET MVC设计模式是构建高效、可维护Web应用的强大工具,通过分离关注点,提高了代码的可读性和可测试...

    自定义mvc源代码-从mvc到structs

    在“mvc1到mvc5”的演变过程中,每个版本都引入了新的特性和改进。从mvc1开始,我们可以看到基本的MVC架构的实现,包括如何创建控制器,如何与模型交互,以及如何动态渲染视图。随着版本升级,性能优化、扩展性提升...

    Model View Presenter vs Model View Controller

    在MVC中,View可以直接绑定到Model,但通常建议避免过多的直接耦合。 3. **Controller**:处理用户的输入,根据输入调用Model进行处理,并更新View。Controller是View和Model之间的桥梁。 MVC的优点包括: - 结构...

    个人博客系统(Spring+Spring MVC+MyBatis )

    当用户访问博客系统的某一个页面时,Spring MVC会根据用户的请求找到合适的控制器(Controller),控制器中的方法会被调用,并返回一个模型(Model)和一个视图(View)。模型通常包含了业务数据,视图则负责展示...

    经典mvc模式开发好

    随着技术的发展,MVC模式也演变出了一些变种,如MVVM(Model-View-ViewModel)、 MVP(Model-View-Presenter)等。这些模式在保持基本思想的同时,针对不同的应用场景进行了优化。 总之,经典MVC模式是一种有效的...

    MVC文献中英文对照

    在Web环境中,传统的MVC模式有所演变,形成了MVC Model 2(或称MVC 2)。这种模式针对Web的无状态特性进行了优化,使得模型可以更容易地通知视图关于状态的变化,而无需频繁的服务器查询。 **Struts框架**是一个...

    基于MVC模式的教师个人主页系统设计.pdf

    1. MVC模式概述:MVC模式是一种软件设计模式,通过模型(Model)、视图(View)、控制器(Controller)实现软件设计。该模式具有逻辑清晰、可重用性高等优势,逐渐受到业界的青睐,成为Web应用软件开发使用较多的...

    mvc1-3的安装包

    ASP.NET MVC 1-3的演变反映了微软对Web开发框架的持续改进和对开发者需求的响应。每个版本都引入了新的功能和优化,以提升开发效率和应用程序质量。随着MVC 4、5及更高版本的发布,这个框架继续发展,保持其在现代...

    MVC++环境2005-2017全部一键安装包x86&x64

    - **MSVBCRT_AIO_2018.07.30_X86+X64.exe**:这是一个整合了多版本MVC++环境的安装程序,可能包含了从2005到2017的所有必要组件,如编译器、库文件、调试工具等,适用于32位和64位系统。 - **readme.txt.txt**:...

    struts mvc 介绍

    随着Struts等MVC框架的出现,开发方式逐渐演变为更模块化的结构,如Struts 1,再到Struts 2,以及Spring MVC等更先进的框架,进一步提升了开发效率和应用质量。 7. **Web架构图** 一个典型的Java Web架构可能包括...

    什么是MVC framework

    在MVC Model 1中,JSP页面同时承担视图和控制器的角色,Java Bean则作为模型。这种架构简单易实现,但在复杂应用中会导致代码混乱。 **架构示例**: - 用户请求到达JSP页面。 - JSP页面负责处理请求逻辑,调用Java ...

    Struts开发指南之MVC架构.doc

    Model 1使用JSP来处理请求和响应,而Model 2则更接近于经典的MVC模式,使用Servlet作为控制器,处理请求并将数据转发给JSP进行渲染。 #### Struts框架的诞生与MVC实践 尽管Model 2在一定程度上实现了MVC模式,但其...

    jsp,mvc外文翻译参考文献

    - MVC模式的历史和演变 - 如何在JSP中实现MVC架构 - JSP与Servlet的关系及协作方式 - 使用EL和JSTL增强JSP的MVC实践 - 框架如Spring MVC或Struts如何简化JSP和MVC的开发 - 性能优化和最佳实践 - 国际化和本地化在JSP...

    基于MVC设计模式构筑JSPServlet+EJB的Web应用

    - **控制器(Controller)**:负责处理用户的输入,并控制数据流到模型对象和视图对象,通常用于处理业务流程和控制流。 #### JSP与Servlet技术 **JSP(Java Server Pages)** 是一种基于Java的技术标准,用于创建...

    ASP.NET MVC正式版1.0 简单例子

    1. **MVC模式**:Model代表应用程序的数据模型,负责管理和存储数据;View负责显示数据,提供用户界面;Controller处理用户输入,协调Model和View之间的交互。这种分层架构使得代码组织更加清晰,有利于团队协作和...

    MVP模式与mvc

    它是从经典的MVC(Model-View-Controller)模式演变而来的。MVP模式的核心在于它强调了“分离”的概念,即将业务逻辑、数据展示和用户界面这三者分离,以此来提高代码的可维护性和可扩展性。 #### 二、MVP与MVC的...

    System.Web.Mvc.dll 1.0-5.0各种版本

    《System.Web.Mvc.dll:从1.0到5.0的演变与应用》 在.NET框架中,`System.Web.Mvc.dll`扮演着至关重要的角色,它是ASP.NET MVC(Model-View-Controller)框架的核心组件,为Web应用程序开发提供了强大的支持。自...

    mvc设计思想

    MVC模式通过将应用程序划分为三个核心组成部分——模型(Model)、视图(View)和控制器(Controller),实现了系统结构的清晰化和职责分离,从而提高了系统的可维护性和可扩展性。 #### 二、MVC的三个核心组成部分...

Global site tag (gtag.js) - Google Analytics