赞
踩
目录
JSP:Java Server Pages (Java服务器端页面),其实就在HTML中嵌入Java代码。
SUN公司提供了动态网页开发技术:Servlet。Servlet自身有一些缺点,SUN公司发现了这些问题,推出了一个新的动态网页开发技术JSP。
Servlet的缺点:
JSP需要发布到服务器中才可以运行的。
JSP文件翻译成Java文件,将这个Java文件编译生成class文件,运行class文件。
1.4.1什么是JSP的脚本元素:
JSP = HTML + Java代码 + JSP自身东西
JSP的脚本元素就是在JSP中嵌入Java代码。
1.4.2JSP的脚本元素的分类
第一个:声明标签
第二个:表达式标签
语法:
①<%= 表达式 %>
②写在这个脚本中的代码,翻译成方法内部的out.print();当中的内容。
用法:
第三个:程序代码标签
语法:
①<% 程序代码 %>
②写在这个脚本中的代码,翻译成方法内部的局部变量或方法内部代码片段。
用法:
提供一些页面,在页面中会提供链接或者表单,当点击链接或者表单的时候需要进行提交,提交到Servlet中。从页面向Servlet发送请求的地址(路径)应该如何编写。
2.1相对路径:
相对路径的写法:相对路径不是以 / 开头的。
相对路径的使用:
①在根路径下的页面访问Servlet
demo2.jsp的访问路径:
http://localhost:8080/web02/demo2.jsp
ServletDemo1的访问路径:
http://localhost:8080/web02/ServletDemo1
②在某个目录下的页面访问Servlet
demo2.jsp的访问路径:
http://localhost:8080/web02/demo2/demo2.jsp
ServletDemo1的访问路径:
http://localhost:8080/web02/ServletDemo1
2.2绝对路径(通常):
绝对路径的写法:通常以 / 开始的路径
使用绝对路径,不需要关心当前文件和要请求的文件的相对位置的关系!!!
注意:
提供登录页面,用于用户登录(用户名和密码需要查询数据库)。如果登录失败,需要回到登录页面(给出提示信息)。如果登录成功,页面进行跳转,在成功页面上显示登录成功的总人数。
这里说明一下,我们的mvc模式里面,原来的Servlet变成了Controller,封装和处理这块变成了Modul层,页面展示变成了View层。Controller层之做调度,实际的操作还是在Modul层操作。
- create database web02_login;
- use web02_login;
- create table user(
- uid int primary key auto_increment,
- username varchar(20),
- password varchar(20),
- nickname varchar(20)
- );
-
- insert into user values (null,'zs','123','张三');
- insert into user values (null,'ls','123','李四');
- insert into user values (null,'ww','123','王五');
写项目名字,然后选2.5版本
直接next
这里建立好的目录
接下来我们要修改Web项目的编译路径:
在WEB-INF目录下创建classes文件夹。
然后右击项目,选择Build Path ---> Configure Build Path
将编译的输出路径改为:项目名/WebContent/WEB-INF/classes。
点击Apply and Close,你会发现创建的classes文件夹消失了,可以将build文件夹删除了。至此,一个标准的动态Web项目就创建完成了!
controller包存放控制层代码的,对应原来的Servlet
model包主要用来用处理数据的javabean存放的位置
domain包实体的意思,我们通常的数据封装的javabean类放到这里
utils包连接数据库的工具类放到这里
将配置文件放到工程的src下即可
登录页面(login.jsp)--->>登录的Servlet(LoginServlet),在这个Servlet中需要接收数据,将这个数据封装到一个JavaBean中,调用另一个JavaBean处理数据。根据处理结果进行页面跳转。
第一步:在controller包下创建LoginServlet
第二步:在domain下创建一个User类
第三步:在model包下创建一个UserModel类
在这个类中提供一个login的方法
第四步:根据处理结果进行页面跳转
错误信息显示效果:
1.1完成初始化操作
在服务器启动的时候初始化一个值为零,将这个值存入到ServletContext域中。
将这个Servlet配置成启动时加载:
1.2记录登录成功的人数
1.3在登录成功页面上显示总人数
通过ServletRequest对象获得RequestDispatcher对象。
再根据RequestDispatcher中的方法进行请求转发。
注意:这里我说一下,在我用eclipse建立动态web项目的时候,是直接按照指示建立的,但是建立完成之后,我写完转发的ServletDemo1.java代码后,在浏览器中输入对应的地址,就是不转发到相应的jsp页面,报错说说找不到我的ServletDemo1.java这个文件,百度了才知道,要在建立的webapp文件夹下面建立一个classes文件夹,并把java代码编译之后的位置改为这个位置,之前没有指定位置,导致java代码没有编译,所以找不到类。
通过HttpServletResponse对象中的以下方法实现重定向
转发就是客户端发出请求之后,找到Servlet,然后Servlet转发到jsp,然后jsp相应,返回给客户端。
而重定向是客户端发出请求之后,找到Servlet,然后Servlet把重定向的url,返回给客户端,然后客户端又请求这个url,找到jsp页面,然后相应之后返回给客户端。
jsp页面:
注意:
如果需要使用request进行值传递,需要通过请求转发完成。如果页面需要跳转到其他网站上必须使用重定向。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。