- 博客(301)
- 资源 (30)
- 收藏
- 关注
转载 创业互联网公司如何搭建自己的技术框架
适用范围本文主要针对小型互联网公司,特别适用于手机APP的后台架构,基本可以支撑5万日活本文会对可能用到的相关技术进行技术选型的说明,以及相对应的设备的采购。技术指标说一下一些技术指标的计算过程可以作为其他同学的参考QPS, 如果是5万日活,使用集中在每天的4小时,每个用户大概产生100的请求,那么平均下来,我们系统大概应该支撑的请求为:50000 * 100 / (
2018-01-05 17:32:29 522
原创 Java实现内存可见性的两种方法比较:synchronized 和 Volatile以及涉及到锁的剖析
这篇文中讲述了通过synchronized和 volatile 变量实现内存可见性的方法,这里比较下二者的区别。* volatile 变量是一种稍弱的同步机制在访问 volatile 变量时不会执行加锁操作,因此也就不会使执行线程阻塞,因此 volatile 变量是一种比 synchronized 关键字更轻量级的同步机制。* 从内存可见性的角度看,写入 volatile 变量相当于退出同步代码块
2017-12-22 17:35:44 1808
原创 抽象类和接口的详解(实例)
抽象类和接口在我们的代码中,生活中息息相关,与上图所示,操纵复杂,密切相关,那么问题来了,何谓抽象类,何谓接口?带着这层薄纱,慢慢揭开这层薄纱;也许在古代,新婚之夜,透过这层薄纱,你看到的或者是惊喜,或许是惊悚,不要怕,无论是惊悚还是惊喜,她都会伴你一生。曾几何时?你还会在面试当中与面试官对答如流的解释抽象类和接口吗? 面试官:解释一下抽象类和接口的区别? me: 1、抽象类和接口都不能直
2017-12-20 17:15:17 19422 15
原创 PostgreSQL转换为Mysql
由于postgresql和mysql的使用方式不同,所以不能直接导出sql转换为mysql所用的,所以下面是我总结的几点DROP TABLE IF EXISTS "public"."college";CREATE TABLE "public"."college" ("college_id" int4 DEFAULT nextval('college_college_id_seq':
2017-12-16 13:29:09 10701
原创 Redis在项目中实战经验
Redis在项目中实战经验 首先对于项目中Redis做缓存的一些思路,避免走一些弯路1、对于会话缓存、全页缓存(FPC)的三种情况(单条缓存,对于一些不分页、不需要实时的列表,不需要实时的,需要分页的列表) (1)单条数据:表名+id作为key永久保存到redis,在更新的地方都要更新缓存 缺点:不适用与需要经常更新的数据; (2)
2017-11-18 17:11:17 19188 2
原创 Java泛型详解
1.为什么需要泛型泛型在Java中有很重要的地位,网上很多文章罗列各种理论,不便于理解,本篇将立足于代码介绍、总结了关于泛型的知识。希望能给你带来一些帮助。先看下面的代码: [java] view plain copy List list = new ArrayList(); list.add("CSDN_SEU_Cavin");
2017-11-10 14:55:55 315
原创 京东面试--总结
特别喜欢一句话:不是因为看到了希望才去坚持,而是因为坚持了才会看到希望。1、现在有T1、T2、T3三个线程,你怎样保证T2在T1执行完后执行,T3在T2执行完后执行?思路:多线程之间怎么协同工作,如何让一个线程执行完毕后处于什么状态。 Thread t1 = new Thread(new T1()); Thread t2 = new Thread(new T2()); Thr
2017-11-07 17:36:36 6511
原创 CASE types character varying and numeric cannot be matched
问题的描述:为什么会出现题目当中的CASE type character varying and numeric cannot be matched?在Postgresql中针对拼接字符串的操作才出现字符串与数字不匹配的概念。本以为使用concat函数就没问题,但是使用的地方错误造成的原因下面看一段代码就一目了然了:EXPLAIN SELECTse.enroll_numbe
2017-10-21 10:37:29 13465
原创 Jetty安装与部署
jetty跟Tomcat一样,是一个web容器。首先去jetty官网下载jetty9,然后解压文件第一步:Jetty的安装 同Tomcat一样,jetty也是免安装的。我们只需要将下载好的jetty.zip解压至指定目录后,jetty就可以使用了。这里我们解压到D:\Java\jetty下,然后你会看到如下几个目录,简单说明一下: 第二步:启动jetty jetty的启动跟Tomcat不同,我
2017-09-06 11:08:43 11368
原创 SSM框架构建-详细整合教程(Spring+SpringMVC+MyBatis)
SSM框架构建-详细整合教程(Spring+SpringMVC+MyBatis)不断犯错,不断的尝试,才会正真成长。 –longjingchatips : 之前网上看了一篇搭建的SSM框架的blog,写的不错,今天我试着对我身在其中的错
2017-09-04 18:23:28 838
原创 Java8新特性
Java8的十大新特性你了解多少呢?JDK1.8继JDK1.5之后号称革命性改革那下面我们来谈谈Java8的新特性:Lambda表达式、接口的默认方法与静态方法、方法引用、重复注解、扩展注解的支持、Optional、Stream、Date/Time API(JSR 310)、JavaScript引擎Nashorn、Base64等等。1、Lambda表达式 Lambda表达式说是Java8最
2017-08-31 17:29:30 398
原创 SpringMVC源码分析
今天七夕的,何谓七夕,何谓情人节,我能不能与我的织女相遇呢 ?不扯淡了,直接切入正题,你好,我好,不如大家好,所谓大家好才是真的好。 SpringMVC有三个层次,分别是:HttpServletBean 和 FrameworkServlet、DispatcherServlet SpringMVC 实际上市基于方法(handler:Method)处理模式 所以它可以使用单例 Struts:实际上是
2017-08-28 17:17:45 478
原创 手写Tomcat容器加载静态资源
实现tomcat容器加载静态资源1、server.javapackage tomcat3;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.net.ServerSocket;import java.net.Socket;/** *
2017-08-28 10:13:30 790
原创 Mysql (Case when then end )函数
select t1.student_source, t1.enroll_school, count(t1.identity_card) as student_amount, sum(t1.pay_tuition) as pay_tuition_amount, sum(t1.channel_amount) as channel_amount, sum(t1.channel_nee
2017-08-24 16:31:37 1374
原创 Java 导出Excel实例
@ResponseBody @RequestMapping(value = "export", method = RequestMethod.GET, produces = {"application/json;charset=UTF-8"}) public void export(@RequestParam(value = "settleId", required = true) I
2017-08-23 20:06:30 373
转载 Spring核心技术--事务管理
spring对事务的解决办法其实分为2种:编程式实现事务,AOP配置声明式解决方案。 http://jinnianshilongnian.iteye.com/blog/1496953 Spring提供了许多内置事务管理器实现,常用的有以下几种: DataSourceTransactionManager:位于org.springframework.jdbc.datasource包
2017-08-14 17:38:49 289
原创 Java IOC和AOP解析
1、IOC控制反转:控制权由对象转向容器,由容器对bean对象进行控制。2、AOP面向切面编程:把具体的类创建对应的代理类,通过代理类对具体类进行操作AOP面向切面编程,即在不修改源代码的情况下,对原有功能进行扩展,通过代理类来对具体类进行操作。 (Spring是通过AOP的手段达到事务控制的,具体实现是靠spring-asm.jar和cglib.jar,因为这两个jar都
2017-08-14 17:35:49 2870
转载 程序员应该访问的最佳网站中文版
程序员应该访问的最佳网站中文版原版原文链接 :https://github.com/tuteng/Best-websites-a-programmer-should-visit-zh一些对程序员有用的网站在学习CS的时候有一些你必须知道的有用的站点来获取通知为了你的技术储备和学习新知识。这里是一个你应该访问的不是非常全面的一些站点的列表,这个列表会不断更新,只要我能得到链接,你
2017-08-14 12:28:57 4506
原创 Spring注解剖析
为什么会有Spring注解呢?那我们先了解一下注释配置相对于XML配置具有很多的优势它可以充分利用 Java 的反射机制获取类结构信息,这些信息可以有效减少配置的工作。如使用 JPA 注释配置 ORM 映射时,我们就不需要指定 PO 的属性名、类型等信息,如果关系表字段和 PO 属性名、类型都一致,您甚至无需编写任务属性映射信息——因为这些信息都可以通过 Java 反射机制获取。注
2017-08-08 17:50:37 255
原创 多表查询SQL优化
多表连接LEFT JOIN 是一个例子:三张表,也就是多表联查,使用聚集函数SUM,用到了GROUP BYselect C.channel_short_name,u.standby2,u.user_name,bs.enroll_batch,bs.pay_school_year,bs.settlement_amount,bs.received_amount,(bs.settlement_
2017-08-07 12:49:12 9676
原创 PHP laravel SQL优化
SQL优化的态度--Facebook做产品的时候,注重一句话,我们不求完美,我们先把产品运行起来!其实上边的话,我也是对自己的说的,最近比较忙,闲暇时光,总结一下过去的薄弱点,不论你做什么,写什么,你总会遇到困难,总会遇到挫折,那个时候才是你真正提高的时候,绝对......是这样,当你重复做一些事情的时候,你会慢慢厌烦,慢慢的感到不满,也许你可以认为我说的不对,但是我有必要告诉
2017-07-30 20:03:16 3505 3
原创 PHP一维数组、二维数组排序
1、一维数组结构:{ "data": [ { "id": 1, "name": "套餐一", "category": null, "type": 1, "short_introduction": "套餐介绍",
2017-06-22 17:20:36 760
转载 Burpsuite1.7.03网站渗透神器最新破解版
众所周知,Burp Suite是响当当的web应用程序渗透测试集成平台。从应用程序攻击表面的最初映射和分析,到寻找和利用安全漏洞等过程,所有工具为支持整体测试程序而无缝地在一起工作。平台中所有工具共享同一robust框架,以便统一处理HTTP请求、持久性、认证、上游代理、日志记录、报警和可扩展性。Burp Suite允许攻击者结合手工和自动技术去枚举、分析、攻击Web应用程
2017-06-20 22:11:17 1423 1
原创 phpfmt自动删除代码解决方案
安装 Sublime的 phpfmt 插件(解决一些不良习惯,其实用和不用做一些对比,更能体现处优略势)步骤:1. Sublime界面中Ctrl+Shift+P, 打开安装控制台2. 输入 phpfmt,点击出现的phpfmt插件条目进行安装,等待安装完成3. 配置Preference->Package Settings->phpfmt->Settings-User, 添加如下配置
2017-06-07 14:37:39 2156 2
原创 PHP单点登录出现的错误
单点登录,众所周知,一台机器登录,另一台登陆的时候会把第一台挤掉(实时),一般情况下,除非做实时处理的,都是在第一台登录有关token认证的情况下,给接口写一个中间件处理,这样会给用户提示并退出软件。1、中间件处理的时候、由于在存取cache缓存的时候用了一个cacheKey = 'token',导致进过中间件的处理,每一次只能登录一个用户,这个问题是惨痛的(必须加用户唯一id,例如,
2017-05-26 16:28:38 716
原创 Laravel 5 - Trait method can has not been applied, because there are collisions with other trai
1、Laravel 5 - Trait method can has not been applied, because there are collisions with other trait methods on App\User?当使用的多个 trait 中包含了相同的方法名,将会发生冲突,冲突错误信息如下:FatalErrorExcepti
2017-05-25 16:12:28 2391
原创 MATLAB中的一些小技巧
MATLAB中的一些小技巧1. Ctrl+C 中断正在执行的操作如果程序不小心进入死循环,或者计算时间太长,可以在命令窗口中使用Ctrl+c来中断。MATLAB这时可能正疲于应付,响应会有些滞后。2. figure命令新建一个绘图窗口figure 可以打开一个空的绘图窗口,接下的绘图命令可以将图画在它里面,而不会覆盖以前的绘图窗口。当有多个figure窗口时,在命令窗口中执
2017-05-24 17:47:31 643
原创 PHP Excel的导入与导出功能
为什么做这件事:也许原因大家都各不相同,可能有的是为了工作,可能有的是为了学习,我的原因很简单,就是为了玩,正应为好玩,才没事的时候搞一搞。这件事情很简单,你需要引入一个github库maatwebsite/excel然后http://www.maatwebsite.nl/laravel-excel/docs 这篇文章就可以很好的对import,export and exp
2017-05-23 16:36:43 817
原创 This cache store does not support tagging.
用户权限管理系统https://github.com/Zizaco/entrust再添加角色的时候... 报了一个错..BadMethodCallException in Repository.php line 391:This cache store does not support tagging.应该是这个包里 有个地方用了 laravel 的cache,默认的ca
2017-05-17 15:37:09 6228
转载 开发人员必读
对于刚开始学习软件开发的新人来说,“必备技能”往往意味着一个长长的、标有重要度的学习列表,但是过长的列表通常会导致新人不知如何开始学习,压力倍增。本文尝试列举出最重要的几个技能,也期望通过此列表能给新人一个比较明确的学习重点和路径。深入学习一门编程语言没有掌握任何一门编程语言,就不可能成为一名编程人员。许多程序员试图在学习之初一次学习几种编程语言,以便应对他们第一份
2017-05-11 18:03:00 413
原创 Seeder自动填充测试数据
1.Seeder是什么?是个数据填充器工具;laravel自带database/seeds/DatabaseSeeder.php类;文件将通过命令生成在 database/seeds/下;2.Seeder什么用?自动生成批量测试数据;通过表的迁移后可自动导入一系列数据,便于协作开发;3.Seeder原代码use Illu
2017-05-05 13:57:26 1672
转载 Laravel 5使用faker Model Factory生成网站模拟演示数据
开发中,假如我需要一些演示的数据,那么,我可能得连接数据库,创建一大堆的演示数据,这是一件非常蛋疼的事情。还好,Laravel是优雅高效的,Laravel绝对不会干很蠢的事情。按照大多数人的做法,按照令人繁琐的方式创建数据,比如我需要创建1000个用户,普通的做法就得按照下面的方式一个个追加,或者聪明点弄个循环,但假如我用户下面还有文章,岂不是更麻烦:?
2017-05-05 12:46:38 4473
原创 Laravel 5如何安全删除migration文件
删除migrations目录下错误的migrations文件,比如删除 app/database/migrations/my_migration_file_name.php重置composer文件加载项: composer dump-autoload然后就可以重新创建新的migrations文件了假如你运行了migration文件,也就是你执行了 php artisan m
2017-05-05 10:48:24 3553
原创 数据结构--单例模式
单例模式:懒汉式,饿汉式第一种:懒汉式,线程不安全 Java代码 重点内容 public class Singleton { private static Singleton instance; private Singleton (){} public static Singleton getInstance() { if (instanc
2017-05-03 13:56:08 380
原创 Composer自动加载机制
众所周知 composer 是现代 PHP 项目的基石, 与古老的 pear 不同, composer 并不是一款专注于系统级别 php 管理的包管理系统,而是基于项目的一个库管理系统。这就好比 npm install -g 和 npm install 的区别。而且最主要的是 pear 不太能跟上时代的潮流,在大家都在用 psr-* 的时候 pear 依然我行我素自成一体。
2017-05-02 11:32:27 1054
翻译 如何使用CMD Command 在Windows中查找和删除任何计算机病毒
如何使用CMD Command在Windows中查找和删除任何计算机病毒病毒,恶意软体,木马,蠕虫!这些邪恶的东西可以通过诸如互联网浏览,USB设备,电子邮件中的网络钓鱼链接以及安装受感染的软件等众多方式渗透您的计算机。大多数这些病毒使您的计算机变慢,并占用宝贵的内存以及存储空间。一些更强大的病毒意味着也会污染我们的操作系统,并窃取个人信息和银行数据。从计算机中识别和删除这种不需要
2017-04-29 15:27:42 10518
原创 VMware Tools 安装
之所以写出来,是因为之前遇到安装出现了问题1.关闭虚拟机2.编辑虚拟机,将CD/DVD选项改成自动检测(而不是之前指向的ubuntuxxx.iso)3.重启虚拟机4.点击菜单中的虚拟机,点击安装vmware tool5.之后按网上教程安装即可下面就解释下安装步骤吧:VMware Tools桌面文件: tar -zxvf vmware-linu
2017-04-28 18:08:03 694
原创 Laravel 服务容器实例教程 —— 深入理解控制反转(IoC)和依赖注入(DI)
代码是最为耐心、最能忍耐和最令人愉快的伙伴,在任何艰难困苦的时刻,它都不会抛弃你。 今天我们着重谈谈什么是IoC?什么是依赖注入? 为什么要用这些所谓的概念,怎么运用呢?其实我看到这些关键词的时候,脑子里有一个定论,但是呢,一知半解,也是深受痛苦,怎么才能不痛苦呢,那就是理解他们之间的关系、原理,各个击破,这才是最好的办法,不然,看到一次,你后悔一次,看到一次,你头痛一次,
2017-04-26 18:02:49 1772
原创 Composer 中文镜像
如何使用?请尽可能用比较新的 Composer 版本。使用 Composer 镜像加速有两种选项:选项一:全局配置,这样所有项目都能惠及(推荐);选项二:单独项目配置;选项一、全局配置(推荐)$ composer config -g repo.packagist composer https://packagist.laravel-china
2017-04-25 10:34:03 4110
转载 TCP协议的三次握手和四次分手的大白菜
最近在恶补计算机网络方面的知识,之前对于TCP的三次握手和四次分手也是模模糊糊,对于其中的细节更是浑然不知,最近看了很多这方面的知识,也在系统的学习计算机网络,加深自己的CS功底,就把看过的一些比较好的东西和自己的一些理解二次加工组织一下然后交流分享,一起学习进步,对了这个面试好像经常问到。原文收录在我的 GitHub博客 (https://github.com/jawil/blog) ,
2017-04-25 10:27:50 476
SSM(Spring+SpringMVC+MyBatis)整合
2017-09-04
universal-image-loader-1.9.4.jar
2015-11-14
AngularJs1.2.19&1.3.0&1.4.0完整版
2015-11-06
一键锁屏app
2015-09-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人