软件架构: 1. C/S: Client/Server 客户端/服务器端 * 在用户本地有一个客户端程序,在远程有一个服务器端程序 * 优点: 1. 用户体验好 * 缺点:
1. 开发、安装,部署,维护 麻烦 2. 对硬件要求过高
2. B/S: Browser/Server 浏览器/服务器端 * 只需要一个浏览器,用户通过不同的网址(URL),客户访问不同的服务器端程序 * 优点:
1. 开发、安装,部署,维护 简单 2. 对硬件要求不高
* 缺点: 1. 如果应用过大,用户的体验可能会受到影响
用startup.bat启动tomcat:
1. Localhost:8080 //访问tomcat网站 2. 在Webapps文件夹下写自己的
3. 通过 Localhost:8080/文件夹名/文件名 可以访问自己创建的
4. 若文件名为index 则不需要写文件名也可以访问。Localhost:8080/文件夹名 5. C:\\Windows\\System32\\drivers\\etc 中的hosts 在此文件中可以更换域名
127.0.0.1 wuchenxu.cc (注意权限)
6. D:\\develop\\tomcat\\apache-tomcat-9.0.37\\conf中server.xml中可以更改域名:
点击configure 在Tomcat Home中选择自己的tomcat路径即可 在Deployment中点击+ 8. 解决中文乱码问题: 在idea64.exe.vmoptions中增加一行-Dfile.encoding=UTF-8 9. 需要继承HttpServlet 重写service方法: public class HelloServlet extends HttpServlet { @Override protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { resp.setCharacterEncoding(\); //设置编码格式 System.out.println(\); //在控制台输出 resp.getWriter().println(\木头人\); //在浏览器页面输出 } } 没有main方法也可以执行,启动时执行的是tomcat的main方法。 10. 启动tomcat时会专门找web.xml文件,调到内存中。 配置web.xml文件: //*(0或多个)写或不写都可以,相当于通配符,后面任意字符都可以 //有一个servlet,至少有一个对应的servlet-mapping 11. 执行原理: 1. 当服务器接受到客户端浏览器的请求后,会解析请求URL路径,获取访问的Servlet的资源路径 2. 查找web.xml文件,是否有对应的 12. Servlet中的生命周期方法: 1. 被创建:执行init方法,只执行一次 * 默认情况下,第一次被访问时,Servlet被创建 2. 提供服务:执行service方法,执行多次 * 每次访问Servlet时,Service方法都会被调用一次。 3. 被销毁:执行destroy方法,只执行一次 * Servlet被销毁时执行。服务器关闭时,Servlet被销毁 * 只有服务器正常关闭时,才会执行destroy方法。 * destroy方法在Servlet被销毁之前执行,一般用于释放资源 13. 注解的方式(不用配置xml文件了): 1. @WebServlet(“路径”) 例如:@WebServlet(“/hello”) 2. 若是对应多个路径:@WebServlet(“路径1”,“路径2”) 3. 在注解方式中表示启动时机: @WebServlet(name=“HelloServlet”,value={“路 径1”,“路径