常用小技术

--windows 环境下 *.bat方式启动tomcat

*.bat脚本内容:

d:
cd \tomcat7\bin

set JAVA_HOME=D:\jdk6
set CATALINA_HOME=D:\tomcat7

startup.bat

 

--Select 设置只读

<span onmouseover="firstChild.disabled=true" onmouseout="firstChild.disabled=false">

<select>
< option>asfgsdfgg
< option>dfghrtu56
< option>7765687567
< option>dfghrty4676
< /select>
< /span>

 

--SQL Server中如何获取当前年,月,日,时,分,秒

select GETDATE() as '当前日期',
DateName(year,GetDate()) as '',
DateName(month,GetDate()) as '',
DateName(day,GetDate()) as '',
DateName(dw,GetDate()) as '星期',
DateName(week,GetDate()) as '周数',
DateName(hour,GetDate()) as '',
DateName(minute,GetDate()) as '',
DateName(second,GetDate()) as ''

--sql日期格式化

Sql Server 中一个非常强大的日期格式化函数
Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM
Select CONVERT(varchar(100), GETDATE(), 1): 05/16/06
Select CONVERT(varchar(100), GETDATE(), 2): 06.05.16
Select CONVERT(varchar(100), GETDATE(), 3): 16/05/06
Select CONVERT(varchar(100), GETDATE(), 4): 16.05.06
Select CONVERT(varchar(100), GETDATE(), 5): 16-05-06
Select CONVERT(varchar(100), GETDATE(), 6): 16 05 06
Select CONVERT(varchar(100), GETDATE(), 7): 05 16, 06
Select CONVERT(varchar(100), GETDATE(), 8): 10:57:46
Select CONVERT(varchar(100), GETDATE(), 9): 05 16 2006 10:57:46:827AM
Select CONVERT(varchar(100), GETDATE(), 10): 05-16-06
Select CONVERT(varchar(100), GETDATE(), 11): 06/05/16
Select CONVERT(varchar(100), GETDATE(), 12): 060516
Select CONVERT(varchar(100), GETDATE(), 13): 16 05 2006 10:57:46:937
Select CONVERT(varchar(100), GETDATE(), 14): 10:57:46:967
Select CONVERT(varchar(100), GETDATE(), 20): 2006-05-16 10:57:47
Select CONVERT(varchar(100), GETDATE(), 21): 2006-05-16 10:57:47.157
Select CONVERT(varchar(100), GETDATE(), 22): 05/16/06 10:57:47 AM
Select CONVERT(varchar(100), GETDATE(), 23): 2006-05-16
Select CONVERT(varchar(100), GETDATE(), 24): 10:57:47
Select CONVERT(varchar(100), GETDATE(), 25): 2006-05-16 10:57:47.250
Select CONVERT(varchar(100), GETDATE(), 100): 05 16 2006 10:57AM
Select CONVERT(varchar(100), GETDATE(), 101): 05/16/2006
Select CONVERT(varchar(100), GETDATE(), 102): 2006.05.16
Select CONVERT(varchar(100), GETDATE(), 103): 16/05/2006
Select CONVERT(varchar(100), GETDATE(), 104): 16.05.2006
Select CONVERT(varchar(100), GETDATE(), 105): 16-05-2006
Select CONVERT(varchar(100), GETDATE(), 106): 16 05 2006
Select CONVERT(varchar(100), GETDATE(), 107): 05 16, 2006
Select CONVERT(varchar(100), GETDATE(), 108): 10:57:49
Select CONVERT(varchar(100), GETDATE(), 109): 05 16 2006 10:57:49:437AM
Select CONVERT(varchar(100), GETDATE(), 110): 05-16-2006
Select CONVERT(varchar(100), GETDATE(), 111): 2006/05/16
Select CONVERT(varchar(100), GETDATE(), 112): 20060516
Select CONVERT(varchar(100), GETDATE(), 113): 16 05 2006 10:57:49:513
Select CONVERT(varchar(100), GETDATE(), 114): 10:57:49:547
Select CONVERT(varchar(100), GETDATE(), 120): 2006-05-16 10:57:49
Select CONVERT(varchar(100), GETDATE(), 121): 2006-05-16 10:57:49.700
Select CONVERT(varchar(100), GETDATE(), 126): 2006-05-16T10:57:49.827
Select CONVERT(varchar(100), GETDATE(), 131): 18/04/1427 10:57:49:920AM

常用:
Select CONVERT(varchar(100), GETDATE(), 8): 10:57:46
Select CONVERT(varchar(100), GETDATE(), 24): 10:57:47
Select CONVERT(varchar(100), GETDATE(), 108): 10:57:49
Select CONVERT(varchar(100), GETDATE(), 12): 060516
Select CONVERT(varchar(100), GETDATE(), 23): 2006-05-16

 

--Sqlserver截取字符串

SUBSTRING(str,0,CHARINDEX(',',str))

SUBSTRING(str,CHARINDEX(',',str)+1,len(str)

 

--C:foreach

我们常会用c标签来遍历需要的数据,为了方便使用,varStatus属性可以方便我们实现一些与行数相关的功能,如:奇数行、偶数行差异;最后一行特殊处理等等。先就varStatus属性常用参数总结下:

${status.index}      输出行号,从0开始。

${status.count}      输出行号,从1开始。

${status.current}   当前这次迭代的(集合中的)项

${status.first}  判断当前项是否为集合中的第一项,返回值为truefalse

${status.last}   判断当前项是否为集合中的最后一项,返回值为truefalse

beginendstep分别表示:起始序号,结束序号,跳跃步伐。

如:<c:forEach begin='1' end='5' step='2' items='${list}' var='item'>

表示:操作list集合汇中1~5条数据,不是逐条循环,而是按每2个取值。即操作集合中的第135条数据。

 

--js对键盘输入事件绑定到特定按钮

<script type="text/javascript" language="javascript">

        document.onkeyup = function (event) {

            var e = event || window.event;

            var keyCode = e.keyCode || e.which;

            switch (keyCode) {

                case 80:

                    $("#btnPrint").click();

                    break;

                case 83:

                    $("#btnUpload").click();

                    break;

                default:

                    break;

            }

        }

</script>

 

table 添加主键自增

alter table tb alter column id int not null

alter table tb add constraint pkid primary key (id)

 

 

--aop:pointcut expression解析  

execution(* com.aptech.jb.epet.dao.hibimpl.*.*(..)) 

这样写应该就可以了 这是com.aptech.jb.epet.dao.hibimpl 包下所有的类的所有方法。。

 第一个*代表所有的返回值类型 

 第二个*代表所有的类

 第三个*代表类所有方法 最后一个..代表所有的参数。

下面给出一些常见切入点表达式的例子。

任意公共方法的执行:

execution(public * *(..))

任何一个以“set”开始的方法的执行:

execution(* set*(..))

AccountService 接口的任意方法的执行:

execution(* com.xyz.service.AccountService.*(..))

定义在service包里的任意方法的执行:

execution(* com.xyz.service.*.*(..))

定义在service包或者子包里的任意类的任意方法的执行:

execution(* com.xyz.service..*.*(..))

 

--SQL Server查重与删重

一、查重(查询数据库中重复的数据)
SELECT 表名.列名1,表名.列名2,表名.列名3
FROM 表名 RIGHT OUTER JOIN
          (SELECT 列名1, 列名2
         FROM 表名
         GROUP BY 列名1, 列名2
         HAVING COUNT(列名1) > 1 AND COUNT(列名2) > 1) T ON 
      表名.列名1 = T.列名1 AND 表名.列名2 = T.列名2


二、删重(将重复的数据只保留一条,其余删除)
delete 表名 where 列名3 not in(
SELECT MAX(列名3) AS 列名3 FROM 表名 GROUP BY 列名2,列名1)
select 列名3,列名2,列名1 from 表名 where 列名3 in(
SELECT MAX(列名3) AS 列名3 FROM 表名 GROUP BY 列名2,列名1)

注:如列名中有ID,则应保证ID不能有重复

 

--SELECT INTO 和 INSERT INTO SELECT 两种表复制语句

1.INSERT INTO SELECT语句

      语句形式为:Insert into Table2(field1,field2,...) select value1,value2,... from Table1

    要求目标表Table2必须存在,由于目标表Table2已经存在,所以我们除了插入源表Table1的字段外

   2.SELECT INTO FROM语句

      语句形式为:SELECT vale1, value2 into Table2 from Table1

      要求目标表Table2不存在,因为在插入时会自动创建表Table2,并将Table1中指定字段数据复制到Table2

 

--判断对象所有属性是否为空

package utils;

import java.lang.reflect.Field;import java.lang.reflect.Method;

/**

 * Created by weiyang on 2015/2/10.

 */public class BeanUtils {

    public static boolean checkFieldValueNull(Object bean) {

        boolean result = true;

        if (bean == null) {

            return true;

        }

        Class<?> cls = bean.getClass();

        Method[] methods = cls.getDeclaredMethods();

        Field[] fields = cls.getDeclaredFields();

        for (Field field : fields) {

            try {

                String fieldGetName = parGetName(field.getName());

                if (!checkGetMet(methods, fieldGetName)) {

                    continue;

                }

                Method fieldGetMet = cls.getMethod(fieldGetName, new Class[]{});

                Object fieldVal = fieldGetMet.invoke(bean, new Object[]{});

                if (fieldVal != null) {

                    if ("".equals(fieldVal)) {

                        result = true;

                    } else {

                        result = false;

                    }

                }

            } catch (Exception e) {

                continue;

            }

        }

        return result;

    }

 

 

    /**

     * 拼接某属性的 get方法

     *

     * @param fieldName

     * @return String

     */

    public static String parGetName(String fieldName) {

        if (null == fieldName || "".equals(fieldName)) {

            return null;

        }

        int startIndex = 0;

        if (fieldName.charAt(0) == '_')

            startIndex = 1;

        return "get"

                + fieldName.substring(startIndex, startIndex + 1).toUpperCase()

                + fieldName.substring(startIndex + 1);

    }

 

    /**

     * 判断是否存在某属性的 get方法

     *

     * @param methods

     * @param fieldGetMet

     * @return boolean

     */

    public static boolean checkGetMet(Method[] methods, String fieldGetMet) {

        for (Method met : methods) {

            if (fieldGetMet.equals(met.getName())) {

                return true;

            }

        }

        return false;

    }

 

}

 

--两个日期之间sqlserver

select * from 表名

where 1=1

and CONVERT(varchar(8),GETDATE(),112)

BETWEEN CONVERT(varchar(8),CONVERT(VARCHAR(20),日期字段)+'0831',112)

AND CONVERT(varchar(8),CONVERT(VARCHAR(20),日期字段+1)+'0901',112)

 

--POI中背景颜色设置方法如下:

cellStyle = wb.createCellStyle();

cellStyle.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);

cellStyle.setFillForegroundColor(HSSFColor.AQUA.index);

cell.setCellStyle(cellStyle);

 

--替换字段指定值,以及备份表

update 表名 set 字段=replace(字段,old,new)

where 1=1

select * into 备份表名 from 原始表名

 

--Windows获取管理员权限

*.reg脚本内容:

Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\*\shell\runas]
@="取得管理员所有权"
"NoWorkingDirectory"=""
[HKEY_CLASSES_ROOT\*\shell\runas\command]
@="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F"
"IsolatedCommand"="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant
administrators:F"
[HKEY_CLASSES_ROOT\exefile\shell\runas2]
@="取得管理员所有权"
"NoWorkingDirectory"=""
[HKEY_CLASSES_ROOT\exefile\shell\runas2\command]
@="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F"
"IsolatedCommand"="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant
administrators:F"
[HKEY_CLASSES_ROOT\Directory\shell\runas]
@="取得管理员所有权"
"NoWorkingDirectory"=""
[HKEY_CLASSES_ROOT\Directory\shell\runas\command]
@="cmd.exe /c takeown /f \"%1\" /r /d y && icacls \"%1\" /grant administrators:F
/t"
"IsolatedCommand"="cmd.exe /c takeown /f \"%1\" /r /d y && icacls \"%1\" /grant
administrators:F /t"

 

--centos7防火墙
systemctl start firewalld
systemctl status firewalld
firewall-cmd --zone=public --add-port=8888/tcp --permanent
firewall-cmd --reload
--挂载windows共享
mount -t cifs -o username="Administrator" //192.168.1.89/share /root/share

--mysql忘记密码

1、vim /etc/my.cnf,在[mysqld]字段(一定要放在这里,否则无效!)加入skip-grant-tables配置,意思就是跳过密码验证。
2、重启MySQL服务service mysql restart,用mysql -u root直接回车空密码登录进去。
3、重设MySQL的root新密码:
update mysql.user set password=password('alimysql') where user='root';
4、刷新数据库:flush privileges; 后退出。
5、现在可以用新密码 alimysql 登录了!

posted on 2016-03-30 14:09  li_le  阅读(98)  评论(0)    收藏  举报

导航