手动开发动态资源之servlet初步
1.1 静态资源和动态资源的区别
静态资源:当用户多次访问这个资源,资源的源代码永远不会改变的资源。
动态资源:当用户多次访问这个资源,资源的源代码可能会发送改变。
1.2动态资源的开发技术
Servlet: 用java语言来编写动态资源的开发技术。
Servlet特点:
1)普通的java类,继承HttpServlet类,覆盖(重写)doGet方法
2)Servlet类只能交给tomcat服务器运行!!!!(开发者自己不能运行!!!)
Servlet手动编写步骤:
1)编写一个servlet程序,继承HttpServlet
/** * 第一个servlet程序 * @author APPle * */ publicclassHelloServlet extends HttpServlet{
@Override protectedvoid doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //解决中文乱码问题 resp.setContentType("text/html;charset=utf-8"); //向浏览器输出内容 resp.getWriter().write("这是第一个servlet程序。当前时间为:"+new Date()); } } |
2)找到HelloServlet类的class字节码,然后把整个包拷贝到tomcat的一个web应用中WEB-INF/classes目录下。
3)在当前web应用下的web.xml文件配置Servlet。
<!-- 配置一个servlet程序 --> <servlet> <!-- servlet的内部名称 ,可以自定义--> <servlet-name>HelloServlet</servlet-name> <!-- servlet类名: 包名+简单类名--> <servlet-class>gz.itcast.d_servlet.HelloServlet</servlet-class> </servlet>
<servlet-mapping> <!-- servlet的内部名称,和上面的名称保持一致!!!--> <servlet-name>HelloServlet</servlet-name> <!-- servlet的访问名称: /名称 --> <url-pattern>/hello</url-pattern> </servlet-mapping> |
4)启动tomcat服务器,运行访问
访问servlet: http://localhost:8080/myweb/ hello
服务器加载这个文件的过程是:首先根据http://localhost:8080/myweb/hello加载</servlet-mapping>里面的<url-pattern>/hello</url-pattern>,然后加载</servlet-mapping>里面的<servlet-name>HelloServlet</servlet-name>,此时再去<servlet>中找到对应的<servlet-name>HelloServlet</servlet-name>,再在<servlet>找到<servlet-class>gz.itcast.d_servlet.HelloServlet</servlet-class>来加载这个类。