B035-员工管理系统-Servlet细节_CRUD

目录

      • Servlet细节
        • 多种路径匹配方式
          • 精确匹配(配置多个请求)
          • 通配符匹配
          • 后缀名匹配
        • 默认页面
        • 多个Servlet合并
        • 线程安全
        • 初始化配置
      • 员工管理系统

Servlet细节

多种路径匹配方式

见代码

精确匹配(配置多个请求)

tips:项目不编译:1.clean,取消自动编译,手动编译,2.删项目重来
创建动态web工程,继承HttpServlet,配置web.xml,配置tomcat
web.xml

  <servlet>
  	<servlet-name>helloservlet-name>
  	<servlet-class>cn.test.HelloServletservlet-class>
  servlet>
  <servlet-mapping>
    <servlet-name>helloservlet-name>
    <url-pattern>/hello1url-pattern>
    <url-pattern>/hello2url-pattern>
  servlet-mapping>

@WebServlet(urlPatterns={"/hello3","/hello4"})
通配符匹配

拦截所有路径,常用于登录拦截

@WebServlet("/*")

指定路径后匹配

@WebServlet("/system/user/*")	或:@WebServlet(urlPatterns={"/system/user/*"})
后缀名匹配

不需要正斜杠,不要写html和jsp等,会导致冲突

@WebServlet("*.do")
默认页面

不输入的时候默认访问该路径
web.xml

  <welcome-file-list>
    <welcome-file>index.htmlwelcome-file>
    <welcome-file>index.htmwelcome-file>
    <welcome-file>index.jspwelcome-file>
    <welcome-file>default.htmlwelcome-file>
    <welcome-file>default.htmwelcome-file>
    <welcome-file>default.jspwelcome-file>
  welcome-file-list>
多个Servlet合并

A.html

      <a href="/employee?cmd=add">添加a>
      <a href="/employee?cmd=del">删除a>
      <a href="/employee?cmd=update">修改a>
      <a href="/employee?cmd=select">查询a>

EmployeeServletA

@WebServlet("/employee")
public class EmployeeServletA extends HttpServlet {
	
	@Override
	protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		String cmd = req.getParameter("cmd");
		if("add".equals(cmd)){
			add(req, resp);
		}else if("del".equals(cmd)){
			del(req, resp);
		}else if("update".equals(cmd)){
			update(req, resp);
		}else if("select".equals(cmd)){
			select(req, resp);
		}
	}
  
	protected void add(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException {
		System.out.println("添加数据");
	}
	protected void del(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException {
		System.out.println("删除数据");
	}
	protected void update(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException {
		System.out.println("修改数据");
	}
	protected void select(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException {
		System.out.println("查找数据");
	}
}
线程安全

不要写全局变量

初始化配置

前面已讲

员工管理系统

tips:classes里的db.properties文件如果没有更新编译可以直接替换然后刷新项目来解决

见代码

你可能感兴趣的:(笔记总结,servlet,crud)