`
zhangziyangup
  • 浏览: 1118898 次
文章分类
社区版块
存档分类
最新评论

javaweb小结

 
阅读更多

一、tomcat
1. 配置文件
server.xml : 配置tomcat的参数,服务器启动时加载修改了一定要重启服务器
web.xml :每个web应用的web.xml文件都会继承该文件下所有的配置

二、servlet
1. 一个java类实现了Servlet接口,我们就称之为Servlet
2. 默认的实现类
GenericServlet: 提供了getServletConfig和getServletContext方法
HttpServlet:覆写了service方法,将ServletRequest和ServletResponse强转为子类HttpServletRequest和HttpServletResponse判断请求方式,从而决定去调用doGet和doPost
所以,子类只需要覆写doGet 和 doPost 即可
3. Servlet的映射
Servlet需要在web.xml文件中做映射,web容器才能对Servlet进行初始化
<servlet> 为 servlet 起别名
<servlet-mapping>为 servlet映射访问路径以'/'开头,代表web应用
4. ServletConfig
读取servlet初始化信息
5.ServletContext
代表当前web应用,也被称为 servlet上下文
它是域对象,可以让多个servlet共享数据
读取web应用下的所有文件
getRealPath 获得绝对路径
getResourceAsStream获得输入流
6. 类加载读文件
Demo.class.getClassLoader().getResource().getPath();获得绝对路径
Demo.class.getClassLoader().getResourceAsStream()获得流
三、request和response
1. request
获得ie发送的数据
常用方法
getMethod 获得请求方式
getRequestUri 获得请求资源名
getHeader 获得请求消息头
getParameter 获得请求参数
getParameterNames获得所有参数名 结合BeanUtils 使用
getRemoteAdress()获得来访者ip

请求转发
request.getRequestDispatcher("/index.jsp").forward(request,response);
mvc 设计模式
servlet处理用户的请求,将结果转发给jsp 数据封装在javabean

获得请求参数中文乱码问题
get
String result =new String(data.getBytes("iso-8859-1"), "utf-8");
post
request.setCharacterEncoding("utf-8");

-------

mvc模式下:

response.sendRedirect 重定向 让其他servlet来处理,servlet让浏览器找其它servlet来处理
request.getRequestDispatcher请求转发 使用jsp来显示, servlet自己找其它jsp来显示

-------

2. response
向ie发送数据
response.getWriter()获得字符流
response.getOutputStream()获得字节流
两者不可同时调用

乱码问题
response.setContentType("text/html;charset=utf-8");

文件下载
文件名中文乱码问题
原因在于文件名是跟着http头发送的需要进行url编码
讲解了url编码

请求重定向
response.sendRedirect("/day08/.....")
response.sendRedirect(request.getContextPath()+ "/.....");

四、 会话技术cookie 和 session
1. cookie
存在客户端浏览器
name=value 的形式
cookie需要设置有效时间才会缓存,否则只在浏览器进程有效
cookie.setMaxAge()如果设置为0,则命令浏览器立即删除cookie

设置有效路径
cookie.setPath();
默认在当前路径有效
举例:/day07/servlet/CookieServlet -- 只在访问 /day07/servlet 开头的路径时才发送cookie

cookie.setDomain();设置有效主机

案例: 显示曾经浏览过的商品

2. session
HttpSession
存在服务器端的
底层是依赖cookie实现的
浏览器来访问服务器,web服务器创建一个session对象,并将sessionid以cookie的
形式发送给浏览器,浏览器再次访问服务器时会带着cookie来,服务器根据cookie
中保存的sessionid获得session对象为用户服务

session 默认失效时间为30分钟
在 web.xml 文件中可以设置
<session-config>
<session-timeout>11</session-timeout>
</session-config>

案例:
购物案例(实现多浏览器共享session)
url重写(解决浏览器禁用cookie的问题)
防表单重复提交
用户登陆

五、 jsp
1. jsp 工作原理
ie访问一个jsp,jsp引擎将jsp翻译成servlet ,剩下的事和servlet的访问过程一样
2. jsp语法
jsp指令 page指令 : import导包 session指定是否用session pageEncoding解决编码
jsp写java代码
jsp脚本表达式 jsp脚本片段 jsp声明
3. 九个隐式对象
configServletConfig
applicationServletContext
responseHttpServletResponse
requestHttpServletRequest
session HttpSession
out JspWriter
page this
exceptionThrowable (需要配置isErrorPage)
pageContextPageContext

pageContext主要功能,用于获得其他8大隐式对象

pageContext 也是一个域对象,但只是在当前jsp页面有效

4. web开发的四个域对象
page requestsession application
什么时候用
page: 用map不如用page
request: 请求转发
session: 请求重定向
application : 全局数据
六、 javabean
javabean 特定写法的java类,必须有无参构造方法、属性私有、共有的setter和getter

七、 el表达式
数据访问语言 用于取数据
从四个域取对象
取javabean的属性
取容器的元素 arrlist map

11个隐式对象
pageContext、param、paramValues、header、headerValues
pageScope、requestScope、sessionScope、applicationScope
cookie、initParam

pageContext:该对象实例对应于当前页面的处理。

pageScope:与页面作用域属性的名称和值相关联的Map类。

requestScope:与请求作用域属性的名称和值相关联的Map类。

sessionScope:与会话作用域属性的名称和值相关联的Map类。

applicationScope:与应用程序作用域属性的名称和值相关联的Map类。

param:按名称存储请求参数的主要指的Map类。

paramValues:将请求参数的所有值作为String数组存储的Map类。

header:按名称存储请求头的主要指的Map类。

headerValue:将请求头的所有值作为String数组存储的Map类。

cookie:按名称存储请求附带的Cookie的Map类。

initParam:按名称存储Web应用程序上下文初始化参数的Map类



el自定义函数
1) 写一个java类,定义一个静态方法
2) 在 WEB-INF目录下写 tld文件
3) 在jsp页面引入tld标签库 直接使用

八、 jstl标签
导入两个jar包 Jstl.jar Standard.jar

在jsp页面要声明引入标签库
<%@ taglibprefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

1、forEach 迭代标签

用于循环遍历


<c:forEach var="good" items="${goodlist}">
</c:forEach>
2、if 条件判断

<c:if>标签 用于判断

3、<c:choose>、<c:when>和<c:otherwise>标签

if标签没有else的功能。如果需要类似与Java中if...else...的流程,需要使用choose标签。choose标签连同when,otherwise标签一块实现if...else...功能。

<c:choose>

<c:whentest="${ status == 'login' }">

when标签的输出

</c:when>

<c:otherwise>

otherwise标签的输出

</c:otherwise>

</c:choose>

当<c:when>标签中获得的参数值时login时,显示了<c:when>标签中的内容。如果获得的参数值不满足<c:when>标签中的条件,则进入<c:otherwise>标签。这里的<c:when>和<c:otherwise>相当于Java中的if...else...语句。
后面不有很多标签,又后总结



分享到:
评论

相关推荐

    javaWeb小结

    ### JavaWeb小结 #### B/S与C/S架构的区别 JavaWeb主要关注的是B/S(Browser/Server,浏览器/服务器)架构,与传统的C/S(Client/Server,客户端/服务器)架构有着显著的不同: 1. **安装与部署**:B/S架构只在...

    JavaWeb开发结课报告格式说明.pdf

    【JavaWeb开发结课报告格式说明】 在JavaWeb开发中,结课报告是对整个项目开发过程的总结,它详尽地记录了项目的各个方面,包括设计思路、实施过程、技术选型以及最终成果。一份规范的JavaWeb开发结课报告应该包含...

    Javaweb学习小结.docx

    JavaWeb学习小结涵盖了多个关键知识点,包括Tomcat服务器、XML、HTTP协议、Servlet技术和相关的应用,如...以上就是JavaWeb学习小结的主要内容,这些知识构成了JavaWeb开发的基础,对于理解Web应用的工作原理至关重要。

    JavaWeb开发结课报告格式说明.docx

    JavaWeb开发结课报告是学生在完成JavaWeb项目后撰写的一种文档,旨在总结学习过程、项目设计思路、实现技术和遇到的问题。报告的格式规范对于确保信息的清晰度和专业性至关重要。以下是根据提供的内容,对JavaWeb...

    JavaWeb开发结课报告格式说明 (2).pdf

    JavaWeb开发结课报告是学生在完成一个JavaWeb项目后,对其开发过程和成果进行总结的书面材料。这篇报告的格式规范严谨,旨在提供清晰、结构化的信息,以便教师评估和读者理解。以下是对报告中涉及的知识点的详细说明...

    JavaWeb开发结课报告格式说明 (3).pdf

    JavaWeb开发结课报告是学生在完成JavaWeb项目后提交的一种学术性文档,它详尽地阐述了项目开发的过程、目的、技术实现和成果。以下是报告格式的重要元素及其详细解释: 1. **封面**:封面通常包含报告的标题——...

    JavaWeb培训讲义

    #### 七、小结 - 本次培训旨在帮助初学者快速入门JavaWeb开发,涵盖了JavaWeb的基础知识、关键技术以及实战案例分析等内容。 - 通过学习,学员能够掌握JavaWeb应用的基本构建方法,了解Servlet容器的工作机制,并...

    第一个JavaWeb应用

    #### 3.6 小结 通过本章的学习,我们了解了JavaWeb应用的基本组成、目录结构以及如何在Tomcat中发布JavaWeb应用。此外,还介绍了如何创建自定义JSP标签以及使用批处理文件或Ant进行自动化构建的过程。这些基础知识...

    JavaWeb基础总结

    ### 小结 本文从HTTP协议入手,介绍了JavaWeb的基本组成要素,包括Servlet、JSP以及MVC模式。通过这些基础知识的学习,读者可以更好地理解和构建JavaWeb应用。希望本文能够帮助大家建立起JavaWeb开发的基础框架,并...

    基于Javaweb的在线影院的设计和实现毕业设计程序

    采用java技术构建的一个管理系统。整个开发过程首先对系统进行需求分析,得出系统的主要功能。接着对系统进行总体设计和详细设计。总体设计主要包括系统功能设计、系统总体结构设计、系统数据结构设计和系统安全设计...

    Javaweb-网上书城项目实验报告书-课程设计报告书.doc

    1. 疑难小结:可能遇到的问题包括用户身份验证的安全性、数据库设计的优化、并发处理的效率、支付接口的对接等。 2. 心得体会:通过项目实践,理解了Javaweb开发的实际流程,增强了数据库设计和系统架构的能力,同时...

    基于javaweb项目实验室管理系统设计与现实(论文+项目源码)

    2.7 本章小结 3 系统分析 7 3.1 可行性分析 3.1.1 技术可行性 7 3.1.2 经济可行性 8 3.1.3 操作可行性 8 3.1.4 发展可行性 8 3.2 性能需求分析 8 3.3 系统流程分析 9 3.3.1 登录流程 9 3.3.2 文科综合实验实验室发布...

    IDEA新建javaWeb以及Servlet简单实现小结

    IDEA新建javaWeb以及Servlet简单实现小结 IDEA新建javaWeb以及Servlet简单实现小结是一个关于使用IDEA开发javaWeb项目和Servlet的教程。该教程主要介绍了如何使用IDEA新建javaWeb项目,并实现一个简单的Servlet。 ...

    JavaWeb 开发环境安装.pptx

    小结 本章我们学习了如何安装 JDK、Tomcat 和 Eclipse,搭建 JavaWeb 开发环境。安装这些组件需要下载安装包,配置环境变量,解压缩安装包等步骤。只有安装了这些组件,才能开始 JavaWeb 开发。

    JAVA WEB典型模块与项目实战大全

    1.5 小结  第2章 myedipse开发工具对各种框架的支持  2.1 使用jsp的两种模式  2.2 struts框架的实现  2.3 hibernate框架的实现  2.4 jpa框架的实现  2.5 spring框架的实现  2.6 jsf框架的实现  2.7...

    基于Java Web的学生成绩信息管理系统_学位论文

    1.5 本章小结 第二章 基础知识及相关设计原理 2.1 Java 相关技术简介 2.1.1 Java 简介 2.1.2 JSP 技术简介 2.1.3 JDBC 简介 2.2 B/S 模式分析 2.3 Struts 框架 2.4 Servlet 技术 2.5 开发工具介绍 2.5.1 ...

    基于JavaWeb的中小型医院门诊管理系统的设计与实现.docx

    小结 本资源的主要内容是基于JavaWeb的中小型医院门诊管理系统的设计与实现,涵盖了系统设计、技术选型、数据库设计、系统实现、系统测试等方面的知识点。同时,本资源也对医院门诊管理系统的设计与实现进行了详细...

    JAVAWEB应用开发报告.pdf

    5. **项目开发小结**: - 开发过程中会遇到的问题解决,如异常处理、性能优化、安全性考虑等。 - 技术上的学习与应用,如MVC模式的理解、AJAX的运用、数据库操作的技巧等。 - 团队协作的经验,包括版本控制(Git...

Global site tag (gtag.js) - Google Analytics