- 博客(51)
- 收藏
- 关注
原创 socket相关的面试题
1、TCP和UDP的区别:1)TCP提供面向连接的传输,通信前要先建立连接(三次握手机制);UDP提供无连接的传输,通信前不需要建立连接。2)TCP提供可靠的传输(有序,无差错,不丢失,不重复);UDP提供不可靠的传输。3)TCP面向字节流的传输,因此它能将信息分割成组,并在接收端将其重组;UDP是面向数据报的传输,没有分组开销。4)TCP提供拥塞控制和流量控制机制;UDP不提供拥塞控制和流量控制机
2017-12-29 22:26:34 7797
原创 jsp,servlet相关面试题1
1、 Servlet和GCI的区别?答:Servlet是基于Java编写的,处于服务器进程中,它能够通过多线程方式运行service()方法,一个实例可以服务于多个请求,而且一般不会销毁;而CGI对每个请求都生产新的进程,服务完成后销毁,所以从效率上低于Servlet。2、 牢记Servlet的生命周期?答:Servlet的生命周期从Web加载Servlet开始,通过调用Servlet的init
2017-12-29 22:24:13 159
原创 53道Java线程面试题
53道Java线程面试题 下面是Java线程相关的热门面试题,你可以用它来好好准备面试。1) 什么是线程? 线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。程序员可以通过它进行多处理器编程,你可以使用多线程对运算密集型任务提速。比如,如果一个线程完成一个任务要100毫秒,那么用十个线程完成改任务只需10毫秒。Java在语言层面对多线程提供了卓越的支持,它也是
2017-12-29 22:20:14 222
原创 xampp搭建运行php虚拟主机的详细步骤
新装了xampp这么一个软件搭建自己的web开发环境,安装完毕自然要虚拟几个目录放自己的项目了,现将如何在xampp搭建的web服务器环境下新建虚拟主机的过程总结分享一下,大致过程分为三步,如下:第一步:用记事本打开C:\Windows\System32\drivers\etc\hosts 在127.0.0.1 localhost下面我添加了一个127.0.0.1
2017-12-28 15:58:49 1944
原创 XAMPP本地配置PHP项目
记录方便使用的时候查阅:修改本机hosts指定域名 C:\Windows\System32\drivers\etc\hosts127.0.0.1 smartseal.com查看本机IP的命令: ipconfig在\apache\conf\extra的httpd-vhosts.conf文件后面<VirtualHost *:80> ServerAdmin webmaster@dummy-ho
2017-12-26 20:26:15 6588
原创 Jsp学习9-点击量统计 自动刷新
点击量统计要实现一个计数器,您可以利用应用程序隐式对象和相关方法getAttribute()和setAttribute()来实现。 这个对象表示JSP页面的整个生命周期中。当JSP页面初始化时创建此对象,当JSP页面调用jspDestroy()时删除该对象。 以下是在应用中创建变量的语法: application.setAttribute(String Key, Object Value);
2017-12-26 09:33:31 539
原创 Jsp学习8-cookie session详解及区别
一.cookieCookie是存储在客户端的文本文件,它们保存了大量轨迹信息。在servlet技术基础上,JSP显然能够提供对HTTP cookie的支持。使用cookie的好处:1、Cookie能使站点跟踪特定访问者的访问次数、最后访问时间和访问者进入站点的路径 2、Cookie能告诉在线广告商广告被点击的次数,从而可以更精确的投放广告 3、Cookie有效期限未到时,Cookie能使用户
2017-12-26 09:22:56 390
原创 Jsp学习7-转发与重定向
页面跳转的时候有两种方式即:重定向与转发 重定向: response.sendRedirect(“地址”); a. 页面地址显示最终页面 b. 不可向后传递参数 c. 跳到外部站点 服务器转发: request.getRequestDispatcher(“地址”).forward(request, response);
2017-12-25 15:30:17 349
原创 Jsp学习6-文件上传
JSP 可以与 HTML form 标签一起使用,来允许用户上传文件到服务器。上传的文件可以是文本文件或图像文件或任何文档。 本章节我们使用 Servlet 来处理文件上传,使用到的文件有: upload.jsp : 文件上传表单。 message.jsp : 上传成功后跳转页面。 UploadServlet.java : 上传处理 Servlet。 需要引入的 jar 文件:common
2017-12-25 15:03:23 268
原创 Jsp学习5-filter过滤器使用详解
JSP 和 Servlet 中的过滤器都是 Java 类。过滤器可以动态地拦截请求和响应,以变换或使用包含在请求或响应中的信息。 可以将一个或多个过滤器附加到一个 Servlet 或一组 Servlet。过滤器也可以附加到 JavaServer Pages (JSP) 文件和 HTML 页面。 过滤器是可用于 Servlet 编程的 Java 类,可以实现以下目的: 在客户端的请求访问后端资源
2017-12-25 14:37:57 947
原创 Jsp学习4-表单处理
JSP 读取表单数据的方法:getParameter(): 使用 request.getParameter() 方法来获取表单参数的值。 getParameterValues(): 获得如checkbox类(名字相同,但值有多个)的数据。 接收数组变量 ,如checkbox类型 getParameterNames():该方法可以取得所有变量的名称,该方法返回一个Emumeration。 get
2017-12-25 10:48:16 294
原创 Jsp学习3-请求与响应
1.客户端请求HTTP信息头的内容是不能直接被读取的 HttpServletRequest类request对象是javax.servlet.http.HttpServletRequest类的实例。每当客户端请求一个页面时,JSP引擎就会产生一个新的对象来代表这个请求。 request对象提供了一系列方法来获取HTTP信息头,包括表单数据,cookies,HTTP方法等等。 HTTP信息
2017-12-25 08:54:43 622
原创 Jsp学习2-动作元素:include JavaBean forward
与JSP指令元素不同的是,JSP动作元素在请求处理阶段起作用。用XML语法写成的。 利用JSP动作可以动态地插入文件、重用JavaBean组件、把用户重定向到另外的页面、为Java插件生成HTML代码。 语法:<jsp:action_name attribute="value" />动作元素基本上都是预定义的函数,JSP规范定义了一系列的标准动作,它用JSP作为前缀,可用的标准动作元素如下:
2017-12-23 00:41:53 631
原创 Jsp学习1-页面组成 指令 内置对象
jsp(Java Server Page)是基于java实现的动态脚本技术,运行在服务端的java页面。 当浏览器请求访问web应用时,web服务器会使用jsp引擎对请求的jsp进行编译和执行。然后返回页面给浏览器进行显示。一.JSP的执行过程经历三个阶段:翻译阶段: 当web服务器收到jsp请求的时候,首先对jsp文件进行翻译,将编写好的jsp文件通过jsp引擎转换为可识别的java文件,也就
2017-12-23 00:00:18 369
原创 Html5 canvas学习6-放大镜
drawImage()这个方法有三种使用情况: 1、drawImage(img,x,y) 三个参数,第一个参数当然是img元素了,也可以是video元素或者Image对象,x 、y 为图片绘制时在画布中的起始坐标,图像大小与原图相同。 2、drawImage(img , x , y , w , h) 与第一中情况相比,多了两个参数,分别代表所绘图像的宽度和高度。 3、drawIm
2017-12-22 12:03:07 276
原创 Html5 canvas学习5-图形变形:缩放 旋转 平移 变形
在canvas对当前绘图对象进行变形时,其中心点是画布(0,0)的坐标原点。1.缩放缩放context.scale(x,y)x:x坐标轴按x比例缩放 y:y坐标轴按y比例缩放比如1表示不缩放、0.5表示缩小50%、2.3表示放大2.3倍。例子:<script>var c = document.getElementById("myCanvas");var ctx = c.getConte
2017-12-21 09:07:16 15079
原创 java面试常见100+题
面向对象编程(OOP)Java是一个支持并发、基于类和面向对象的计算机编程语言。下面列出了面向对象软件开发的优点:代码开发模块化,更易维护和修改。代码复用。增强代码的可靠性和灵活性。增加代码的可理解性。面向对象编程有很多重要的特性,比如:封装,继承,多态和抽象。下面的章节我们会逐个分析这些特性。封装封装给对象提供了隐藏内部特性和行为的能力。对象提供一些能被其他对象访问的方法来改变它内部的数据。在Ja
2017-12-20 23:48:31 876
原创 Html5 canvas学习4-图像
把图片或视频放置到画布上, 使用以下方法:ctx.drawImage(image,x,y)//完整的参数如下,除了image,x,y其余均是可选ctx.drawImage( img, clip_x, clip_y, clip_w, clip_h, x, y, width, height );1.最简单的形式ctx.drawImage(img, x, y):<script>var c = doc
2017-12-20 23:38:41 268
原创 Html5 canvas学习3-文本 投影
1.文本使用 canvas 绘制文本,重要的属性和方法如下:方法:fillText(text,x,y) - 在 canvas 上绘制实心的文本 strokeText(text,x,y) - 在 canvas 上绘制空心的文本 measureText(text)-measureText返回的对象中包含一个名为width的属性。参数:text 显示的文本内容,(x,y) 文本绘制的起始点坐标。 f
2017-12-20 14:12:13 891
原创 Html5 canvas学习2-圆 贝塞尔曲线
1.画一个圆弧arc(x,y,r,start,stop) 参数分别为: 圆心x坐标, 圆心y坐标, 圆的半径r , 开始角度, 结束角度var c = document.getElementById("myCanvas");var ctx = c.getContext("2d"); //获取该canvas的2D绘图环境对象ctx.arc( 80, 80, 40, 0, 2*Math.PI);c
2017-12-20 09:47:23 1248
原创 Html5 canvas学习1-描边 渐变 直线 矩形
1.坐标系统默认是300*150像素大小,以左上角为原点。canvas 的左上角坐标为 (0,0) 可以通过下面方式来交换坐标: 平移(translate) 旋转(rotate) 缩放(scale)2.创建<canvas id="myCanvas" width="200" height="100"style="border:1px solid #000000;"></canvas><scr
2017-12-18 18:33:42 1156
转载 HTML5全局属性汇总
局部属性和全局属性 局部属性:有些元素能规定自己的属性,这种属性称为局部属性。 比如link元素,它具有的局部属性有href、 rel、 hreflang、 media、 type、 sizes这六个。 全局属性:可以用来配置所有元素共有的行为,这种属性称为全局属性,可以用在任何一个元素身上。1、accesskey属性使用accesskey属性可以设定一个或几个用来选择页面上的元素的快捷键。
2017-12-15 10:36:43 333
原创 JSONObject 与JSONArray
JSON字符串可以有两种格式,一种是对象格式的JSONObject ,另一种是数组对象JSONArray 实例: {“name”:”JSON”,”address”:”北京市西城区”,”age”:25}//JSON的对象格式的字符串 [{“name”:”JSON”,”address”:”北京市西城区”,”age”:25}]//数据对象格式 都是以键值对的形式存在,唯一的区别是数组多了一个[];
2017-12-15 00:38:27 504
转载 ionic的安装与环境配置
Ionic的安装与环境配置安装ionic之前的准备工作:JDK、ant、android SDK、NodeJS、cordova一、安装JDK 1.7以上1、下载地址: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 2、Java环境变量的配置: 1) JAV
2017-12-14 11:56:58 500
转载 java线程池2-四种常用的线程池
Java通过Executors提供四种线程池,分别为: newCachedThreadPool 创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程。 newFixedThreadPool 创建一个定长线程池,可控制线程最大并发数,超出的线程会在队列中等待。 newScheduledThreadPool 创建一个定长线程池,支持定时及周期性任务
2017-12-13 19:19:28 668
原创 java线程池1-线程池,ThreadPoolExecutor类详解
1.线程池的概念多线程技术主要用于解决处理器单元内多个线程执行的问题,她可以显著减少处理器单元的闲置时间,增减处理器单元的吞吐能力。 多数生产环境面临的技术背景一般是:处理一次请求的时间是短暂的,但是请求数量巨大,这种情况如果为每一个请求都单独创建一个县城,那么资源基本都被创建线程,切换线程,销毁线程所占据,用于业务请求的资源反而少 理想的处理方式是:将处理请求的线程数量控制在一个范围,既保证后
2017-12-13 09:37:41 450
转载 去哪儿科技java实习生面试题
答案待完善。。。。。。。。。 转自:http://blog.csdn.net/xlgen157387/article/details/46572571 前言:前一段时间面试了去哪儿科技的Java实习生岗位,前几天收到通知,通过面试,课程考完试之后,静下来把这总结的面试题分享给大家;1.Java的内存结构,堆中又分为那几个区域以前的博客详细介绍过:http://blog.csdn.net/xlge
2017-12-12 16:13:07 523
原创 java多线程3-线程的同步与数据传递
一.线程同步1.synchronized关键字:1、synchronized关键字的作用域有二种: 1)是某个对象实例内,synchronized aMethod(){}可以防止多个线程同时访问这个对象的synchronized方法(如果一个对象有多个synchronized方法,只要一个线程访问了其中的一个synchronized方法,其它线程不能同时访问这个对象中任何一个synchronize
2017-12-11 23:01:53 357
原创 java多线程2-常用的函数
一.常用函数的说明1.sleep(long millis): 在指定的毫秒数内让当前正在执行的线程休眠(暂停执行)2.join():指等待t线程终止。使用方式 join是Thread类的一个方法,启动线程后直接调用,即join()的作用是:“等待该线程终止”,这里需要理解的就是该线程是指的主线程等待子线程的终止。也就是在子线程调用了join()方法后面的代码,只有等到子线程结束了才能执行。Thre
2017-12-11 22:10:46 1017
转载 js数组的操作详解
转自:https://segmentfault.com/a/1190000012276002数组APIAPI: Application Programming Interface,应用程序编程接口;js中对象提供的方法就叫做API;instanceof检测一个对象是否是数组;(用来对付复杂数据类型;) // 简单数据类型 typeof ; A instanceof B // A是不是B造
2017-12-11 10:42:52 475
原创 java多线程1-创建启动
进程:每个进程都有独立的代码和数据空间(进程上下文),进程间的切换会有较大的开销,一个进程包含1–n个线程。(进程是资源分配的最小单位) 线程:同一类线程共享代码和数据空间,每个线程有独立的运行栈和程序计数器(PC),线程切换开销小。(线程是cpu调度的最小单位)1.线程的生命周期 1、新建状态(New):新创建了一个线程对象。 2、就绪状态(Runnable):线程对象创建后,其他线程调用了
2017-12-11 10:22:44 302
转载 java心跳机制
心跳机制是定时发送一个自定义的结构体(心跳包),让对方知道自己还活着,以确保连接的有效性的机制。 什么是心跳机制? 就是每隔几分钟发送一个固定信息给服务端,服务端收到后回复一个固定信息如果服务端几分钟内没有收到客户端信息则视客户端断开。发包方:可以是客户也可以是服务端,看哪边实现方便合理。 心跳包之所以叫心跳包是因为:它像心跳一样每隔固定时间发一次,以此来告诉服务器,这个客户端还活着。事实上这是
2017-12-10 02:21:29 8317
原创 网络编程4-socket通信三次握手四次挥手
0.一些概念socket是”打开—读/写—关闭”模式的实现,以使用TCP协议通讯的socket为例,其交互流程大概是这样子的 过程介绍 服务器端先初始化Socket,然后与端口绑定(bind),对端口进行监听(listen),调用accept()阻塞,等待客户端连接。在这时如果有个客户端初始化一个Socket,然后连接服务器(connect),如果连接成功,这时客户端与服务器端的连接就建立了
2017-12-10 01:36:08 455
原创 网络编程3-TCP/IP、HTTP、Socket的理解
1.TCP/IPTCP/IP(Transmission Control Protocol/Internet Protocol)即传输控制协议/网间协议,定义了主机如何连入因特网及数据如何再它们之间传输的标准, 不同于ISO模型的七个分层,TCP/IP协议参考模型把所有的TCP/IP系列协议归类到四个抽象层中 应用层:TFTP,HTTP,SNMP,FTP,SMTP,DNS等协议 传输层:TCP协
2017-12-10 00:27:02 525
原创 网络编程2-TCP UDP Socket使用详解
网络编程是指编写运行在多个设备(计算机)的程序,这些设备都通过网络连接起来。 java.net 包中 J2SE 的 API 包含有类和接口,它们提供低层次的通信细节。你可以直接使用这些类和接口,来专注于解决问题,而不用关注通信细节。 java.net 包中提供了两种常见的网络协议的支持: TCP:TCP 是传输控制协议的缩写,它保障了两个应用程序之间的可靠通信。通常用于互联网协议,被称 TCP
2017-12-09 02:28:21 1012
原创 网络编程1-URL相关的处理
网络编程就是在两个或两个以上的设备(例如计算机)之间传输数据。程序员所作的事情就是把数据发送到指定的位置,或者接收到指定的数据,这个就是狭义的网络编程范畴。在发送和接收数据时,大部分的程序设计语言都设计了专门的API实现这些功能,程序员只需要调用即可。 URL(统一资源定位符),俗称为网页地址。表示为互联网上的资源,如网页或者FTP地址。 Java是如处理URL的。URL可以分为如下几个部分。
2017-12-09 01:51:10 396
原创 java基础-new String(byte[] b, int n, int m)
String item = new String(b, n, m)的用法,其中b为byte[]数组,n,m为int类型. 简单的来说就是byte数组b从下标为n开始前进m个下标的那一段数组变为字符串item。 例子:b={'1' ,'2', '3', '4', '5', '6', '7', '8'}; String item=new String(b,2,2)
2017-12-09 00:12:45 5689
原创 java基础-序列化与反序列化
1.Java序列化与反序列化Java序列化是指把Java对象转换为字节序列的过程;而Java反序列化是指把字节序列恢复为Java对象的过程。Java序列化的好处:其好处一是实现了数据的持久化,通过序列化可以把数据永久地保存到硬盘上(通常存放在文件里),二是,利用序列化实现远程通信,即在网络上传送对象的字节序列。2.实现序列化与反序列化的步骤1).要求: Serializable或Externali
2017-12-08 10:14:10 312
原创 java基础-泛型 枚举
一.泛型泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。1.泛型方法在调用时可以接收不同类型的参数。根据传递给泛型方法的参数类型,编译器适当地处理每一个方法调用。 下面是定义泛型方法的规则:所有泛型方法声明都有一个类型参数声明部分(由尖括号分隔),该类型参数声明部分在方法返回类型之前(在下面例子中的)。每一个类型参数声明部分包含一个或多个类型参数,参数间用逗号隔开。
2017-12-08 09:11:44 512
原创 java基础-集合类总结
由于数组具有固定的长度,用来存放基本类型,java使用类库提供了一套完整的容器类来解决这个问题,基本的类型有:List,Set,Map和Queue,称为集合类。在java.util包中,用来存放对象的引用。一.Collection接口Collection接口通常不能直接使用,但接口提供了增删以及管理数据库的方法。List和Set是继承了Collection接口,所以方法是通用的。 常用的方法:
2017-12-07 22:58:20 242
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人