易截截图软件、单文件、免安装、纯绿色、仅160KB

Java防止SQL注入

 SQL注入是最常见的攻击方式之一,它不是利用操作系统或其它系统的漏洞来实现攻击的,而是程序员因为没有做好判断,被不法
用户钻了SQL的空子,下面我们先来看下什么是SQL注入:
          比如在一个登陆界面,要求用户输入用户名和密码:
          用户名:       ' or 1=1 --  
          密       码:  
          点登陆,如若没有做特殊处理,而只是一条带条件的查询语句如:
          String sql="select * from users where username='"+userName+"' and password='"+password+"' "
          那么这个非法用户就很得意的登陆进去了.(当然现在的有些语言的数据库API已经处理了这些问题)
          这是为什么呢?我们来看看这条语句,将用户输入的数据替换后得到这样一条语句:
          select * from users where username='' or 1=1 --' and password=''
          为了更明白些,可以将其复制到SQL分析器中,将会发现,这条语句会将数据库的数据全部读出来,为什么呢?
          很简单,看到条件后面 username='' or 1=1 用户名等于 '' 或 1=1 那么这个条件一定会成功,然后后面加两个-,这意味着
什么?没错,注释,它将后面的语句注释,让他们不起作用,这样就可以顺利的把数据库中的数据读取出来了。
          这还是比较温柔的,如果是执行
          select * from users where username='' ;DROP Database      (DB Name) --' and password=''
          .......其他的您可以自己想象。。。
          那么我们怎么来处理这种


相关文档:

java笔试

    原题如下:用1、2、2、3、4、5这六个数字,用java写一个程序,打印出所有不同的排列,如:512234、412345等,要求:"4"不能在第三位,"3"与"5"不能相连。
 解题思路:
    很明显,这是一个递归算法。我们可以排列将这6个数按从小到大的顺序排一下,如果是1,2,3,4,5,6,那么会有1 ......

java 面试题

JAVA相关基础知识
1、面向对象的特征有哪些方面
1.抽象:
抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。
2.继承:
继承是一种联结类的层次模型,并 ......

SQL Server 返回最后插入记录的id值

SQL Server 2000中,有三个比较类似的功能:他们分别是:SCOPE_IDENTITY、IDENT_CURRENT 和 @@IDENTITY,它们都返回插入到 IDENTITY 列中的值。
IDENT_CURRENT 返回为任何会话和任何作用域中的特定表最后生成的标识值。IDENT_CURRENT 不受作用域和会话的限制,而受限于指定的表。IDENT_CURRENT 返回为任何会话和作用域中的 ......

简要介绍SQL Server 2008新的事件处理系统

SQL Server Extended Events(下面简称XEvent)是SQL Server 2008里新加的事件处理系统,用来取代SQL Server原
先的SQL Trace的跟踪机制。事件处理系统对一个复杂服务器系统的排错,调试是极为关键的。和SQL Server原来的事
件处理系统相比较,XEvent具有下列的优势:
  消耗更少的系统资源,更适用于在产品服务器上的 ......

SQL SERVER 2005 远程访问

(适用 SQL Server 2005 其他版本)
收藏



SQL Server 2005 Express 是微软提供的数据库的低端解决方案,
可免费任意随产品分发, 可以在XP等非专业服务器系统下安装, 还可以远程访问, 对于小型数据应用程序已足够满足数据使用要求.
默认安装下,SQL Server ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号