自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 利用反射技术手写一个简单的IOC

IOC:控制反转和依赖注入 控制反转:把创建对象的控制权交给容器,例如spring容器,创建对象是由容器创建,而不是自己new出来。 依赖注入:当需要用到对象实例的时候,由容器把对象创建好,并且属性赋值好,然后注入进来。直接调用就可以了。注:spring的IOC容器实际上是一个map,用类的名字作为键来存储类,因此如果有多个同样的类命名,会报出找到多...

2019-05-27 18:07:11 145

原创 设计模式之原型模式

原型模式:1.当构造函数很复杂的时候使用。 2.clone是native方法,效率比new高。 3.默认克隆是浅克隆,只克隆基础类型,对引用类型不起效果,仍然指向同一个内存地址。 4.深克隆需要重写clone方法,对引用类型也要进行克隆。/** * 对象 */public ...

2019-05-27 17:31:28 86

原创 设计模式之建造者模式

需要的类:抽象构建,具体构建,具体产品,建造者/** * 抽象构建 */public interface AbstractBuilder { /** * 建造主板的方法 */ void buildMainboard(); /** * 建造硬盘的方法 */ void buildHardDisk(); /**...

2019-05-27 16:22:54 74

原创 设计模式之单例模式

单例模式:饿汉式单例:类加载的时候就初始化对象,除非系统重启,对象不会改变,所以本身就是安全的。1./** * 单例模式:饿汉 */public class Singleton { //私有的无参构造方法,避免在外部 NEW 对象 private Singleton(){}; private static Singleton singleton = ...

2019-05-20 17:52:04 72

原创 设计模式之抽象工厂模式

抽象工厂模式: 需要的类:抽象工厂,具体工厂,抽象产品,具体产品 此模式符合开闭原则,能处理产品族业务。抽象工厂:AbstractCarFactory/** * 抽象工厂 */public interface AbstractCarFactory { //生产卡车的方法 Trunk produceTrunk(); //生产轿...

2019-05-20 16:32:52 84

原创 设计模式之工厂方法模式

工厂方法模式: 需要的类:抽象工厂,具体工厂,抽象产品,具体产品此模式符合开闭原则:对扩展开放,对修改关闭。缺点:每增加一种产品要增加对应的具体工厂,代码量会很多。抽象工厂类:AbstractMethedFactory/** * 抽象工厂类 */public interface AbstractMethedFactory { Trunk...

2019-05-20 15:27:20 58

原创 设计模式之简单工厂模式

简单工厂模式: 需要的类:抽象产品,具体产品,工厂抽象产品类: Food/** * 抽象产品 */public interface Food{ void build();}具体产品类:Bread/** * 具体产品:面包 */public class Bread implements Food{ @Override ...

2019-05-20 14:21:57 51

原创 发送邮箱验证码(小记)

import javax.mail.Transport;import javax.mail.internet.MimeMessage;import javax.mail.Authenticator;import javax.mail.Message.RecipientType;import javax.mail.PasswordAuthentication;import javax....

2018-11-30 15:03:21 214

原创 自定义拦截器简单应用(小记)

自定义一个拦截器import java.lang.annotation.*;/** * 需要修改的字段 */@Documented@Retention(RetentionPolicy.RUNTIME)@Target(ElementType.FIELD)public @interface ModifyField { ModifyFieldEnum value();}...

2018-11-16 14:58:30 107

原创 微信上传的附件同步到阿里云(小记)

同步的方法:public static final String PHOTO_FOLDER_PATH = "D:/home/wxphoto/";private static String REQUEST_MEDIA_URL = "http://file.api.weixin.qq.com/cgi-bin/media/get?access_token=%s&medi...

2018-11-16 11:54:06 795

原创 OSS文件上传组件(小记)

1:定义接收类型private String[] extention = {"doc", "docx", "flv", "mp4", "pdf", "ppt", "pptx", "rar", "txt", "xls", "xlsx", "zip",

2018-11-16 10:57:04 1028

原创 往微信公众号推送消息(小记)

调用推送的方法:public static void sendTemplateMessage(WechatTemplate wechatTemplate) { UserVO userVO = userService.selectByPrimaryKey(需要接受推送的用户ID);  String wechatOpenid = ""; if(userVO.get...

2018-11-13 15:31:56 123

原创 阿里云API定时发送短信(小记)

定时任务的代码:import com.google.gson.Gson;import com.jianke.bid.common.SMSUtils;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.context.annotation.Lazy;import...

2018-11-12 14:49:07 1398

原创 无视修饰符,不经过getter函数直接获取对象的某个字段的属性值

直接上代码:public class ReflectionUtils {/** * 直接读取对象属性值, 无视private/protected修饰符, 不经过getter函数. */public static Object getFieldValue(final Object obj, final String fieldName) { Field field = ge...

2018-11-12 11:15:57 323

原创 CountDownLatch 小例子

CountDownLatch 发令枪import java.util.ArrayList;import java.util.List;import java.util.concurrent.CountDownLatch;import java.util.concurrent.TimeUnit;public class CountDownLatch_Test { public st...

2018-05-04 18:19:13 95

原创 正则表达式小例子

第一次写博客,我是小菜鸟,看了正则表达式,写个小记。业务需求:给定一个字符串,要求取出“[ ]”里面的值,下面直接上代码:package com.XXX.core.tools;import java.lang.reflect.Field;import java.util.ArrayList;import java.util.Collections;import java.util.Com...

2018-04-17 16:41:13 292

空空如也

空空如也

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

TA关注的人

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