杂乱-js-java

1.notepad大小写转换

  Ctrl+shfit+u:小写转大写

   Ctrl+u:大写转小写

2.多条sql语句遍历执行

 String[] strArray = {sql_sm4, sql_sm2};

 for(String o : strArray){

 int res = conn.sm.executeUpdate(o);

if(res != 0) {

        hs.setAttribute("ManinitErro", "数据库操作失败");

        }

 }

3.【强制】SimpleDateFormat 是线程不安全的类,一般不要定义为 static 变量,如果定义为

static,必须加锁,或者使用 DateUtils 工具类。

正例:注意线程安全,使用 DateUtils。亦推荐如下处理:

private static final ThreadLocal<DateFormat> df = new ThreadLocal<DateFormat>() {

@Override

protected DateFormat initialValue() {

        return new SimpleDateFormat("yyyy-MM-dd");

}

};

说明:如果是 JDK8 的应用,可以使用 Instant 代替 DateLocalDateTime 代替 Calendar

DateTimeFormatter 代替 SimpleDateFormat,官方给出的解释:simple beautiful strong

immutable thread-safe

4.生MD5 数字加字母 32位

DigestUtils.md5Hex("123456")

 //生成6位随机数字和小写字母组合,  

    public StringBuffer getStringRandom() {  

      String str = "abcdefghijklmnopqrstuvwxyz";

         str+= str.toLowerCase();

         str +="0123456789";

      

         char ch = str.charAt(str.length()-1);

        

         StringBuffer sb = new StringBuffer(6);

         for (int i = 0; i <6 ; i++) {

             char ch2 = str.charAt(new Random().nextInt(str.length()));

             sb.append(ch2);

         }

        

        return sb;  

    }  

5.java去掉字符串空格

String base64pfx = request.getParameter("base64pfx").replace(" ", "");

6.URL拼接参数

document.AuditForm.action = " ../NewCert/NewPublic/inputExtend.jsp?cUserID="+cUserID+"&&cRALRAID="+cRALRAID+"&&cCertClass="+cCertClass+"&&cProjectID="+cProjectID+"&&iCertType="+iCertType+"&&disabledTag="+disabledTag;

7.登录loginservlet.java

 derEncodeSignValue   der编码函数

8. js正则表达式

下面给大家介绍下JS正则表达式 必须包含数字、字母、特殊字符

js正则表达式要求:

包含数字、英文字母、特殊符号且大于等于8位

2. 特殊符号包括: ~!@#$%^&*

正则表达式如下:

1

/^(?=.*\d)(?=.*[a-zA-Z])(?=.*[~!@#$%^&*])[\da-zA-Z~!@#$%^&*]{8,}$/

解释:

这里主要用到了js正则表式中的正向前瞻 ?=,举个例子

/\d/.exec( 'abc2abc' ) 匹配结果为2,释义:匹配一个数字

/\d(?=a)/.exec( 'abc2abc' ) 匹配结果为2,释义:匹配一个数字,但是这个数字后面必须跟着字母a

/\d(?=a)/.exec( 'abc2bc' ) 匹配结果为null

由此可以看出,?= 匹配结果中不包含它所匹配的字符,但是待匹配字符串必须符合它所对应的规则

当有多个正向前瞻规则时它们是并列的,不是串行的,比如

/\d(?=a)(?=b)/.exec( 'abc2abc' ) 匹配结果为null,那如果想匹配一个数字,后面必须跟着字母a和b可以这样写

/\d(?=a)(?=.b)/.exec( 'abc2abc' ),当然这是为了演示它的规则,其实可以这样写/\d(?=ab)/.exec( 'abc2abc' )

对于/^(?=.*\d)(?=.*[a-zA-Z])(?=.*[~!@#$%^&*])[\da-zA-Z~!@#$%^&*]{8,}$/

其实整个正则表示可以分为三部分:

/^(?=.*\d)[\da-zA-Z~!@#$%^&*]{8,}$/  

/^(?=.*[a-zA-Z])[\da-zA-Z~!@#$%^&*]{8,}$/

/^(?=.*[~!@#$%^&*])[\da-zA-Z~!@#$%^&*]{8,}$/

待匹配字符串必须同时符合这三部分才可以

知识点扩展:

js 正则表达式 匹配除汉字,字母,数字,逗号,句号外的特殊字符(用来规范输入内容)

/[^\u4e00-\u9fa5a-zA-Z\d,\.,。]+/

其中\u4e00-\u9fa5匹配汉字,a-zA-Z匹配字母,\d匹配数字,,.,。匹配逗号和句号,^表示非,+表示尽可能多的匹配。

9.时间及字符串相互转换

Date applyTime = new Date();

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");

String aplyTime  = sdf.format(applyTime);

Date  aplyTime  = sdf.parse(applyTime);

10.java从配置文件当中读取数据

public class PropertyMgr {

 static Properties pro=new Properties();

 static {

  try {

   pro.load(Tank.class.getClassLoader().getResourceAsStream("config/tank.properties")); //从输入流中读取属性列表

  } catch (IOException e) {

   e.printStackTrace();

  }

 }

 private PropertyMgr(){} //防止别人申明该类的对象

 public static String getProperty(String key){

  return pro.getProperty(key);  //从配置文件中读取

 }

}

11.js读取配置文件

jQuery.i18n.properties({
      name:'pin',
      path:'i18n/',
      mode:'map',
      callback: function() {

      }
   });

return $.i18n.prop('pin');

12.解决js$冲突

在写项目中同时用到了jquery-1.6.2.js和prototype.js两个js文件,使用$的时候冲突。解决方法:

首先引入jquery-1.6.2.js,然后重定义$。

<script type="text/javascript">
   js=$;
   $='aa';
  </script>

然后在引入prototype.js,在使用$的时候用js代替,这样就解决了$无法使用的问题。

13.字节转换

8bit(位)=1Byte(字节)

1024Byte(字节)=1KB

1024KB=1MB

1024MB=1GB

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

曼岛_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值