**
web应用服务器
安装在服务端的服务产品,在web服务器上放置一些允许客户端直接访问的资源,启动服务,客户端通过ip+端口号即可以访问web应用服务器上的资源
下载tomcat压缩包并解压后:
tomcat:
bin目录:存放启动和停止服务等的脚本
- mac电脑通过命令sudo sh startup.sh来启动,windows系统通过bat可以手动启动
conf目录:存放tomcat服务器配置文件 web.xml, server.xml 等
- web.xml 可以在web.xml里配置客户端访问servlet的映射
<servlet></servlet>
和<servlet-mapping>
通过包含的<servlet-name>
相互对应 - tomcat 是通过反射机制创建Servlet的无参构造创建servlet的实例,即通过xml解析,获取运行时类,获取无参构造,接着调用sevlet实现的方法
lib目录:存放tomcat服务需要的jar文件
- servlet-api.jar
- jsp-api.jar
主要用来与客户端响应
logs目录:存放tomcat运行时产生的日志文件
temp目录:存放tomcat运行时的临时文件
webapps:允许客户端访问的资源
work:存放jsp生成的servlet
java web
servlet+jsp
servlet接收客户端请求,进行业务逻辑处理,通过JDBC完成持久化层操作
jsp负责与用户进行操作,将servlet处理好的数据展示给用户
servlet可以完成以下功能:
- 创建并返回基于客户端请求的动态HTML页面
- 与数据库进行通信
Servlet是一个普通java类,实现servlet接口可以接收客户端请求,成为一个服务端组件
实际开发中,只需要继承HttpServlet类即可
关于servlet的访问:
- 通过上述web.xml中配置的servlet的映射的url-pattern来访问
- 通过给继承(
extends
)重写的Httpservlet
类注解,即重写了doPost,doGet方法后,在类上注解@WebServlet("/test.do")
servlet给页面显示内容:
导入java.io.printwriter类,通过doPost传入的response对象调用getWriter()
//通过response 给客户端响应并展示
Printwriter out=resp.getWriter();
out.print("enter the method of servlet");
响应页面乱码问题,找到jsp中的contentType ="text/html;charset=UTF-8"
同样servlet中,获取writer对象之前添加
resp.setContentType("text/html;charset=UTF-8");
客户端访问传参如?name=“zhangsan”
servlet取参数:
String name=req.getParameter("name");
接口servlet
中主要包括
init ,service,destory
getServletConfig,getServletInfo
方法,是servlet组件最顶层
Servlet
接口=>GenericServlet
=>HttpServlet
=>Myservlet
GenericServlet 实现Servlet接口,HttpServlet继承Generic Servlet,MyServlet(开发的servlet类)继承HttpServlet
数据库连接池创建和销毁会在init和destory方法中添加逻辑,其他方法均只需实现
到HttpServlet则只将servlet接口的service方法继承分为doPost和doGet