推荐一款 在线UML制作工具processOn
2015-03-16 19:39
302 查看
推荐一款 在线UML制作工具processOn
由于默认可以使用的私有文件数量太少了,另外附赠批量要求,只需要有2个邮箱即可,如现在使用email1注册的帐号,现在邀请email2注册,只需修改源码中的被邀请邮箱、用户名开头、email1帐号的要求连接即可,然后运行main,最后进入邮箱email2然后挨个的点击验证就可以了
Processon.java
httpQuery 源码 详见上一篇文章
由于默认可以使用的私有文件数量太少了,另外附赠批量要求,只需要有2个邮箱即可,如现在使用email1注册的帐号,现在邀请email2注册,只需修改源码中的被邀请邮箱、用户名开头、email1帐号的要求连接即可,然后运行main,最后进入邮箱email2然后挨个的点击验证就可以了
Processon.java
import HttpQuery; import org.apache.log4j.Logger; import org.apache.log4j.PropertyConfigurator; import java.util.HashMap; import java.util.Map; import java.util.Properties; /** * Created with IntelliJ IDEA. * User: Karl * Date: 2015/3/16 * Time: 14:10 * Description: */ public class Processon { private static Logger log = Logger.getLogger(Processon.class); public static String BeInvitedEmail = "email2@163.com";//被邀请邮箱 public static String PASSWORD = "123456";//默认注册密码 public static String FULLNAME = "myname_";//默认用户名开头部分 public static String vnviteURL = "https://www.processon.com/i/afa123211f9053502ddf";//我的邀请连接 public static String signup = "https://www.processon.com/signup"; public static String signupSubmit = "https://www.processon.com/signup/submit"; public static void main(String[] args){ try { Processon processon = new Processon(); for(int i=1; i<100; i++) { processon.start(i); } }catch (Exception e){ e.printStackTrace(); } } public void start(int num) throws Exception{ String html = httpQuery.get(vnviteURL, null); html = httpQuery.get(signup,null); String email = this.genSpace(num)+BeInvitedEmail; String pass = PASSWORD; String fullname= FULLNAME+num; Map<String, Object> map = new HashMap<String, Object>(); map.put("email", email); map.put("pass", pass); map.put("fullname", fullname); html = httpQuery.post(signupSubmit, map); int index = html.indexOf("We have sent a verification email"); if(index > 0) { System.out.println(num+": "+html.substring(index, index+190)); }else{ System.out.println(html); } } private String genSpace(int num){ StringBuffer sb = new StringBuffer(); for(int i=0; i<num; i++){ sb.append(" "); } return sb.toString(); } private String Referer = "http://www.processon.com"; private long LOGIN_WIAT_TIME = 10; private HttpQuery httpQuery = new HttpQuery(); static { Properties pro = new Properties(); pro.put("log4j.rootLogger", "DEBUG,C,R,A"); pro.put("log4j.appender.C", "org.apache.log4j.ConsoleAppender"); pro.put("log4j.appender.C.Threshold", "INFO"); pro.put("log4j.appender.C.layout", "org.apache.log4j.PatternLayout"); pro.put("log4j.appender.C.layout.ConversionPattern", "%n %m"); pro.put("log4j.appender.R", "org.apache.log4j.RollingFileAppender"); pro.put("log4j.appender.R.File", "logs/" + Processon.class.getName()+".log"); pro.put("log4j.appender.R.MaxFileSize", "10000KB"); pro.put("log4j.appender.R.MaxBackupIndex", "20"); pro.put("log4j.appender.R.Threshold", "INFO"); pro.put("log4j.appender.R.layout", "org.apache.log4j.PatternLayout"); pro.put("log4j.appender.R.layout.ConversionPattern", "%n[%d{HH:mm:ss}] [%p] %m"); pro.put("log4j.appender.A", "org.apache.log4j.RollingFileAppender"); pro.put("log4j.appender.A.File", "logs/" + Processon.class.getName()+".log"); pro.put("log4j.appender.A.MaxFileSize", "10000KB"); pro.put("log4j.appender.A.MaxBackupIndex", "20"); pro.put("log4j.appender.A.Threshold", "DEBUG"); pro.put("log4j.appender.A.layout", "org.apache.log4j.PatternLayout"); pro.put("log4j.appender.A.layout.ConversionPattern", "%n[%d{HH:mm:ss}] [%p] %m"); PropertyConfigurator.configure(pro); } }
httpQuery 源码 详见上一篇文章
相关文章推荐
- 给大家推荐一款代替Visio的在线作图工具ProcessOn
- 推荐一款免安装的在线Visio流程工具ProcessOn
- 推荐一款好用轻便的在线UML画图工具
- 推荐一款好用轻便的在线UML画图工具
- 推荐一款在线作图工具ProcessOn
- 给大家推荐一款代替Visio的在线作图工具ProcessOn
- 推荐一款制作ICO的好工具Axialis IconWorksop 6.10
- 推荐一个在线制作网页背景图的工具
- 推荐一个 HTML5在线的流程图工具——ProcessOn
- 推荐一款好用的在线笔记工具evernote
- StarUML---推荐一款UML工具(很好很强大)
- StarUML---推荐一款UML工具
- 推荐一款UML工具:StarUML
- 推荐一款CSS在线调试工具
- Processon 一款基于HTML5的在线作图工具
- StarUML---推荐一款UML工具(很好很强大)
- StarUML---推荐一款UML工具(很好很强大)
- [CSS]推荐一款CSS在线调试工具
- 分享一款免费在线做图工具:ProcessOn
- 推荐一款高端大气上档次的在线作图工具