自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

java中奇偶判断值得注意的地方

很基础的一个问题,如何判断一个整数是奇是偶?有人会说,用2取余,结果是1,那么就是奇数,结果是0,那么就是偶数看起来没错,如果用java写一个简单的运算,是这样的:String str = i+”->”+(i%2==1?”奇数”:”偶数”);System.out.println(str);给上面程序中的i分别赋值为1、2、0、-1、-2,看看输出结果是什么样的呢?1...

2013-04-18 13:30:13 148

避免java包装类型空值——自动拆箱浅析

    假设程序中需实现一个公用的方法f,用来统计一个整数list中所有值的和,思路很简单,如下:     public static int f(List<Integer> list){ int count = 0; for(int i:list){ count += I; } return count;}  方...

2013-04-18 13:28:42 283

原创 nginx配置默认虚拟主机

    一个网站上线后,我们可以通过域名或者直接使用IP访问之。但很多时候我们是不希望用户直接通过IP来访问我们的网站的,甚至有其它非法的域名绑定网站IP后,也能访问。杜绝这种现象,可以通过nginx的默认虚拟主机来实现。    实现起来其实非常简单,在nginx的conf路径下,打开核心配置文件nginx.conf,可以看到至少一个server节点,我们只需要在这些server节点之后多...

2013-04-18 13:25:47 276

容易忽略的mysql关键字,

项目开发阶段,有童鞋的程序一直在报错却找不到原因,经过我们一系列的排查,结果原因是我引起的。原因其实很简单,我建立了一张mysql数据库表,使用了“describe”做为列名。导致了一个insert语句报错。  上网查资料后我们发现“describe”是一个mysql的关键字,不可做为列名。但这张表建立已经有好几天了,为何之前的sql语句都没有报错呢?查询了之前写的sql,发现列名是这样的格...

2013-04-18 13:21:49 343

探究mysql预编译

一.背景:用Mybatis+mysql的架构做开发,大家都知道,Mybatis内置参数,形如#{xxx}的,均采用了sql预编译的形式,举例如下:<select id=”aaa” parameterType=”int” returnType=”Blog”> select * from blog where id = #{id} ...

2013-04-15 17:29:50 213

原创 SpringMVC视图名称对大小写敏感吗?

    最近开发过程中,碰到一个颇为头疼的问题:同样一套代码,在我本地机器上运行完全没有问题,在测试的机器上会返回500错误信息,在查看日志后,发现SpringMVC抛出了找不到视图的异常。    我重复在自己的机器上debug运行,发现controller的确返回了对应的视图,页面也成功跳转,怎样也重现不了那个500错误。经过检查,我发现controller里返回的视图是这样的: ...

2013-03-21 11:57:20 377 1

原创 java中Integer对象不同创建方法之间的区别

 一。Integer类型对象之间大小比较1. 使用new Integer()创建的对象:首先,我们知道,在java中,基本类型之间是可以做大小比较的,例如int i=1,int j=2,是可以直接使用关系运算符“<”、“>”、“==”等符号来做比较的。但在实际开发中,基本类型的包装类更为常用,那么包装类型的比较运算是如何呢?在main方法中执行下面代码:Inte...

2013-02-26 14:45:20 281

mysql字段默认值不生效的问题解决(下)

    上一篇简单介绍了一个mysql的问题:字段默认值在使用全字段insert的时候,可能并不会生效。在使用mybatis时,虽然需要自己写sql,但相比原始jdbc的方式来说,有一个很好的优势——动态sql。针对前一篇文章提出的问题,mybatis的动态sql可以很好地解决这个问题。1.问题分析    上一篇文章中描述的问题,是由于我们误将一个包含所有字段的insert语句做为通用的i...

2012-12-31 18:23:23 1525

mysql字段默认值不生效的问题解决(上)

[size=large] 在项目中使用mybatis做为持久层框架,mysql数据库。项目上线前,DBA要求我们将每张数据库表中的字段都设置默认值和not null。之前项目中有一些insert语句是将表中所有字段都列出来,然后把它做为一个通用的插入语句来使用。举个简单的例子:假如一张数据库表blog中有如下几个字段:id,title,content,author,除id外,每个字段都设置了...

2012-12-30 18:37:11 2509

原创 关于java中边界值校验的问题

web开发中,校验这个工作是必不可少的。一般来说,界面中需要加上javascript校验,但我们知道它并不可靠,很容易被绕过。那么在服务器端就需要加上后台校验。请看下面这种很常见的代码:if(num>0 &&num+1000<=2000){    System.out.println("这个数合法!");}else{    System.out...

2012-12-27 14:41:15 375

mybatis防止sql注入

 sql注入大家都不陌生,是一种常见的攻击方式,攻击者在界面的表单信息或url上输入一些奇怪的sql片段,例如“or ‘1’=’1’”这样的语句,有可能入侵参数校验不足的应用程序。所以在我们的应用中需要做一些工作,来防备这样的攻击方式。在一些安全性很高的应用中,比如银行软件,经常使用将sql语句全部替换为存储过程这样的方式,来防止sql注入,这当然是一种很安全的方式,但我们平时开发中,可能不需...

2012-12-23 22:12:50 1015

原创 关于javabean显式UID的作用

如果一个javabean实现了Serializable接口,那么它可以实现序列化,也就有了网络传输、本地存储等功能。在这个类中经常会看到一个SerialVersionUID,它的作用是这样的:首先,实现序列化的类中如果没有显式声明SerialVersionUID,这个类在编译时,编译器会生成一个唯一的,隐式的UID,这个UID是由很多因素决定的,包括类的非私有方法和属性等,那么当这个类做了...

2012-12-11 14:02:55 315

原创 保护眼睛,从eclipse做起——java编辑器颜色修改

eclipse中java编辑器颜色修改,适合程序猿人群:长时间编码,眼睛是有很大负担的,特别是使用eclipse,它自带的java编辑器背景色是刺眼的白色,代码颜色基本是黑色,这样一个编辑器里白色占了大多数面积,对视觉的刺激可想而知。我上网查了一个配色方案,调整eclipse编辑器的颜色为最适合的颜色,步骤如下:1.首先修改编辑器背景颜色:window->preferences-&a...

2012-11-28 14:43:30 716

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除