自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 HashMap的遍历

JDK8之前,可以使用keySet或者entrySet来遍历HashMap,JDK8中引入了map.foreach来进行遍历。原因:keySet其实是遍历了2次,一次是转为Iterator对象,另一次是从hashMap中取出key所对应的value。而entrySet只是遍历了一次就把key和value都放到了entry中,效率更高。如果是JDK8,使用Map.foreach方法。keyS

2017-11-14 10:57:52 284

原创 HashMap底层原理

我们经常用到HashMap,hashmap本质数据加链表。根据key取得hash值,然后计算出数组下标,如果多个key对应到同一个下标,就用链表串起来,新插入的在前面。我们来研究下底层实现,看源码可以看出HashMap继承AbstractMap(抽象类),实现Map接口及克隆,序列化接口.HashMap的底层容量是16(二进制1向左移动4位即16),public class

2017-11-08 15:39:10 398

原创 元注解-@Retention&@Target

Retention注解

2017-11-07 13:38:27 379

原创 mybati的xml中sql 当传入多个类型不同的参数

mybati的xml中sql 当传入多个类型不同的参数,目前知道有4种方法:1. 把参数按照key-value的格式存入map,参数类型为map2. 把参数封装成POJO,参数类型为实体类型3. 可以按照占位符的方式;如下 select * from user where user_name = #{0} and user_area=#{

2017-11-02 17:14:50 1690

原创 删除数据库表中某一字段相同的数据,并保留最新一条---Mysql

今天碰到一个题,假如有一个person表,有id,和name两个字段,如果要删除存在name相同的字段的数据,并保留最新一条,sql怎么设计?

2017-11-02 16:41:21 3557

原创 FeilUtils---下载文件时中文乱码

import java.io.IOException;import java.net.URLEncoder;import sun.misc.BASE64Encoder;public class FileUtils { /** * 下载文件时,针对不同浏览器,进行附件名的编码 * * @param filename * 下载文件名 * @par

2017-10-31 15:47:00 630

原创 Java基础之--StringBuffer和StringBuilder

StringBuffer和StringBuilder都是字符串变量,但是StringBuffer是线程安全的,但运行速度较StringBuilder慢,StringBuilder是线程不安全的,速度相对快一些.依据源码可以看出StringBuilder的方法是不加锁的. @Override public StringBuilder append(CharSequence s)

2017-10-31 13:45:18 261 1

原创 Java 基础之---String

String 在java中用于表示字符串。String 对象的值是不可变的.我们在平时有些时候采用String的拼接或者给一个变量重复赋值,表面上还是一个变量,实际上内存地址已经变化.实际的String 是final定义的.是不可变的.(对于一个final变量,如果是基本数据类型的变量,则其数值一旦在初始化之后便不能更改;如果是引用类型的变量,则在对其初始化之后便不能再让其指向另一个对

2017-10-31 11:16:53 228

原创 单元测试--Junit

JUnit是一个Java语言的单元测试框架。属于第三方工具,一般情况下需要导入jar包,不过,多数Java开发环境已经集成了JUnit作为单元测试工具。单元测试的步骤:1. 确认下当前开发环境是否已经集成Junit,如果没有集成,导入Junit的jar包;2. 编写测试方法;简单的来说相当于替代main的方法;3. 在方法上加上@Test的注解;注解修饰方法的要求:publ

2017-10-31 10:24:02 276

原创 java 基础之--java的反射机制

一:什么是反射机制?JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制。 说的更明白一点就是JAVA动态相关机制:Reflection,使用反射我们可以于运行时加载、探知、使用编译期间完全未知的classes。换句话说,Ja

2017-10-27 11:25:29 280

原创 mybatis的配置文件-typeAlias(别名)

mybatis的配置别名有以下几种方式:第一种:                           第二种:         如果POJO 过多,第一种方法就不太适用了.这时我们可以直接指定package的名字, mybatis会自动扫描指定包下面的javabean,并且默认设置一个别名,默认的名字为: javabean 的首字母小写的非限定类名来作为它的别名(别名是不分

2017-10-27 10:51:47 945

原创 mybatis的配置元素--typeHandler类型处理器

typeHandler源码分析可参考:http://www.cnblogs.com/dongying/p/4040435.htmltypeHandler的作用:可以在bean对象的属性和数据库中存储的对象属性进行转换, 譬如bean中是list属性,存储到数据库中可以是array属性, bean中是java.util.Date属性,数据库中存储的是varchar类型的unix时间戳。typ

2017-10-26 15:38:13 1299

原创 mybatis的配置元素--insert(主键回填和自定义)

MySql里面的主键需要根据一些特殊的规则去生成,在插入后我们往往需要获得这个主键,以便于未来的操作1. 主键自增的情况下使用过keyProperty属性指定哪个是主键字段,同时用userGeneratedKeys 属性告诉Mybatis这个主键是否使用数据库内置策略生成mapper namespace="testuser"> insert id="insertUser" p

2017-10-26 15:36:26 2471

原创 mybatis的配置元素--properties

mybatis中提供了3中配置方式property 子元素properties配置文件程序参数传递property子元素的配置方式properties> property name="driver" value="com.mysql.jdbc.Driver/> url" value="jdbc:mysql://localhost:3306/mybatis"/>

2017-10-26 15:34:32 485

原创 mybatis的一对一,一对多的关系映射配置及性能分析(延迟加载)

一对一关系映射1)自动关联(偷懒的办法):可以自定义一个大而全的pojo类,然后自动映射其实是根据数据库总的字段名称和 pojo中的属性名称对应.2)手动关联: 需要指定数据库中表的字段名称和java的pojo类中的属性名称的对应关系. 使用association标签需求: 查询订单所属的客户UserMapper.xml配置:resultMap type="Orders"

2017-10-26 15:00:38 1344

原创 mybatis的动态sql ---元素

MyBatis 的强大特性之一便是它的动态 SQL 能力。如果你有使用 JDBC 或其他类似框架的经验,你就能体会到根据不同条件拼接 SQL 字符串有多么痛苦。拼接的时候要确保不能忘了必要的空格,还要注意省掉列名列表最后的逗号。利用动态 SQL 这一特性可以彻底摆脱这种痛苦。通常使用动态 SQL 不可能是独立的一部分,MyBatis 当然使用一种强大的动态 SQL 语言来改进这种情形,

2017-10-26 14:58:54 975

原创 Mybatis的配置文件

Mapper接口开发方法只需要程序员编写Mapper接口(相当于Dao接口),由Mybatis框架根据接口定义创建接口的动态代理对象,代理对象的方法体同上边Dao接口实现类方法。Mapper接口开发需要遵循以下规范:接口与mapper.xml在同一包下,且名字一致Mapper.xml文件中的namespace与mapper接口的类路径相同。Mapper接口方法名和Mapper.

2017-10-26 14:41:18 422

原创 mybatis的架构组成

Mybatis的架构:

2017-10-24 17:48:07 666

原创 mybais的简介

MyBatis是支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis使用简单的XML或注解用于配置和原始映射,将接口和Java的POJOs(Plan Old Java Objects,普通的Java对象)映射成数据库中的记录.Mybatis也是一种ORM框架,所以,肯定也有两类配置文件。

2017-10-24 17:05:33 367

空空如也

空空如也

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

TA关注的人

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