Wesley13 Wesley13
4年前
java持久层框架mybatis如何防止sql注入
sql注入大家都不陌生,是一种常见的攻击方式,攻击者在界面的表单信息或url上输入一些奇怪的sql片段,例如“or‘1’’1’”这样的语句,有可能入侵参数校验不足的应用程序。所以在我们的应用中需要做一些工作,来防备这样的攻击方式。在一些安全性很高的应用中,比如银行软件,经常使用将sql语句全部替换为存储过程这样的方式,来防止sql注入,这当然是一种很安全
Wesley13 Wesley13
4年前
Java类加载器 — classloader 的原理及应用
点击上方IT牧场,选择置顶或者星标技术干货每日送达!!(https://oscimg.oschina.net/oscnet/9ea0256b84bf4841acb2660880e04637.jpg)什么是classloa
Wesley13 Wesley13
4年前
Java核心(五)深入理解BIO、NIO、AIO
导读:本文你将获取到:同/异步阻/非阻塞的性能区别;BIO、NIO、AIO的区别;理解和实现NIO操作Socket时的多路复用;同时掌握IO最底层最核心的操作技巧。BIO、NIO、AIO的区别是什么?同/异步、阻/非阻塞的区别是什么?文件读写最优雅的实现方式是什么?NIO如何实现多路复用功能
Wesley13 Wesley13
4年前
Java设计模式之三种工厂模式
工厂模式实现了创建者和调用者的分离,实现了更好的解耦。详细分类:1)简单工厂模式(静态工厂模式);2)工厂方法模式;3)抽象工厂模式面向对象设计的基本原则:1)      OCP(开闭原则,OpenClosedPrinciple):一个软件的实体应当对扩展开放,对修改关闭。2)      
Wesley13 Wesley13
4年前
Java日志体系(六)log4j2
1.1简介            !(https://oscimg.oschina.net/oscnet/495f965815e196a8e347514c4408c5ca35d.png)log4j2,一个日志的实现框架,是log4j的升级版本,于2014年7月正式亮相。与第一代log4j不同,log4j2完全重写了log4j的日志实现,
Wesley13 Wesley13
4年前
Java多线程并发常用类实例之:Condition
        作为一个示例,假定有一个绑定的缓冲区,它支持 put 和 take 方法。如果试图在空的缓冲区上执行 take 操作,则在某一个项变得可用之前,线程将一直阻塞;如果试图在满的缓冲区上执行 put 操作,则在有空间变得可用之前,线程将一直阻塞。我们喜欢在单独的等待set中保存 put 线程和 take 线程,这样就可
Wesley13 Wesley13
4年前
Java并发(五)任务间使用管道进行通信
通过I/O在线程间进行通信通常很有用。提供线程功能的类库以“管道”的形式对线程间的I/O提供了支持。它们在JavaI/O类库中的对应物就是PipedWriter(允许任务向管道写)和PipedReader(允许不同的任务从同一个管道中读取)。这个模型可以看做是“生产者消费者”问题的变体,这里的管道就是一个封装好的解决方案。管道基本上是一个阻塞队列,
Wesley13 Wesley13
4年前
Java工程师研发面经大合集
百度研发面经整合版软件研发工程师基础研发工程师百度智能云百度核心搜索部!(https://oscimg.oschina.net/oscnet/36c0e7d02b82eea308b754edce463dfa09e.jpg)百度今年的提前批有点奇怪,好像都不走流程,牛客上好几个
Wesley13 Wesley13
4年前
Java 多线程处理大文本文件
对于文本文件,大部分都是一个线程处理一个文件,如果文本文件比较大,没找到类似如果多线程处理一个文本文件的方式。针对大文件的处理,写入如下代码,感觉不是太好,希望大神们指正。packagenet.dotool.demo;importjava.io.IOException;importjava.io.RandomA
Wesley13 Wesley13
4年前
Java中的RSA加解密工具类:RSAUtils
本人手写已测试,大家可以参考使用packagecom.mirana.frame.utils.encrypt;importcom.mirana.frame.utils.log.LogUtils;importorg.apache.commons.codec.binary.Base64;impor