前言 在将NIO之前,我们必须要了解一下Java的IO部分知识. BIO(Blocking IO) 阻塞IO,在Java中主要就是通过ServerSocket.accept()实现的. NIO(Non-Blocking IO) 非阻塞IO,在Java主要是通过NIOSocketChannel + Seletor实现的. AIO(Asyc IO) 异步IO,目前不做学习. BIO 简单实现服务器和客户端 package net.io; import net.ByteUtil; import jav…
今年我一直在思考web开发里的前后端分离的问题,到了现在也颇有点心得了,随着这个问题的深入,再加以现在公司很多web项目的控制层的技术框架由struts2迁移到springMVC,我突然有了一个新的疑问无法得到正确的解释,为什么我们现在做java的web开发,会选择struts2或者springMVC这样的框架,而不是使用servlet加jsp这样的技术呢?特别是现在我们web的前端页面都是使用velocity这样的模板语言进行开发,抛弃了jsp,这样的选择又会给我们java的web开发带来什么…
新手上路,前端工程师,刚毕业参加工作两个月,上面让我用vue搭建环境和php工程师一起开发,做前后端分离,然而我只用过简单的vue做一些小组件的经验,完全不知道怎样和php工程师配合,ps: php那边用的是think5 ,我要如何把vue嵌套进去?我这两天查资料加学习发现vue-cli有它自己的逻辑目录,现在整个人很懵逼,可能对于一些有个三五年经验的工程师来说,之只是一个小问题,但是困扰了我好久,最后总结一下问题,1.如何用vue搭建环境和php工程师做前后端分离开发,2能搭建一个给我看看么!…
Java 里面的 == 和equals的坑是在是太多了,即使做了多年java开发的程序员也不一定就能准确说出 a == b 或 a.equals(b) 这样简单的问题的答案. 请看下面这26道关于Long 和 bigdecimal 的相等比较,看看你是否可以准确说出每行代码的输出结果呢? 答案在文末,请先看题: 关于Long的相等比较: 1.System.out.println(Long.valueOf("9999999").equals(new Long(9999999L))); 输…
from: https://github.com/RubyLouvre/agate/issues/8 今年我一直在思考web开发里的前后端分离的问题,到了现在也颇有点心得了,随着这个问题的深入,再加以现在公司很多web项目的控制层的技术框架由struts2迁移到springMVC,我突然有了一个新的疑问无法得到正确的解释,为什么我们现在做java的web开发,会选择struts2或者springMVC这样的框架,而不是使用servlet加jsp这样的技术呢?特别是现在我们web的前端页面都是使用…
现在做项目都会使用框架,现在很常见的框架就是SSH(Struts+SpringMVC+spring+hibernate),SSM(Struts/springMVC+Spring+Hibernate),而我最近做的项目itoo中,使用到框架为easyUI+SpringMVC+EJB+hibernate.做项目分层是为了更好的解耦,分层可以完全不用你框架就能够解决,为什么还不需要这么多框架呢? 而且现在公司很多web项目的控制层的技术框架由struts2迁移到springMVC,为什么我们现在做Ja…
近期,在"IT技术学习"微信群中,有同学问了这样一个问题:C语言主要做哪些方面的开发?在这篇文章中,我想结合自身的经验,对这个问题进行下解答. C语言是计算机及其相关专业(如通信.电子.数学等)学生大一时的必修课程,也是非常多人所学的第一门编程语言.要想了解C语言主要做的开发工作有哪些,我们先来简单回想下C语言的产生历程. 美国的贝尔实验室在IT领域占有非常重要的地位,从这里面走出来的发明创造不计其数.C语言就是当中之中的一个. 话说在1970年.贝尔实验室的一个名叫 Ken Thom…
原文地址:http://blog.csdn.net/watkinsong/article/details/9849973 有一种方式不需要自己配置所有的Sun JDK, Android SDK以及NDK,Eclipse等设置,使用已经配置好的开发套件就可以进行直接的开发,由NVIDIA开发的开发套件Tegra Android Development Pack能够直接设置好所有的开发环境,而且最新的版本还包含了OPENCV,不想自己配置的朋友可以直接下载这个套件.但是我本人没有尝试过使用这个套件,…
1. PHP是开源软件,它在bsd/linux/win下都有很好的正式版及孪生版.并非开发php就必须要在linux下进行.主机服务商们习惯性的把asp与php分为两个主机系列几进行销售.由于asp只能运行于IIS内,所以asp主机大都是win架构.而php为开源软件,可以在多个系统内运行 ,所以php主机可以是win架构或是linux架构.由于主机服务商的这种习惯,让消费者误认为php在linux上运行的好,其实不然.-好像跑偏了-如果您要在windows下进行php开发,我推荐:apache…
给大家分享下有关MySQL在数据安全的话题,怎么通过一些配置来保证数据安全以及保证数据的存储落地是安全的. 我是在2014年加入陌陌,2015年加入去哪儿网,做MySQL的运维,包括自动化的开发. 接下来我将从四个方面给大家介绍一下,数据库怎么通过一些配置做到数据安全的. 单机安全 集群安全 备份安全 发展 现在的行业中,数据是一个非常重要的资产. 数据是怎么保证安全呢?在日常中,大家都认为一些商业的数据库能更好的保证数据安全.他们认为对于新兴的MySQL来说,一致认为可以在互联网使用,因为互联…
1. PHP是开源软件,它在bsd/linux/win下都有很好的正式版及孪生版.并非开发php就必须要在linux下进行.主机服务商们习惯性的把asp与php分为两个主机系列几进行销售.由于asp只能运行于IIS内,所以asp主机大都是win架构.而php为开源软件,可以在多个系统内运行 ,所以php主机可以是win架构或是linux架构.由于主机服务商的这种习惯,让消费者误认为php在linux上运行的好,其实不然.-好像跑偏了-如果您要在windows下进行php开发,我推荐:apache…
以前写过两个Android开发配置文档,使用NDK进行JNI开发,这样能够利用以前已经写好的C++代码. 前两篇博客地址: http://blog.csdn.net/watkinsong/article/details/8829072 http://blog.csdn.net/watkinsong/article/details/8829235 但是这两篇配置介绍中,多少的有些错误,这里重新整理这些错误以及要注意的问题,作为勘误文. 简介:本系列博客介绍了安卓开发环境的配置,和在安卓开发中,通过…
前几天后台有读者问我这样的问题.他在一家互联网公司工作3年了,每天都很忙,事情又多又杂. 本想着学习多一些东西也不是坏事,可到头来一无所获,什么都没学会,满腔的热情也被消磨得差不多. 三天两头动辞职的念头,但又不知道自己还能做什么,甚至开始后悔: 如果当初选择另一个行业,是不是就会好一点呢- 想到后面的路,完全不知道下一步该怎么走,只有「迷茫」二字横在心头. 其实这样的问题,几乎每 10 个人里就有 7 个人会问. 有研究表明,在职场中,至少 40% 的人在迷茫期,50% 的人在自我怀疑期,10…
微信公众平台开发时,须要验证消息是否来自微信server,这要用到sha1加密算法.官网上给的是php的sha函数,C++中要用到以下这个函数: 一.引入头文件: #include<openssl/sha.h> #include<inttypes.h> 二.用这个函数转码: //函数功能:将传入的字符串用sha1加密算法加密后传出 //strOriginal:原始字符串 //返回值:加密后的字符串 stringGetSha1Str(const string& strOrig…
相信大家在使用vuejs时候会用到很多的第三方库,能够找到适合自己的库并且加以使用可以大大加快进度,减少bug.但是很多时候会出现这样一个尴尬的境地: 基线的第三方组件并不能很好地满足我们自己地需求,那么到底应该怎么办? 本文试图说一下我的方法. 我在使用element-ui作为标准组件库时使用了其中的el-steps/el-step,就是能够显示不同步骤的一个UI.但是我希望能够支持直接点击步骤切换回已经完成的步骤来做修改,这是很正常的需求.meiyi 比如在做一个作业系统时,要提交新的习题必…
在日常的开发测试中我们经常会遇到本地开发和测试或者线上配置参数不同的场景,必要你要是使用一个三方的支付,它的本地测试和线上的key值或者账号存在不同.最基本的做法是本地用测试参数,提交到测试的时候再改参数.这种做法比较繁琐. 此时我们完全可以使用下面降到的方法,根据项目运行环境来自动加载参数.活不多说请看下文讲解: 先看目录结构 project 应用部署目录├─application 应用目录(可设置)│ ├─common 公共模块目录(可更改)│ ├─index 模块目录(可更改)│ │ ├─…
这个问题困扰了我2年了,之前找到的教程都是MFC的,ATL导入向导或是通过导入类型库的方式来调用控件,我一直都搞不明白. 最近学习了ActiveQT以及通过ActiveQT控制EXCEL.Word.PowerPoint.flash后,我终于大致明白了. 经过几个小时的尝试,终于成功通过Qt操作Solidworks.建议各位可以去BAIDU相关文章,关键词ActiveQt 首先我要说明白一下,VC都是通过COM来操作Solidworks的,既然如此,我们只要通过Qt的COM操作方法来控制就可以了.…
Unit Tests Steve Dower edited this page on 14 Jul · 3 revisions Pages 38 Home Azure Remote Debugging AzureSDK Bottle and Azure Table Storage on Azure Bottle and MongoDB on Azure Browsing Code Using PTVS Build Instructions for PTVS Cloud Project Code…
本文所用源代码已上传,需要的朋友自行下载:点我下载 第一步: 全局安装  npm install -g requirejs 第二步: 1.以下例子主要实现功能, 1)引用jq库获取dom中元素文本, 2)实现并引用去空格工具类trim, 3)最后获取文本并去掉空格后输出, 4)打包js(将所有js文件打包成main.min.js) 1.下载require文件 require.js require主文件 r.js require优化器文件 官网地址:http://requirejs.org/doc…
一.安装google浏览器 1.下载安装包(传送门:http://www.google.cn/intl/zh-CN/chrome/browser/desktop/index.html) 2.使用sudo dbpk -i 安装名称 二.安装nodejs 1.下载官方最新 2.解包:tar -zxvf xxx.tar.zx 3.设置node和npm软链接 sudo ln -s 安装位置 /usr/local/bin/node sudo ln -s 安装位置 /usr/local/bin/npm 三.…
题目链接:https://vjudge.net/problem/UVA-489 题意:给出两行字符串,第一行是标准答案,第二行是玩家猜的串.玩家每次猜一个,猜对一个,标准答案中所有该字符都算被猜到.猜错的次数不能到达七次.多次因同一个字符猜错算猜错一次(这个条件没有用). 猜对, 没猜对且错了七次, 没猜对但还没错到七次 分别输出 You win. You lose. You chickened out. 题解:模拟,莫名奇妙wa了一个小时.各种修改. 以至于找到了一组数据,oj检测不出来,手算…
2010-05-04 14:03:00 测试效果不错,使用也方便.…
Java8 有一些新的特性,今天老顾给大家分享一下关于 Lambda 表达式的由来,一开始感觉 Lambda 可读性蛮差的,不知道 为什么 Java8 会出来这个表达式?既然大佬们推出来,肯定是有原因的,应该是为了解决一些问题,那我们就看看解决了什么问题? 班导想了解一下各个同学的相关情况: 1.来自苏州的有哪些同学 上面的伪代码,是不是很简单,写一个方法,直接过滤出苏州地区的学生. 班导又想知道来自北京的有哪些同学,那代码执行优化一下,可以动态传地区参数. 2.地区参数化 这样是不是就解决了,…
private String generateWord() { String[] beforeShuffle = new String[] { "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", &qu…
目录 一 自我介绍 二 面试情况 三 相关知识点汇总 1 c/c++相关 2 计算机网络 3 数据结构相关 4 数据库相关 5 操作系统 6 Linux基础知识及应用编程(后台必备!) 7 大数问题 8 手撕算法(递归非递归) 9 针对项目相关 10 场景题 11 架构/分布式/中间件相关 12 总结 @ 白嫖不好,要不先赞在看! 一 自我介绍 本人小硕,秋招期间参加了不少安全类相关公司(深信服,绿盟等),另外参加了京东,小米,滴滴等互联网公司面试,同时也面试了几个研究所和一个银行,下面总结下秋…
基本socket编程 1.以下只是简单例子,没有用多线程处理,只能一发一收(由于scan.nextLine()线程会进入等待状态),使用时可以根据具体项目功能进行优化处理 2.以下代码使用了1.8新特性,如果要测试以下代码,java版本不能低于1.8 3.如果发送的信息需要安全保护,也可以使用安全套接字,SSLSocket例子 使用socket编程需要注意的两个方法,sendUrgentData 与 setOOBInline:sendUrgentData是发送紧急数据用,只可以发送ASCII码,…
系列文章 [Head First设计模式]山西面馆中的设计模式——装饰者模式 [Head First设计模式]山西面馆中的设计模式——观察者模式 [Head First设计模式]山西面馆中的设计模式——建造者模式 [Head First设计模式]饺子馆(冬至)中的设计模式——工厂模式 [Head First设计模式]一个人的平安夜——单例模式 [Head First设计模式]抢票中的设计模式——代理模式 引言 今天突然跟朋友谈起设计原则,心里想想面向对象的设计原则与要素都有哪些?掰掰指头算算能说…
动态代理,这个词在Java的世界里面经常被提起,尤其是对于部分(这里强调“部分”二字,因为有做了一两年就成大神的,实力强的令人发指,这类人无疑是非常懂动态代理这点小伎俩的)做了一两年新人来说,总是摸不清楚来龙去脉,一两年是个坎,为什么是一两年,才入门的新人可能对这东西没什么感觉,没到这一步,做了很久开发的人显然是明白这其中原理的,而做了一两年的,知其然而不知其所以然,所以一两年工作经验的人很多是很茫然的. 那么,这里就相对比较比较深入一点的介绍JDK动态代理的原理.这样子介绍完,明白了其中的道理…
出自:http://www.cnblogs.com/dreamroute/p/5273888.html#3839242 首先感谢"神一样的存在"的文章! 动态代理,这个词在Java的世界里面经常被提起,尤其是对于部分(这里强调“部分”二字,因为有做了一两年就成大神的,实力强的令人发指,这类人无疑是非常懂动态代理这点小伎俩的)做了一两年新人来说,总是摸不清楚来龙去脉,一两年是个坎,为什么是一两年,才入门的新人可能对这东西没什么感觉,没到这一步,做了很久开发的人显然是明白这其中原理的,而做…
做前端开发的需不需要PS 记得在之前的老东家做某一个系统开发,当时正在做界面开发,发现界面还需要添加几个图标,于是把这个需求反馈给了项目经理.过了十几分钟,项目经理跑过来告诉我:产品部的UI设计人员(当时我们的UI设计人员全部调整到产品部)需要向他们产品经理汇报这个任务,你在邮件里边简单描述下你的图标需求然后发送给产品经理再抄送给我和UI设计人员.我听了当时蛋碎满地,几个图标设计不到半个小时的事情,非搞得花上一天时间才搞完!经过这蛋碎的经历,我觉得对于一个做界面的开发人员来说,懂些PS技术还是有…