1、Web应用
网络上提供的网络资源集合,也就是一般所说的网站。网站通常指静态页面html页面为主的站点信息发布平台,应用就是应用程序处理用户的请求并进行程序处理提供用户响应结果。
Web应用是在服务端处理用户请求,将结果返回给客户端的网络应用程序。
2、Tomcat
Tomcat Web容器:放Web应用程序的程序。
bin:可执行文件目录
webapps:tomcat应用存放空间
work:工作空间
端口的修改:apache-tomcat-7.0.70\conf\server.xml
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
修改项目目录:apache-tomcat-7.0.70\conf\server.xml
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
增加一个额外的配置站点
<Context doBase="运行项目的绝对路径" path="/浏览器访问的名称" >
3.创建一个Servlet,并进行数据的接收以及返回
@WebServlet(urlPatterns={访问项目名})
//接口声明功能规范
public class MyServlet implements Servlet{
public MyServlet(){
System.out.println("创建");
}
private ServletConfig config;
//初始化
@Override
public void init(ServletConfig config) throws ServletException {
//System.out.println("初始化"+config.getServletName());
//System.out.println(config.getInitParameter("param"));
this.config=config;
}
//服务(处理请求响应结果)
@Override
public void service(ServletRequest request, ServletResponse response)
throws ServletException, IOException {
ServletInputStream si = request.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader (si));
String line = null;
StringBuilder sb = new StringBuilder();
while((line = br.readLine())!=null){
sb.append(line);
}
System.out.println(sb);
ServletOutputStream so = response.getOutputStream();
BufferedWriter writer=new BufferedWriter(new OutputStreamWriter(so));
writer.write("nihao");
writer.flush();
System.out.println("处理");
// StringBuffer buffer = null;
// try {
// BufferedReader reader = request.getReader();
// buffer = new StringBuffer();
// String string=null;
// while ((string = reader.readLine()) != null) {
// buffer.append(string);
// }
// reader.close();
// } catch (IOException e) {
// // TODO Auto-generated catch block
// e.printStackTrace();
// }
}
//销毁
@Override
public void destroy() {
System.out.println("销毁");
}
@Override
public ServletConfig getServletConfig() {
return this.config;
}
@Override
public String getServletInfo() {
return "系统servlet,第一个启动的程序:"+this.config.getServletContext().getServerInfo();
}
}
以上使用注解的形式进行servlet的声明,也可以使用web.xml的形式进行注册
<?xml version="1.0" encoding="UTF-8"?>
http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>/js/*</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>MyServlet</servlet-name>
<servlet-class>com.hq.servlet.MyServlet</servlet-class>
<init-param>
<param-name>param</param-name>
<param-value>value</param-value>
</init-param>
<!-- 服务器启动加载时执行 -->
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>MyServlet</servlet-name>
<url-pattern>/MyServlet</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>MyServlet</welcome-file>
</welcome-file-list>
</web-app>
Servlet的应用:
a、创建Servlet对象:Servlet含义是Server小程序。
b、Servlet生命周期:创建对象后,init,service,destory
c、当第一次访问Servlet时创建对象,并且执行一次init方法,service多次执行处理所有请求。