- 博客(16)
- 收藏
- 关注
原创 利用反射技术手写一个简单的IOC
IOC:控制反转和依赖注入 控制反转:把创建对象的控制权交给容器,例如spring容器,创建对象是由容器创建,而不是自己new出来。 依赖注入:当需要用到对象实例的时候,由容器把对象创建好,并且属性赋值好,然后注入进来。直接调用就可以了。注:spring的IOC容器实际上是一个map,用类的名字作为键来存储类,因此如果有多个同样的类命名,会报出找到多...
2019-05-27 18:07:11 172
原创 设计模式之原型模式
原型模式:1.当构造函数很复杂的时候使用。 2.clone是native方法,效率比new高。 3.默认克隆是浅克隆,只克隆基础类型,对引用类型不起效果,仍然指向同一个内存地址。 4.深克隆需要重写clone方法,对引用类型也要进行克隆。/** * 对象 */public ...
2019-05-27 17:31:28 116
原创 设计模式之建造者模式
需要的类:抽象构建,具体构建,具体产品,建造者/** * 抽象构建 */public interface AbstractBuilder { /** * 建造主板的方法 */ void buildMainboard(); /** * 建造硬盘的方法 */ void buildHardDisk(); /**...
2019-05-27 16:22:54 100
原创 设计模式之单例模式
单例模式:饿汉式单例:类加载的时候就初始化对象,除非系统重启,对象不会改变,所以本身就是安全的。1./** * 单例模式:饿汉 */public class Singleton { //私有的无参构造方法,避免在外部 NEW 对象 private Singleton(){}; private static Singleton singleton = ...
2019-05-20 17:52:04 99
原创 设计模式之抽象工厂模式
抽象工厂模式: 需要的类:抽象工厂,具体工厂,抽象产品,具体产品 此模式符合开闭原则,能处理产品族业务。抽象工厂:AbstractCarFactory/** * 抽象工厂 */public interface AbstractCarFactory { //生产卡车的方法 Trunk produceTrunk(); //生产轿...
2019-05-20 16:32:52 111
原创 设计模式之工厂方法模式
工厂方法模式: 需要的类:抽象工厂,具体工厂,抽象产品,具体产品此模式符合开闭原则:对扩展开放,对修改关闭。缺点:每增加一种产品要增加对应的具体工厂,代码量会很多。抽象工厂类:AbstractMethedFactory/** * 抽象工厂类 */public interface AbstractMethedFactory { Trunk...
2019-05-20 15:27:20 66
原创 设计模式之简单工厂模式
简单工厂模式: 需要的类:抽象产品,具体产品,工厂抽象产品类: Food/** * 抽象产品 */public interface Food{ void build();}具体产品类:Bread/** * 具体产品:面包 */public class Bread implements Food{ @Override ...
2019-05-20 14:21:57 58
原创 发送邮箱验证码(小记)
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 231
原创 自定义拦截器简单应用(小记)
自定义一个拦截器import java.lang.annotation.*;/** * 需要修改的字段 */@Documented@Retention(RetentionPolicy.RUNTIME)@Target(ElementType.FIELD)public @interface ModifyField { ModifyFieldEnum value();}...
2018-11-16 14:58:30 135
原创 微信上传的附件同步到阿里云(小记)
同步的方法: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 809
原创 OSS文件上传组件(小记)
1:定义接收类型private String[] extention = {"doc", "docx", "flv", "mp4", "pdf", "ppt", "pptx", "rar", "txt", "xls", "xlsx", "zip",
2018-11-16 10:57:04 1058
原创 往微信公众号推送消息(小记)
调用推送的方法:public static void sendTemplateMessage(WechatTemplate wechatTemplate) { UserVO userVO = userService.selectByPrimaryKey(需要接受推送的用户ID); String wechatOpenid = ""; if(userVO.get...
2018-11-13 15:31:56 130
原创 阿里云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 1432
原创 无视修饰符,不经过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 341
原创 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 127
原创 正则表达式小例子
第一次写博客,我是小菜鸟,看了正则表达式,写个小记。业务需求:给定一个字符串,要求取出“[ ]”里面的值,下面直接上代码: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 319
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人