zoukankan      html  css  js  c++  java
  • JavaWeb(action层)

    • action是什么?

            action是获得form表单数据 再去处理的类

    • 为什么要有action?

    因为在servlet中往往会出现使用一个servlet处理多个功能,比如

    登陆功能,注册功能,浏览功能等,这样action就是必不可少的了

    • 怎么去使用action?

    首先是启动服务后,在浏览器上输入

    然后通过代码来获取action的值

    String action = req.getParameter("action");

    使用这句代码来获得当前action的值

    然后action可以根据它的值来匹配不同的功能

    	if(action.equals("list"))
    {
    //浏览功能
    }
    	else if(action.equals("addnew"))
    	{
    //添加功能
    }
    

    通过这样来将servlet根据请求来处理不同的功能。

    另外如果要跳转到jsp页面 可以通过跳转来重定向 这个上文有提到过,

      • 主要代码如下
    else if(action.equals("addnew"))
    	{
    		
    		req.getRequestDispatcher("/addnew.jsp").forward(req,resp);
    	
    		
    		
    	}
    	else if(action.equals("addnewSubmit"))
        {
            String name= req.getParameter("name");
            int age = Integer.parseInt(req.getParameter("age"));
             
            try
            {
                JdbcUtils.executeUpdate("insert into T_Persons2(Name,Age) values(?,?)", name,age);
                
                resp.sendRedirect("person?action=list");
            } catch (SQLException e)
            {
      
                req.getRequestDispatcher("/Myerror.jsp").forward(req, resp);
                //resp.sendRedirect("MyError.jsp");
            }
    

     这样就可以完成人员的添加功能。

    • action层前端

    在前端需要使用form标签来进行表单提交,这里有两个提交一个是通过get来提交,而另外一个是通过报文头来提交。也就是get请求和post请求。

    然后服务器端通过浏览器来读取出数据,为了使浏览器能获得单一表单的值,还需要在form标签中设定name的属性值。

    也就是"name=value",多个键值对之间是采用的&&来分割。

    String action = req.getParameter("name");
    

      

    这样就可以取出表单中name的值了。另外需要注意的是在表单中id不能重复但是name的值可以是重复的。

     

  • 相关阅读:
    JS日期比较,使用正则表达式转换
    Using SQL*Loader to create an external table
    USACO试题beads的两种解法
    activiti5学习资料(5.12版本流程图的生成)
    黑马程序员_day20_Map集合
    开发者使用JasperReport——不同数据源之Map数据源
    给自己科谱:控制字符
    507 Jill Rides Again
    探讨工作流能给公司带来的几点益处
    ubuntu linux安装双系统的方法Win7、XP下均可
  • 原文地址:https://www.cnblogs.com/a986771570/p/8029907.html
Copyright © 2011-2022 走看看