Servlet基础

1.手工编写第一个Servlet

⑴继承HttpServlet

⑵重写doGet()或者doPost()方法

⑶在web.xml中注册Servlet

2.使用eclipse编写第一个Servlet

⑴src->new->Servlet

⑵重写doGet()或者doPost()方法

⑶部署运行

3.web.xml文档配置

<servlet>

<servlet-name>HelloServlet</servlet-name>//servlet名字

<servlet-class>servlet.HelloServlet</servlet-class>.//要访问的servlet所在的类,包括包名

</servlet>

<servlet>

<servlet-name>HelloServlet</servlet-name>//和上边的servlet名字一一对应

<url-pattern>/servlet/HelloServlet< /url-pattern >//名字叫HelloServlet的servlet的访问路径,和请求的路径地址一一对应(其中/表示当前web工程的根目录)

</servlet>

4.web服务器在于客户端交互时Servlet的工作过程

小知识点

*超链接访问的就是get请求

*PrintWrter out = response.getWriter();//PrintWriter是浏览器输出对象

response.setContentType(“text/html;charset=utf-8”);//指定输出的文件类型,使得下面的out.println()中的html代码可用;指定字符集为utf-8。

 

5.get方式请求HelloServlet

6.让doPost()执行与doGet()相同的操作

7.servlet的生命周期

首先创建servlet实例,先执行构造方法,再执行初始化方法,再执行doGet()方法,关闭服务器之后执行destory()方法。

8.servlet在tomcat服务器启动时就被装载

方法:在web.xml中的<servlet></servlet>标签最后加上<load-on-startup>1</ load-on-startup >中间的数字越小优先级越高。

9.servlet与JSP九大内置对象的关系

10.把注册信息提交到servlet中

*定义birthday为Date类型,而表单传过来的为String类型,需要用

SimpleDateFormat sdf = new SimpleDateFormat(“yyyy-mm-dd”);

Date birthday = sdf.parse(request.getParameter(“birthday”));

*定义favorite为字符串数组,为了获取多个复选按钮的值,表单传过来的是一个字符串数组,所以获取需要用String[] favorites = request. getParameter(“favorite”)

*定义boolean类型,如flag,表单传过来的是String类型,直接用String类型接收,然后再if(flag.equals(“true”)

{user.setFlag(true)}

Else

{ user.setFlag(false)}

*注册填写完之后的跳转界面,当把信息都存储到user对象中后,把user对象保存到session中,用request.getSession().setAttribute(“regUser”,user);再之后的跳转用request.getRequestDispatcher(跳转.jsp);

*跳转的页面:用<jsp:useBean id=”regUser”class=”entity.Users”scope=”session”>

JavaBean中的property属性用来获取属性值<jsp:getproperty name=”regUser” property=“username”>

11.servlet路径跳转问题

⑴相对路径:

例:<a href=”servlet/HelloServlet”></a>

*当使用超链接方式访问的时候,servlet前如果加/,意思是服务器的根目录,而不是项目的根目录,即Http://localhost:8080/servlet/HelloServlet

*而web.xml文档中,<url-pattern>/servlet/HelloServlet</ url-pattern >中的/表示的是项目的根目录。

⑵绝对路径:可以采用request.getContextPath()的方式访问,它表示项目的根目录。

例:<a href=”<%= request.getContextPath() %>/servlet/HelloServlet”></a>

⑶当由servlet跳转到jsp页面时

①    请求重定向方式

request.sendRedirect(request.getContextPath()+”/test.jsp”)

②    服务器内部跳转

request.getRequestDispatcher(”/test.jsp”).forward(request.response);//此时的/代表项目的根目录

12.MVC模式

EIS为数据库

13.模型1

14.模型2-MVC思想的体现

 

 

最新文章

  1. React使用antd Table生成层级多选组件
  2. office 2010 安装教程
  3. LeetCode 01 Two Sum swift
  4. [Java] Eclipse+Spring学习(一)环境搭建
  5. Spark生态之Spark Graphx
  6. opencv 彩色图像亮度、对比度调节 直方图均衡化
  7. 深刻理解C#的传值调用和传引用调用
  8. UpdatePanel 无刷新弹出窗口
  9. SQLServer中使用索引视图(物化视图)
  10. 点击itemView选中checkbox
  11. BZOJ 3282: Tree( LCT )
  12. 更改TestStep的request header和获取TestStep的response header
  13. VS code golang 开发环境搭建
  14. 6.29一个_rcv 面试题
  15. java实现在图片上编辑文本内容
  16. java语言编程入门
  17. Python 10min系列之面试题解析丨Python实现tail -f功能
  18. OAuth 白话简明教程 5.其他模式
  19. # 20145106 《Java程序设计》第4周学习总结
  20. php BC 高精确度函数库

热门文章

  1. Windows Server2008 R2安装wampserver缺少api-ms-win-crt-runtime-l1-1-0.dll解决方案
  2. 操作系统常用调度算法(转载https://www.cnblogs.com/kxdblog/p/4798401.html)
  3. Linux 小知识翻译 - 「BitTorrent」
  4. input accept属性限制文件上传格式
  5. 5.02-requests_proxy
  6. android与c#之间scoket获取数据进行赋值显示的问题
  7. ASCII,unicode, utf8 ,big5 ,gb2312,gbk,gb18030等几种常用编码区别(转载)
  8. Eclipse中利用JSP把mysql-connector-java-8.0.13.jar放到WebContent\WEB-INF\lib中连接MySQL数据库时Connection conn = DriverManager.getConnection(url,username,password)报错的解决办法
  9. object detection[content]
  10. ASp.Net Mvc Core 重定向