- 浏览: 19336 次
- 性别:
- 来自: 北京
最新评论
文章列表
今天搜百度百科sql注入写的实在太好了,可以自己理解不了这么多,在这里能理解多少我就写多少:
1:对用户的输入进行校验(正则表达式、限制长度、对敏感字符进行转换)
2:不要动态拼装sql,可以使用参数化的sql或者直接使用存储过程进行数据查询存取
3:永远不要使用管理员权限的数据库连接,为每个应用使用单独的权限有限的数据库连接
4:不要把机密信息直接存放,加密或者hash掉密码和敏感的信息
5:使用自定义的错误信息对原始错误信息进行包装
6:sql注入检测方法才去辅助软件或网站平台来检测
7:前台验证用户名密码可以先验证用户名再验证密码
Base64算法的原理:传输8bie字节代码的编码方式之一,采用base64编码不具有可读性,编码后数据不会直接被肉眼所见到。
例子:
比如有三个字节首先将其转成ascii码然后取其二进制,取6个一组(这样就有4组),然后在前面自动补两个高位0,得到对应ascii码,再对照表还原字符。
对于JAVA base64 和js base64的代码(无论是编码还是解码,gbk,utf8,unicode不同格式结果不一样,现在代码这三个都能实现可以在参数中添加chartset)
编码为了保证在个数是3的倍数所以最后加一个或者两个”=“号最后两个:
在工作当中都是在jsp中进行加密然后参数传到 ...
JQuery的change无效
- 博客分类:
- JQuery
今天特别搞笑,chang()方法怎么都使不通,源代码是这样的
$(function(){
$('[name="pure-menu-list"] li').each(function(){
$('.pageName').text('全局');
$(this).click(function(){
$('.pageName').text($(this).text());
})
})
if (errorMsg.length != 0) {
alert(errorMsg);
...
oracle错误信息
- 博客分类:
- oracle
create user meihf identified by meihf;密码不能用数字打字。不然报00922错误
如果服务没启动提示ora-01034
oracle的操作命令转自:
http://www.cnblogs.com/fromchaos/archive/2011/08/12/2135837.html
oracle数据库在查询的时候不区分大小写方法:
1:可以在本地数据库设置
ALTER SESSION SET NLS_COMP=ANSI;
ALTER SESSION SET NLS_SORT=BINARY_CI;
2:
在sql语句中进行操作 ...
setTimeout和setInterval
- 博客分类:
- JQuery
setTimeout()和setInterval()区别:
setTimeout(function,时间)只调用一次。而setInterval(function,时间)每隔一段时间就调用。
从用setTimeout()做定时器因为嵌套setTimeout()方法内部本身的逻辑不再调用setTimeout就等于停止了。
而使用setInterval()必须手动停止click触发。
这两种方法可能看起来非常像,而且显示的结果也会很相似,不过两者的最大区别就是,setTimeout方法不会每隔5秒钟就执行一次showTime函数,它是在每次调用setTimeout后过5秒钟再去执行showT ...
SpringMVC注解备注
- 博客分类:
- SpringMVC
@Controller控制层
@Service业务逻辑层
@Repository持久层(也就是dao层)
@Entity实体
@PathVariable
@RequestParam
@RequestMapping@Autowired
@SuppressWarning废弃警告
@ModelAttribute注释的值在此Controller中每个方法执行前被执行,因此对于一个Controller映射多个URL的用法来说需谨慎使用(此注释的value值就是Model的属性的名称)
@SessionAttributes作用就是在Controller中共享Model属性
p ...
Spring注入理解
- 博客分类:
- Spring
spring有很多种依赖注入方式,因为知识有限我仅写我自己知道的,还请各位多多提提建议,大家一起学习、
spring通过xml进行ioc配置:
set注入:
@Controller
public class GameController {
private GameService gameService;
public GameService ...
一:
java.lang.stackOverFlowerror:
内存溢出,我是在test类中不小心写了死循环。
二:
java.lang.ClassNotFoundException: org.codehaus.jackson.JsonProcessingException:
没有引入codehaus的jackson的jar包,或许你是其他问题。我这里只记录我出现的问题。
三:
can not change version of project facet dynamic web module to 3.0:
这种情况的解决方法是:
在项目的根目录中找到如下文件:.set ...
对于mysql卸载安装很多人肯定是轻车熟路,我想说的是有错误请看错误日志不要在网上乱搜,错误日志在默认c:programdata:mysql:data里面有一个.err的文件。
其次如果出现如下图所示的问题 the older version of mysql cannot be removed,个人建议找原版本安装就没问题,如果真是你没有卸载干净它会提示你remove,如果不是就直接安装。
第三,my.ini中有datadir默认在C盘如果想放在其他盘需要注意两件事情:
(1):在my.ini中修改路径,一定要注意是/不是\
(2):这时候得关闭mysql服务再次启动,再次启 ...
我按照easyui官网的代码编写,我哪里写的不对吗?怎么就是没有效果。
跟官网唯一变化的就是引入easyui的文件啊,各位帮我看看,有错吗?
改变SpringMVC的.do访问模式
- 博客分类:
- SpringMVC
SpringMVC默认的是.do访问模式。
要想改变在web.xml配置spring-servlet时候
在<url-pattern>*.main</url-pattern>
访问时候就变成了.main
filter在web.xml中配置,doFilter(ServletRequest req,ServletResponse rep,FilterChain chain)条件满足的话chain.doFilter(request,response)
尤其是在get,setAttribute请求时候,都会跳转到拦截器,
CharacterEncodingFilter实现了抽象类OncePerRequestFilter,而OncePerRequestFilter实现了doFilter方法
OncePerRequestFilter很好的实现了对每个request只执行一次过滤操作 ...
JQuery学习笔记
- 博客分类:
- JQuery
重新加载当前页面:
location.reload()这个方法有时候火狐不给力,
parent.location.reload();刷新父亲对象的页面常用与框架
location.reload()意思是从服务器端重新载入页面 ;
location.false(true)意思是从缓存中重新载入
个人建议使用location.href="";
注意$((".test:hidden").length)表示的是隐藏的class类名为test的元素个数
$((".test :hidden").length)表示的 ...
<a href="javascript:;" target="_blank">
停留在此页面,重新加载新的blank窗口
forEach 中的items是setAttribute的值,varStatus参数:
index:成员索引(下标从0开始)
count:成员的数目从1开始
first:是否为第一个成员
last:是否为最后一个成员
${requestScope}操作的是request的作用域,相当于request.getAttribute();不过EL比这个更智能些,
它不用强制类型转换就可以拿 ...
@controller:(注入服务)
@service(注入dao)
@repository dao(实现dao访问)
@component(把普通的pojo类实例化到spring容器中,相当于配置文件<bean id="" class="">)