- 浏览: 27078 次
最新评论
文章列表
近期为了解决一些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的使用
- 博客分类:
- JavaSE
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简介
- 博客分类:
- Web Security
转自: 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, <%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 ...