扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
String temp = "form name='form1' method='post' action='null'input type='hidden' name='Retdesc' value='parameters error'/formscriptdocument.form1.submit();/script";
站在用户的角度思考问题,与客户深入沟通,找到同心网站设计与同心网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:网站制作、做网站、企业官网、英文网站、手机端网站、网站推广、域名与空间、网络空间、企业邮箱。业务覆盖同心地区。
String reg = "name\\s*\\=\\s*[\\w\'\"[^\\]]+|value\\s*\\=\\s*[\\w\'\"\\s[^\\]]+";
Pattern pattern = Pattern.compile (reg);
Matcher matcher = pattern.matcher (temp);
while (matcher.find ())
{
System.out.println (matcher.group ());
}
用Java模拟form表单提交的方法,在struts2中的配置如下:
!-- action属性为actionNmae!methodName的形式
其中ActionName指定提交到哪个Action,而methodName指定提交到指定方法--
action="ActionName!add"
其中一个按钮的代码如下:
input type="submit" value="注册" onclick="regist();" /
点击“注册”按钮被单击时触发regist函数,该函数的代码如下:
script type="text/javascript"
function regist(){
targetForm = document.forms[0];
targetForm.action = "login!add";
}
/script
java中使用request.getParameter("参数名")方法来获取form表单传过来的数据。
具体代码如下:
jsp代码:
%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%
!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
html
head
titleDemo/title
meta http-equiv="pragma" content="no-cache"
meta http-equiv="cache-control" content="no-cache"
meta http-equiv="expires" content="0"
meta http-equiv="keywords" content="keyword1,keyword2,keyword3"
meta http-equiv="description" content="This is my page"
/head
body
form action="demoServlet" method="post"
table
tr
td
input type="text" name="name" id="name"/
/td
/tr
tr
td
input type="submit" value="提交"/
/td
/tr
/table
/form
/body
/html
Servlet代码:
public class DemoServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String name = request.getParameter("name");
System.out.println(name);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}
其中DemoServlet是一个继承了HttpServlet类的Servlet类,当表单提交(点击提交按钮)时,回去调用这个类的doPost()方法,执行对应的代码,通过request.getParameter("name")来获取表单的值。
前台页面form表单 action="LoginServlet" method="post"
后台页面 Servlet 调用doPost方法 执行代码,
使用request.getParameter("参数名")方法来获取form表单传过来的数据
import java.util.*;
import java.util.regex.*;
class Tester{
private static String get(String input, String tagName, String key){
String reg = "(?i)" + tagName + "[^]*(" + key + ")[=\"\'\\s]+([^\"\']*)[\"\']?";
Pattern p = Pattern.compile(reg);
Matcher m = p.matcher(input);
String result = "";
while(m.find()){
result += m.group(2) + "|";
}
return result.replaceAll("\\|$","");
}
public static void main(String[] args){
String input =
"form name='form1' method='post' action=''input type='hidden' name='Retdesc' value='parameters error'input type='hidden' name='user' value='333'/formscriptdocument.form1.submit();/script";
HashMapString, String map = new HashMapString, String();
map.put("action", get(input, "form", "action"));
map.put("name", get(input, "input", "name"));
map.put("value", get(input, "input", "value"));
System.out.println(map);
}
}
submit属于提交按钮,谈不上调用java代码吧,只是通过html标签里的功能实现提交表单。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流