Fork me on GitHub
摘要: 最近项目中要实现WORD的文件预览功能,我们可以通过将WORD转换成PDF或者HTML,然后通过浏览器预览。 OpenOffice OpenOffice.org 是一套跨平台的办公室软件套件,能在 Windows、Linux、MacOS X (X11)、和 Solaris 等操作系统上执行。它与各个 阅读全文
posted @ 2017-12-25 20:40 morethink 阅读(14091) 评论(1) 推荐(1) 编辑
摘要: TCP的三次握手和四次挥手 三次握手 TCP连接是通过三次握手来连接的。 第一次握手 当客户端向服务器发起连接请求时,客户端会发送同步序列标号 到服务器,在这里我们设 为x,等待服务器确认,这时客户端的状态为 。 <! more 第二次握手 当服务器收到客户端发送的 后,服务器要做的是确认客户端发送 阅读全文
posted @ 2017-12-16 21:58 morethink 阅读(4572) 评论(1) 推荐(4) 编辑
摘要: 本文转载自: https://www.cnblogs.com/ywlaker/p/6113927.html 作者:凌承一 出处:http://www.cnblogs.com/ywlaker/ 声明:本文版权归作者和博客园共有,欢迎转载,但转载必须保留此段声明,并在文章页面明显位置给出原文链接,否则作 阅读全文
posted @ 2017-12-16 21:21 morethink 阅读(2963) 评论(0) 推荐(0) 编辑
摘要: SpringMVC架构设计 MVC是一种架构模式 ,它把业务的实现和展示相分离。 <! more SpringMVC与struts2的区别 1. Struts2是类级别的拦截 , 一个类对应一个request上下文, SpringMVC是方法级别的拦截 ,一个方法对应一个request上下文,而方法 阅读全文
posted @ 2017-12-12 17:04 morethink 阅读(335) 评论(0) 推荐(0) 编辑
摘要: 本文介绍了用于参数绑定的相关注解。 绑定:将请求中的字段按照名字匹配的原则填入模型对象。 SpringMVC就跟Struts2一样,通过拦截器进行参数匹配。 代码在 https://github.com/morethink/MySpringMVC URI模板变量 这里指uri template中va 阅读全文
posted @ 2017-12-12 16:59 morethink 阅读(8797) 评论(1) 推荐(1) 编辑
摘要: 本文参考 "Redis与Memcached的区别" 。 如果简单地比较Redis与Memcached的区别,大多数都会得到以下观点: 1. Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,zset,hash等数据结构的存储。 2. Redis支持数据的备份,即master s 阅读全文
posted @ 2017-12-04 19:23 morethink 阅读(490) 评论(0) 推荐(0) 编辑
摘要: 什么是JSR303? JSR 303 – Bean Validation 是一个数据验证的规范,2009 年 11 月确定最终方案。 Hibernate Validator 是 Bean Validation 的最佳实践。 为什么使用JSR,松耦合,让业务代码的职责更加清晰。 松耦合就是职责更加清晰 阅读全文
posted @ 2017-11-19 22:03 morethink 阅读(2029) 评论(0) 推荐(0) 编辑
摘要: 在我做项目的时候遇到一个需求,要将存在于表ta而不存在于表tb中的数据查询出来。 记录使用的方法和探讨效率。 <! more 数据准备 创建表ta,并且使用存储过程插入13000条数据,在我的机器上运行时间: 346.719s。如果觉得插入的速度比较慢,可以直接导入我建好的表,百度云地址 http: 阅读全文
posted @ 2017-11-18 22:11 morethink 阅读(1064) 评论(0) 推荐(0) 编辑
摘要: 在我使用get请求进行查询的时候遇到一个问题: 当我的请求参数中有中文时,出现乱码。 可是即使我设置了Spring的characterEncodingFilter,也还是出现乱码。 原因:tomcat默认使用ISO8859 1编码来解析get中的url参数,导致乱码。而 或者 都只针对post请求体 阅读全文
posted @ 2017-11-14 15:59 morethink 阅读(1366) 评论(0) 推荐(0) 编辑
摘要: 缓存 什么是缓存? 在高并发下,为了提高访问的性能,需要将数据库中 一些经常展现和不会频繁变更的数据 ,存放在存取速率更快的内存中。这样可以 1. 降低数据的获取时间,带来更好的体验 2. 减轻数据库的压力 缓存适用于读多写少的场合,查询时缓存命中率很低、写操作很频繁等场景不适宜用缓存。 MySQL 阅读全文
posted @ 2017-11-07 13:30 morethink 阅读(2612) 评论(0) 推荐(0) 编辑
摘要: 现在遇到一个需求就是要求完成简单的单点登录,通过在一个tomcat实例中放置两个webapps应用ROOT应用和CEO应用来完成在ROOT应用登录后,在CEO可以直接使用,而未在ROOT应用登录时,不可以进去CEO应用。 实际上问题就是session如何在两个webapp中实现共享,通过上网搜索发现 阅读全文
posted @ 2017-10-31 16:37 morethink 阅读(1199) 评论(0) 推荐(0) 编辑
摘要: HashMap中数据结构 在jdk1.7中,HashMap采用数组+链表(拉链法)。因为数组是一组连续的内存空间,易查询,不易增删,而链表是不连续的内存空间,通过节点相互连接,易删除,不易查询。HashMap结合这两者的优秀之处来提高效率。 而在jdk1.8时,为了解决当hash碰撞过于频繁,而链表 阅读全文
posted @ 2017-10-31 16:23 morethink 阅读(5798) 评论(1) 推荐(7) 编辑
摘要: Apache 64位可以而32位不可以 安装Apache服务 注意: 如果没有自己设置Apache服务名,后面都可不跟 n "服务名",即采用默认的服务名称。 必须用管理员提示符打开,直接用shift+F10打开命令行是不行的。 <! more 命令: 1. 将apache注册为服务 httpd k 阅读全文
posted @ 2017-09-19 14:57 morethink 阅读(1201) 评论(0) 推荐(0) 编辑
摘要: war 和 war exploded 1. war部署首先通过IDEA生成.war工程文件,然后将WEB工程以包的形式上传到服务器,因此会替代服务器本来同名的web app项目。 2. war exploded模式直接将WEB工程以当前文件夹的位置关系上传到服务器。 <! more 使用: 1. w 阅读全文
posted @ 2017-09-18 20:59 morethink 阅读(345) 评论(0) 推荐(1) 编辑
摘要: 链表作为常考的面试题,并且本身比较灵活,对指针的应用较多。本文对常见的链表面试题Java实现做了整理。 链表节点定义如下: <! more 1. 求单链表中结点的个数 依次遍历链表 2. 将单链表反转 构建一个新的链表,依次将本链表的节点插入到新链表的最前端,即可完成链表的反转。 3. 查找单链表中 阅读全文
posted @ 2017-08-20 19:41 morethink 阅读(1135) 评论(1) 推荐(2) 编辑