javaWeb(六)项目初步

1.新建一个javaweb项目:

-new----Others---Dynamic Web Project----添加 类名---选中添加xml文件的选项---Finish

-当在web项目下面导入jar包的时候 直接将 jar包文件 复制到 WebContent---WEB-INF

下面的lib文件即可; 在不使用框架的时候 所有web页面都放在WebContent下面

2.servlet 组件----javaEE组件 用来处理用户请求

- 处理哪一个请求(请求的地址)

- 怎么处理一个请求(处理方式自己写代码)

-servlet 组件怎么使用:

- 想让一个类成为Servlet组件需要具备几个要求

-1.继承父类 HttpServlet

-2.确定该Servlet 需要处理哪个请求

-配置 web.xml

-注解@webServlet

-3.怎么处理请求(代码写在哪)---重写service方法 --重写service方法的时候有两个重要

的参数,一个是HttpServletRequest 另一是 HttpServletResponse

-HttpServletRequest 用户请求对象(包含用户请求信息)

-HttpServletResponse 服务器相应信息(需要我们来设置)

-response.getWriter() 服务器通过输出流将内容输出到页面上面

 

-4.配置xml的servlet信息

<servlet-name> 这个是我们要注册servlet的名字,一般跟Servlet类名有关

<servlet-class> 这个就是指向我们要注册的servlet 的类地址, 要带包路径

以上两个包在一个servlet 节点之下.

<servlet-mapping> 是用来配置我们注册的组件的访问路径,里面包括两个节点

一个是 <servlet-name> 这个要与 前面写的servlet那么一直

另一个是 <url-pattern> 配置这个组件的访问路径

举个例子

<servlet>

<servlet-name>LoginServlet</servlet-name>

<servlet-class>com.breeze.servlet.LoginServlet</servlet-class>

<load-on-startup>1</load-on-startup> 在服务启动的时候就创建一个对象

</servlet>

<servlet-mapping>

<servlet-name>LoginServlet</servlet-name> 与上面的 <servlet-name> 要一致

<url-pattern>/servlet/LoginServlet</url-pattern>

</servlet-mapping>

 

 

可以在方法前面使用注解@WebServlet(urlPatterns="/abc",loadOnStartup=1)

 

-servlet生命周期--1.加载类--2.实例化(初始化--创建对象)---3.的同时会执行一个方法 init() --4.service 方法执行服务 ---5. 销毁

 

-----从servlet中如何显示一个页面:

--1.通过response调用getWriter()方法

--2.转发---找到项目中的一个jsp文件吧jsp文件读取出来 输出到浏览器;

--转发的方式是 request.getRequestDispatcher(arg0).forward(request,response); 参数为目录

--3.重定向----换一个url地址

--response.sendRedirect(arg0); 参数为重定向的目录

 

转发和重定向的区别;转发的是内部,重定向的是地址--重定向要比转发多一次请求;

转发是服务端的事件---重定向是客户端行为---转发不可以跨域,重定向可以跨域

 

4.常用方法:

传递参数的方式

get 方式 在地址之后使用 ?参数名=参数值&参数名=参数值;

post 方式 在from表单中 表单元素的name值为参数名 ,value值为参数值

eg:

<form action="../a" method="get"> 需要返回上一级目录 使用 .. 符号

<input name="id"><br>

<input name="pwd"><br>

<input type="submit">

request.getParameter(arg0); 在页面向后台传递参数

 

--get和--post区别 get 是通过url进行参数传递, post是通过封装数据包进行传递

--安全性来说是post稍微高于get----对于长度限制 基本上可以视为都没有

--get 是通过url进行参数传参数, 不同浏览器是url的长度是有限制的,并不是get限制

--post 没有长度限制,get 也没有长度限制--如果前台input框中有file文件上传的情况只能用post接收, 用get 收到的只能是文件的名字;

 

如果补充协议service方法,则调用弗雷的service方法. 判断该请求是get请求还是post请求

如果是get请求,则调用deGet方法,如果是post请求则调用doPost方法, 如果不重写service的话,则必须重写doGet或者doPost方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值