今天我在做飞机。为什么说我在做飞机呢!因为这是我进传智播客以来,个人感觉非常重要的一堂课,但是我不能一下子记住所所有的东西,昨天晚上,看视频看到晚上三点,今天上课很想集中注意力,但是最终还是忍不住打了瞌睡,但今天的的课给我的感觉是非常具有连贯性,前面的课如果听得不是很清楚,后面的就很难去做了。最近我的学习情况真是压力很大哦,HIBERNATE我已经欠帐了,所以啊,这个五一,是没有打算出去的意思了,得补。
北京的天气就和我的心一样,凉凉的,压力太大了,24岁啊,真不是个小年龄。 我之所以说这一课是非常重要的一堂课的原因是:我们毕业之后进入公司的第一件事就是去开发,并且是协作开发,任一个公司无论是大是小,只要有自己的项目小组,肯定都有SVN,或者是CVS来对项目中的程序进行版本控制 ,所以,一个有经验的程序员,绝对具备这样的能力,所以啊,如果连这个都不会的话,你还能说你具有一年,二年的工作经验吗?绝对不可能的事呵!我在以前的公司用的是CVS,所以,我对这个有所了解,也会用一些基本的功能 ,但是对于深入的配置我就是一窍不通了,但是今天有机会能接触到,也算是好事,毕竟,以前在我们公司这 ......
SQL注入是最常见的攻击方式之一,它不是利用操作系统或其它系统的漏洞来实现攻击的,而是程序员因为没有做好判断,被不法
用户钻了SQL的空子,下面我们先来看下什么是SQL注入:
比如在一个登陆界面,要求用户输入用户名和密码:
用户名: ' or 1=1 --
密 码:
点登陆,如若没有做特殊处理,而只是一条带条件的查询语句如:
String sql="select * from users where username='"+userName+"' and password='"+password+"' "
那么这个非法用户就很得意的登陆进去了.(当然现在的有些语言的数据库API已经处理了这些问题)
这是为什么呢?我们来看看这条语句,将用 ......
SQL注入是最常见的攻击方式之一,它不是利用操作系统或其它系统的漏洞来实现攻击的,而是程序员因为没有做好判断,被不法
用户钻了SQL的空子,下面我们先来看下什么是SQL注入:
比如在一个登陆界面,要求用户输入用户名和密码:
用户名: ' or 1=1 --
密 码:
点登陆,如若没有做特殊处理,而只是一条带条件的查询语句如:
String sql="select * from users where username='"+userName+"' and password='"+password+"' "
那么这个非法用户就很得意的登陆进去了.(当然现在的有些语言的数据库API已经处理了这些问题)
这是为什么呢?我们来看看这条语句,将用 ......
·if ((ICO2 = getInitParameter("ICO2")) == null)
ICO2 = "images/commend.gif";
·ActionContext ctx = ActionContext.getContext();
HttpServletRequest request = (HttpServletRequest) ctx.get(ServletActionContext.HTTP_REQUEST);
·SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
·GregorianCalendar gc =new GregorianCalendar();
gc.add(GregorianCalendar.HOUR_OF_DAY, -2);
·List<String> allspnslist = new ArrayList<String>();
if(!allspnslist.contains(spnandfact[1])) allspnslist.add(spnandfact[1]);
·"1".equalsIgnoreCase(stype)
·public List<String> searchMobilenum(){
return this.getHibernateTemplate().executeFind(new HibernateCallback(){
public Object doInHibernate(Session session)
& ......
鉴于网上对Java的堆栈区分,众说纷纭,有的把C++的堆栈也混进来,有的没有分清Stack,Heap的中文翻译,搞得我把Stack当作堆,Heap当作栈,混乱了!昨天参加一外企的笔试,选择英文答案时,选错了,知道答案是堆,却选择了Stack!今天,决定把两者区分清楚!
首先分清楚Stack,Heap的中文翻译:Stack—栈,Heap—堆。
在中文里,Stack可以翻译为“堆栈”,所以我直接查找了计算机术语里面堆和栈开头的词语:
堆存储: heapstorage 堆存储分配: heapstorage allocation 堆存储管理: heap storage management
栈编址: stack addressing 栈变换:stack transformation 栈存储器:stack memory 栈单元: stack cell
接着,总结在Java里面Heap和Stack分别存储数据的不同。& ......
1. 验证码(2)
dsnaValidateCode.jar
dsnaValidateCode_src.rar
ValidateCode.java 验证码生成类
Java代码
package cn.dsna.util.images;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.util.Random;
import javax.imageio.ImageIO;
/**
* 验证码生成器
* @author dsna
*
*/
public class ValidateCode {
// 图片的宽度。
private int width = 160;
// 图片的高度。
......
工作中遇到需要合并XML的问题,遂从网上查找相关资料,
1、 《 XML merging made easy
》
2 、《java中合并xml文档的设计与实现
》
测试后发现均不符合实际需求,实际需求如下:
file1.xml:
<root>
<a>
<b name="1"/>
</a>
<d />
<e id='1' />
</root>
file2.xml:
<root>
<a>
<b name="22"/>
</a>
<d name="qq"/>
<e id='1' />
</root>
合并后需要得到:
<root>
<a>
<b name="22" />
<b name="1" />
</a>
<d name="qq" />
<e id="1" />
<d />
</root>
基于《java中合并xml文档的设计与实现
》的介绍对代码进行改进,完成了此功能,代码如下:
package davyxie;
import java.io.File;
import java.util.Properties;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.P ......
工作中遇到需要合并XML的问题,遂从网上查找相关资料,
1、 《 XML merging made easy
》
2 、《java中合并xml文档的设计与实现
》
测试后发现均不符合实际需求,实际需求如下:
file1.xml:
<root>
<a>
<b name="1"/>
</a>
<d />
<e id='1' />
</root>
file2.xml:
<root>
<a>
<b name="22"/>
</a>
<d name="qq"/>
<e id='1' />
</root>
合并后需要得到:
<root>
<a>
<b name="22" />
<b name="1" />
</a>
<d name="qq" />
<e id="1" />
<d />
</root>
基于《java中合并xml文档的设计与实现
》的介绍对代码进行改进,完成了此功能,代码如下:
package davyxie;
import java.io.File;
import java.util.Properties;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.P ......