`
文章列表
近期为了解决一些security的问题,把DAO层JDBC的Statement全部替换为PreparedStatement,然后遇到一个非常奇怪的问题是,一个简单的SQL, 比如 SELECT * FROM MDC_DATA_TYPE WHERE name = 'A' AND number = 1; 改成使用SELECT * FROM MDC_DATA_TYPE WHERE name = ? AND number = ?之后,执行时间几乎慢了100倍,这几乎与业界推荐使用PreparedStatement的事实背道而驰。于是花了很多时间来找原因。   后来找了曾在微软做SQL Ser ...
JSTL中的if是没有else的。。。替代方法如下: <c:forEach var="image" items="${contents}">    <c:choose>        <c:when test="${color eq 'body-white-bg' }">            <c:set var="color" value="body-black-bg"></c:set>        </c:when&g ...
转自 http://wakan.blog.51cto.com/blog/59583/7220 原文 http://www.edankert.com/defaultnamespaces.html     诸如“为什么用 XPath 的表达式进行查询,却没有返回所期望的结果?” 的问题通常都与命名空间(NameSpace)有关,而且绝大多数是与缺省命名空间(Default Namespace)有关。本文试图解释这个问题并针对三种流行的 XPath 实现给出解决方法:Jaxen、JAXP XPPathFactory 以及 XSLT。 内容列表 问题描述 “前缀-命名空间”映射 ...
比如:   DECLARE @SQLString NVARCHAR(500)DECLARE @ParmDefinition NVARCHAR(500)DECLARE @IntVariable INTDECLARE @StringVariable NVARCHAR(100)DECLARE @Lastlname varchar(30)SET @SQLString = N'SELECT @LastlnameOUT = max(lname) FROM pubs.dbo.employee WHERE job_lvl = @level and field1 = @myParam'SET @ParmDe ...

Java enum的使用

enum TestEnum {    NONE("none"), UNKNOWN("unknown"), HORIZON("horizonGroup"), REAL_DIVIDERS("realDivider"), DATE_DIVIDERS("dateDivider");    private final String name;    public String getName() {        return name;    }    TestEnum(String name) {    ...
1. 非lazy模式 //Singleton with static factoryclass SingletonExample {    private static final SingletonExample singleton = new SingletonExample();    private SingletonExample() {    }    public static final SingletonExample getInstance() {        return singleton;    }}   2. lazy模式的实现 (效率很低) class ...
近期项目使用SpringMVC,并配置DBCP BasicDataSource作为数据源。因特殊需求,web session的有效时间需要设置为很长,导致有可能DB connection会被mysql回收,所以需要配置DBCP可以在执行sql前检查connection的有效性,如已失效,希望能获得一个新的有效connection(自动重连)。   已有配置(最简化): <!-- DataSource --> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSour ...
JSR-303是sun的基于注解的JavaBean校验规范,仅仅是一个规范,没有具体实现。Spring也没有对其进行实现,要想在SpringMVC中需要使用JSR-303就需要提供一个对JSR-303规范的实现,最常见的是Hibernate Validator。   1. pom依赖        <!-- JSR-303 -->        <dependency>            <groupId>javax.validation</groupId>            <artifactId>validatio ...
1. JQuery发送Ajax请求var array = [{id: '01', name: 'name01'}, {id: '02', name: 'name02'}];$.ajax({    type: "PUT",    url: '/WebTest/user/create/batch',    data: JSON.stringify(array),    contentType: 'application/json',    dataType: 'json',    success: function() {        console.log('get re ...
1. Collections.sort(): List<Integer> list = new ArrayList<Integer>(); list.add(1); list.add(3); list.add(2); for (int i : list) { System.out.println(i); } Collections.sort(list); for (int i : list) { ...

CSRF简介

转自: http://www.cnblogs.com/hyddd/archive/2009/04/09/1432744.html   一.CSRF是什么?   CSRF(Cross-site request forgery),中文名称:跨站请求伪造,也被称为:one click attack/session riding,缩写为:CSRF/XSRF。 二.CSRF可以做什么?   你这可以这么理解CSRF攻击:攻击者盗用了你的身份,以你的名义发送恶意请求。CSRF能够做的事情包括:以你名义发送邮件,发消息,盗取你的账号,甚至于购买商品,虚拟货币转账......造成的问题包括:个人隐私 ...
转自: http://www.cnblogs.com/coderzh/archive/2008/09/06/1285500.html   XSS又叫CSS (Cross Site Script) ,跨站脚本攻击。它指的是恶意攻击者往Web页面里插入恶意html代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意用户的特殊目的。 使用过ASP的同学一定见过这样的代码:   Hello, &nbsp;<%Response.Write(Request.Querystring("name"))%>   假如我传入的 ...
1. 目前的J2SE所有key-value的容器类型中都会用到equals()和hashCode()方法,Java对两个方法的规定如下:        (1). 如果x.equals(y)返回“true”,那么x和y的hashCode()必须相等。    (2). 如果x.equals(y)返回“false”,那么x和y的hashCode()有可能相等,也有可能不等。介于如上机制,在重写一个equals()的时候,一般是必须要重写hashCode()方法的。否则,相同的对象可以出现在Set/Map集合中,容器类的空间和时间效率都会大大降低2. Object类的equals()是比较两个类的地址, ...
public class FutureTaskTest { public static void main(String[] args) { testMultiThreadExecutor(); } public static void testFutureTask() { Callable<Integer> callable = new Callable<Integer>() { @Override public Integer call() throws Exception { for (int i = 0 ...
首先,继承关系: Executor -> ExecutorService -> AbstractExecutorService -> ThreadPoolExecutor Interface: Executor.execute(Runnable) Interface: ExecutorService.submit(Callable) -- ExecutorService implements Executor AbstractExecutorService实现了submit(Callable),这个需要调用execute(Runnable)来实现, 正是Abst ...
Global site tag (gtag.js) - Google Analytics