MVC(JSP+JavaBean+Servlet)入门实例:用户登陆验证
1 <html>
2 <body>
3 It is first JSP page!
4 </body>
5 </html>
1、login.html
//D:\Program Files (x86)\apache-tomcat-7.0.42-windows-x64\apache-tomcat-7.0.42\webapps\webDemo\mvc\login.html
1 <html>
2 <form action="/webDemo/login.do" method="post">
3 <div>
4 Name<input type="text" name="name"/><br/>
5 Password<input type="text" name="pas"/><br/>
6 <input type="submit" value="Login"/>
7 <input type="hidden" value="login" name="typeId"/>
8 </div>
9 </form>
10 </html>
注意:第2行,必须用全路径 /webDemo/login.do
2、LoginServlet.java
//D:\Program Files (x86)\apache-tomcat-7.0.42-windows-x64\apache-tomcat-7.0.42\webapps\webDemo\WEB-INF\src\mvctest\LoginServlet.java
1 // 建立MVC中的C(control),完成JSP+Servlet+JavaBean的开发模式
2
3 package mvctest;
4
5 import java.io.* ;
6 import java.util.* ;
7 import javax.servlet.* ;
8 import javax.servlet.http.* ;
9 //import org.lxh.factory.* ;
10 //import org.lxh.vo.* ;
11
12
13 public class LoginServlet extends HttpServlet {
14 public void doGet(HttpServletRequest request,HttpServletResponse response) throws IOException,ServletException {
15 this.doPost(request,response) ;
16 }
17 public void doPost(HttpServletRequest request,HttpServletResponse response) throws IOException,ServletException {
18 response.setContentType("text/html;charset=GB2312");//设置响应的MIME类型。
19 java.io.PrintWriter out = response.getWriter();
20
21 String type=request.getParameter("typeId");
22 if (type.trim().equals("login")) {
23 String name=request.getParameter("name");//获取视图里的name
24 String pas=request.getParameter("pas");//获取视图里的password
25
26 Model newModel=new Model();//调用 模型
27 newModel.setName(name);
28 newModel.setPas(pas);
29 String message = newModel.login();
30
31 String url="/webDemo/mvc/returnMessage.jsp?message="+message; //如下是把结果返回给视图
32 url=new String(url.getBytes("GBK"),"ISO8859_1");
33 response.sendRedirect(url);
34 }
35 }
36 };
3、Model.java
//D:\Program Files (x86)\apache-tomcat-7.0.42-windows-x64\apache-tomcat-7.0.42\webapps\webDemo\WEB-INF\src\mvctest\LoginServlet.java
1 /**
2 * 2013-11-16
3 * Model.java
4 * author:**
5 */
6 package mvctest;
7
8 public class Model {
9
10 private String name=null;
11 private String pas=null;
12
13 public void setName(String name) {
14 this.name=name;
15 }
16
17 public String getName() {
18 return name;
19 }
20
21 public void setPas(String pas) {
22 this.pas=pas;
23 }
24
25 public String getPas() {
26 return pas;
27 }
28
29 public String login() {
30 if ((name.trim().equals("admin"))&&(pas.trim().equals("1234"))) {
31 return "login successful";
32 }
33 else {
34 return "login failed";
35 }
36 }
37 }
4、编译Model.java、LoginServlet.java
注意1:编译报软件包javax.servlet不存在,http://liuxlyard.iteye.com/blog/582381
原因是:java编译器没有找到软件包javax.servlet,由于servlet和JSP不是Java平台Java SE(标准版)的一部分,而是Java EE(企业版)的一部分,因此,必须告知编译器servlet的位置。
注意2:Model.java和LoginServlet.java都在包mvctest中,且LoginServlet.java依赖Model,因此需要先编译Model.java,然后再编译LoginServlet.java
D:\Program Files (x86)\apache-tomcat-7.0.42-windows-x64\apache-tomcat-7.0.42\web
apps\webDemo\WEB-INF\src\mvctest>javac Model.java
D:\Program Files (x86)\apache-tomcat-7.0.42-windows-x64\apache-tomcat-7.0.42\web
apps\webDemo\WEB-INF\src>javac mvctest\LoginServlet.java //此处必须要这样才行
5、拷贝全路径class文件到D:\Program Files (x86)\apache-tomcat-7.0.42-windows-x64\apache-tomcat-7.0.42\webapps\webDemo\WEB-INF\classes
6、returnMessage.jsp
//D:\Program Files (x86)\apache-tomcat-7.0.42-windows-x64\apache-tomcat-7.0.42\webapps\webDemo\mvc\returnMessage.jsp
1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8" import="java.sql.*"%>
2 <html>
3 <head>
4 <title>MVC(JSP+JavaBean+Servlet)入门实例--中国网页设计</title>
5 </head>
6
7 <body>
8 <%
9 String message=new String ( request.getParameter("message").getBytes("ISO8859-1"),"GBK" ); %>
10 <%=message %>
11 </body>
12 </html>
7、配置Servlet
(1)编辑好的Servlet源文件不能响应用户请求,还必须将其编译成class文件,并将编译后的文件及包放到WEB-INF/classes路径下
(2)为了能让Servlet响应用户请求,还必须将Servlet配置在Web应用中,即修改web.xml
1 <!-- 配置Servlet的名字 -->
2 <servlet>
3 <servlet-name>Login</servlet-name>
4 <servlet-class>mvctest.LoginServlet</servlet-class>
5 </servlet>
6 <!-- 配置Servlet的URL -->
7 <servlet-mapping>
8 <servlet-name>Login</servlet-name>
9 <url-pattern>/login.do</url-pattern>
10 </servlet-mapping>
注意第4行,需要加包名
四、验证
主要参考:http://blog.csdn.net/lyyybz/article/details/8782138#t1//数据库的操作还未实践
http://blog.csdn.net/gxiangzi/article/details/5504519
http://zhaoyuqiang.blog.51cto.com/6328846/1154733 //数据库的操作
MVC(JSP+JavaBean+Servlet)入门实例:用户登陆验证的更多相关文章
- JSP+JavaBean+Servlet工作原理实例…
JSP+JavaBean+Servlet工作原理实例讲解 首先,JavaBean和Servlet虽都是Java程序,但是是完全不同的两个概念.引用mz3226960提出的MVC的概念,即M-model ...
- JSP+JavaBean+Servlet技术(MVC模型)
一,Servlet开发用户在浏览器中输入一个网址并回车,浏览器会向服务器发送一个HTTP请求.服务器端程序接受这个请求,并对请求进行处理,然后发送一个回应.浏览器收到回应,再把回应的内容显示出来.这种 ...
- Struts与jsp+javabean+servlet区别
采用Struts框架技术和直接使用jsp+javabean技术开发各有什么优势?各自的缺点又是什么? 在Javaweb开发领域存在2种开发模式, 模式一,jsp+javabean 模式二,jsp+ja ...
- <jsp:javabean>动作标签实例
<jsp:javabean>动作标签实例 之后补齐基础知识 scope属性 该属性指定了所创建Bean实例的存取范围,省略该属性时的值为page.<jsp:useBean>标识 ...
- JavaWeb基础之Servlet简单实现用户登陆
学习javaweb遇到了一些坑,一些问题总结下来,记个笔记. 学习servlet遇到的一些坑: servlet实现用户登陆遇到的坑解决办法: https://www.cnblogs.com/swxj/ ...
- javaweb学习总结(二十二)——基于Servlet+JSP+JavaBean开发模式的用户登录注册
一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp ...
- JavaWeb学习 (二十一)————基于Servlet+JSP+JavaBean开发模式的用户登录注册
一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp ...
- 基于Servlet+JSP+JavaBean开发模式的用户登录注册
http://www.cnblogs.com/xdp-gacl/p/3902537.html 一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBea ...
- javaweb(二十二)——基于Servlet+JSP+JavaBean开发模式的用户登录注册
一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp ...
- JSP + JavaBean + Servlet实现MVC设计模式
1.流程图: 2.代码清单 数据库脚本: DROP TABLE IF EXISTS `user`; CREATE TABLE `user` ( `userid` ) NOT NULL, `name` ...
随机推荐
- 2023-07-18:给你一个正整数数组 nums,请你移除 最短 子数组(可以为 空), 使得剩余元素的 和 能被 p 整除。 不允许 将整个数组都移除。 请你返回你需要移除的最短子数组的长度,如果
2023-07-18:给你一个正整数数组 nums,请你移除 最短 子数组(可以为 空), 使得剩余元素的 和 能被 p 整除. 不允许 将整个数组都移除. 请你返回你需要移除的最短子数组的长度,如果 ...
- 什么是PMP?
PMP(Project Management Professional)中文名称叫项目管理专业人士资格认证.它是由美国项目管理协会(PMI)发起的,严格评估项目管理人员知识技能是否具有高品质的资格认证 ...
- [pytest]基础
简介 The pytest framework makes it easy to write small, readable tests, and can scale to support compl ...
- 树莓派烧录系统并在无外接屏幕的情况下连接VNC
上个月老板给了块树莓派3B,开心坏了,在咸鱼上掏了很多零件,花了一段时间做出了一个二驱动的智能小车,但是觉得小车太小,就在又在咸鱼上掏了个四区的地盘,但是在拆卸的过程中,发现树莓派WIFI没有了, ...
- composer 的使用和常用命令大全
composer 常用命令 1.composer初始化 init 如何手动创建 composer.json 文件.实际上还有一个 init 命令可以更容易的做到这一点. 查看当前版本composer ...
- Python生成30万条Excel 测试数据
使用Python生成30万条Excel 测试数据 from openpyxl import Workbook from concurrent.futures import ThreadPoolExec ...
- vsftp简单配置
添加用户 vi /etc/pam.d/vsftdp 注释掉 auth required pam_shells.so
- Nomad 系列-快速上手
系列文章 Nomad 系列文章 Nomad 重要术语 Nomad 安装设置相关术语 agent - 代理.Agent 是在 Server(服务器) 或 Client(客户端) 模式下运行的 Nomad ...
- SQL Server实例间同步登录用户
SQL Server实例间同步登录用户 问题痛点:由于AlwaysOn和数据库镜像无法同步数据库外实例对象,例如 登录用户.作业.链接服务器等,导致主库切换之后,应用连接不上数据库或者作业不存在导致每 ...
- 在同一个k8s集群中部署多套nginx-controller
1.nginx-controller部署请参考我的另一篇博客 nginx Ingress Controller Packaged by Bitnami 2.修改values.yaml 不通contro ...