
java
这昵称不错
- -
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
springmvc请求参数获取的几种方法
1、直接把表单的参数写在Controller相应的方法的形参中,适用于get方式提交,不适用于post方式提交。 /** * 1.直接把表单的参数写在Controller相应的方法的形参中 * @param username * @param password * @return */ @RequestMapping("转载 2017-07-25 13:13:35 · 308 阅读 · 0 评论 -
使用Java开发高性能网站需要关注的那些事儿
近期各家IT媒体举办的业内技术大会让很多网站都在披露自己的技术内幕与同行们分享,大到facebook,百度,小到刚起步的网站。facebook,百度之类的大型网站采用的技术和超凡的处理能力的确给人耳目一新的感觉,但并不是每个网站都是像facebook,百度 有上亿的用户访问流量,有海量的数据需要存储,需要使用到mapreduce/并行计算,HBase/列存储这些技术不可。技术手段始终是运营的支撑,转载 2017-07-11 16:01:51 · 286 阅读 · 0 评论 -
前后端解耦 前后端分离
前戏前后端分离已成为互联网项目开发的业界标准使用方式,通过nginx+tomcat的方式(也可以中间加一个nodejs)有效的进行解耦,并且前后端分离会为以后的大型分布式架构、弹性计算架构、微服务架构、多端化服务(多种客户端,例如:浏览器,车载终端,安卓,IOS等等)打下坚实的基础。这个步骤是系统架构从猿进化成人的必经之路。核心思想是前端ht转载 2017-07-11 14:48:10 · 2882 阅读 · 0 评论 -
锁的优化和注意事项
摘要: 本系列基于炼数成金课程,为了更好的学习,做了系列的记录。 本文主要介绍: 1. 锁优化的思路和方法 2. 虚拟机内的锁优化 3. 一个错误使用锁的案例 4. ThreadLocal及其源码分析1. 锁优化的思路和方法在[高并发Java 一] 前言中有提到并发的级别。一旦用到锁,就说明这是阻塞式的,所以在并发度上一般来说都会比无锁的情况低一点。这里提到的锁优化,是指在转载 2017-07-11 14:41:37 · 258 阅读 · 0 评论 -
Apache/Tomcat/JBOSS/Jetty/Nginx区别 与选择
总结:Apache/Tomcat/JBOSS/Nginx区别 .1、Apache是Web服务器,Tomcat是应用(Java)服务器。Tomcat在中小型系统和并发访问用户不是很多的场合下被普遍使用。Apache支持静态页,Tomcat支持动态的。2、Jetty:Tomcat内核作为其Servlet容器引擎,并加以审核和调优.大中型系统可以应用。能够提供数据库连接池服务,还支持其他 Web转载 2017-07-13 10:21:09 · 2745 阅读 · 0 评论 -
Java构造器和方法的区别
摘要要学习Java,你必须理解构造器。因为构造器可以提供许多特殊的方法,这个对于初学者经常混淆。但是,构造器和方法又有很多重要的区别。原作者:Robert Nielsen 原站:www.javaworld.com 我们说构造器是一种方法,就象讲澳大利亚的鸭嘴兽是一种哺育动物。(按:老外喜欢打比喻,我也就照着翻译)。要理解鸭嘴兽,那么先必须理解它和其他哺育动物的区别。同样地,要理解构转载 2017-07-01 20:55:09 · 597 阅读 · 0 评论 -
Java继承知识总结
Java中的继承作为Java面向对象三大特性之一,在知识点上而言,还是很多的。现做出如下总结:1. 继承的概念:继承在本职上是特殊——一般的关系,即常说的is-a关系。子类继承父类,表明子类是一种特殊的父类,并且具有父类所不具有的一些属性或方法。 2. 继承中的初始化顺序:从类的结构上而言,其内部可以有如下四种常见形态:属性(包括类属性和实例属性)、转载 2017-07-01 19:24:25 · 279 阅读 · 0 评论 -
Java总结篇系列:Java泛型
一. 泛型概念的提出(为什么需要泛型)?首先,我们看下下面这段简短的代码: 1 public class GenericTest { 2 3 public static void main(String[] args) { 4 List list = new ArrayList(); 5 list.add("qqyumidi")转载 2017-07-01 19:09:20 · 176 阅读 · 0 评论 -
java中重载与重写的区别
首先我们来讲讲:重载(Overloading) (1) 方法重载是让类以统一的方式处理不同类型数据的一种手段。多个同名函数同时存在,具有不同的参数个数/类型。重载Overloading是一个类中多态性的一种表现。 (2) Java的方法重载,就是在类中可以创建多个方法,它们具有相同的名字,但具有不同的参数和不同的定义。调用方法时通过传递给它们的不转载 2017-07-01 18:09:41 · 188 阅读 · 0 评论 -
java并发-独占锁与共享锁
1 锁的独占与共享 Java并发包提供的加锁模式分为独占锁和共享锁,独占锁模式下,每次只能有一个线程能持有锁,ReentrantLock就是以独占方式实现的互斥锁。共享锁,则允许多个线程同时获取锁,并发访问 共享资源,如:ReadWriteLock。AQS的内部类Node定义了两个常量SHARED和EXCLUSIVE,他们分别标识 AQS队列中等待线程的锁获取模式。转载 2017-07-11 12:48:09 · 574 阅读 · 0 评论 -
Java高并发,如何解决,什么方式解决
对于我们开发的网站,如果网站的访问量非常大的话,那么我们就需要考虑相关的并发访问问题了。而并发问题是绝大部分的程序员头疼的问题,但话又说回来了,既然逃避不掉,那我们就坦然面对吧~今天就让我们一起来研究一下常见的并发和同步吧。为了更好的理解并发和同步,我们需要先明白两个重要的概念:同步和异步 1、同步和异步的区别和联系 所谓同步,可以理解为在执行完一个函数或方转载 2017-07-11 11:47:34 · 251 阅读 · 0 评论 -
Spring + iBATIS完整示例
来源:http://blog.youkuaiyun.com/randyjiawenjie/article/details/7529314最近研究了一下spring + iBATIS。发现看别人的例子是一回事,自己写一个完整的应用又是另外一回事。自己受够了网上贴的一知半解的代码。iBATIS是一个持久化框架,封面了sql过程,虽然sql语句需要自己写。另外,我觉得对于初学者来说,转载 2017-06-26 10:53:44 · 4346 阅读 · 0 评论 -
java.lang.IllegalArgumentException: No SqlMapClient specified 异常解决方案
java.lang.IllegalArgumentException: No SqlMapClient specified at org.springframework.util.Assert.notNull(Assert.java:112) at org.springframework.orm.ibatis.SqlMapClientTemplate.execute(SqlMa原创 2017-06-26 10:56:39 · 4954 阅读 · 0 评论 -
SpringMVC 开发接口
上篇文章讲解了SpringMVC 入门,这篇文章使用SpringMVC 来开发接口。记得之前有一篇文章 java web开发(二) 接口开发,是使用Servlet开发的接口。如果你还未了解,可以先看看这篇文章。好了,我们进入主题。 在开始这篇文章之前,请先阅读请参考java web开发(二) 接口开发 这篇文章。一、搭建环境。这一步骤 请参考上篇文章, SpringMVC转载 2017-07-25 13:12:39 · 2674 阅读 · 0 评论 -
springmvc 配置多视图(jsp,freemarker,HTML等)
SpringMVC 的 Controller 可以返回各种各样的视图。比如 JSP, JSON, Velocity, FreeMarker, XML, PDF, Excel, 还有Html字符流 等等。那它们该如何的进行处理的呢?这里就涉及到 各种视图(View)对应的各种视图解析器(ViewResolver). 基本上上面说的每一种视图就对应用一种视图解析器来处理。基本上各种视图解析器大致上可以转载 2017-07-25 11:24:42 · 475 阅读 · 0 评论 -
学习SpringMVC
前言: 时隔十二年,中国女排最终过关斩将,用3:1的成绩证明了自己的实力,霸气夺冠,为中国赢得了一枚意义非常的金牌。这是一次全民的狂欢,一场视听盛宴,带给我们不仅是熠熠生辉的金牌,更传递出的是一种女排精神。 每每得分的时候,总能看到球员们歇斯底里的咆哮和欢呼,因为每一分都来的太不容易。 其实码农也是如此,每每解决掉一个bug的时候,内心的舒畅和激动,好似经历了没有尽头转载 2017-07-25 11:23:45 · 376 阅读 · 0 评论 -
使用Nginx实现反向代理
一、代理服务器1、什么是代理服务器代理服务器,客户机在发送请求时,不会直接发送给目的主机,而是先发送给代理服务器,代理服务接受客户机请求之后,再向主机发出,并接收目的主机返回的数据,存放在代理服务器的硬盘中,再发送给客户机。2、为什么要使用代理服务器1)提高访问速度 由于目标主机返回的数据会存放在代理服务器的硬盘中,因此下一次客户再访问相同转载 2017-07-18 11:59:00 · 416 阅读 · 0 评论 -
MQTT 协议解析,java使用
MQTT简介(http://mqtt.org/)MQ 遥测传输 (MQTT) 是轻量级基于代理的发布/订阅的消息传输协议,设计思想是开放、简单、轻量、易于实现。这些特点使它适用于受限环境。该协议的特点有:使用发布/订阅消息模式,提供一对多的消息发布,解除应用程序耦合。对负载内容屏蔽的消息传输。使用 TCP/IP 提供网络连接。小型传输,开销很小(固定长度的头部是 2 字节),协转载 2017-07-13 11:41:24 · 6411 阅读 · 0 评论 -
JETTY与TOMCAT
Jetty基本架构Jetty目前的是一个比较被看好的 Servlet 引擎,它的架构比较简单,也是一个可扩展性和非常灵活的应用服务器。它有一个基本数据模型,这个数据模型就是 Handler(处理器),所有可以被扩展的组件都可以作为一个 Handler,添加到 Server 中,Jetty 就是帮你管理这些 Handler。Jetty 中另外一个比不可少的组件是 Connecto转载 2017-07-13 10:32:26 · 300 阅读 · 0 评论 -
spring定时任务
spring提供了定时任务功能,不需要第三方jar包支持,spring足以。代码:[java] view plain copypackage com.inth.product.web.task; import java.util.Date; import org.springframework.beans.转载 2017-07-05 21:45:48 · 206 阅读 · 0 评论 -
Spring的AOP原理
AOP是什么?软件工程有一个基本原则叫做“关注点分离”(Concern Separation),通俗的理解就是不同的问题交给不同的部分去解决,每部分专注于解决自己的问题。这年头互联网也天天强调要专注嘛!这其实也是一种“分治”或者“分类”的思想,人解决复杂问题的能力是有限的,所以为了控制复杂性,我们解决问题时通常都要对问题进行拆解,拆解的同时建立各部分之间的关系,各个击破之后整个问题转载 2017-06-26 17:21:06 · 335 阅读 · 0 评论 -
Netty实现原理浅析
来源:http://www.importnew.com/15656.htmlNetty是JBoss出品的高效的Java NIO开发框架,关于其使用,可参考我的另一篇文章 netty使用初步。本文将主要分析Netty实现方面的东西,由于精力有限,本人并没有对其源码做了极细致的研 究。如果下面的内容有错误或不严谨的地方,也请指正和谅解。对于Netty使用者来说,Netty提供了转载 2017-06-26 14:54:10 · 1595 阅读 · 0 评论 -
Java NIO浅析
来源:https://zhuanlan.zhihu.com/p/23488863NIO(Non-blocking I/O,在Java领域,也称为New I/O),是一种同步非阻塞的I/O模型,也是I/O多路复用的基础,已经被越来越多地应用到大型应用服务器,成为解决高并发与大量连接、I/O处理问题的有效方式。那么NIO的本质是什么样的呢?它是怎样与事件模型结合来解放线程、转载 2017-06-26 14:53:05 · 254 阅读 · 0 评论 -
Dubbo详细介绍与安装使用过程
1 Dubbo介绍1.1 dubbox简介随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进。单一应用架构 当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本。 此时,用于简化增删改查工作量的 数据访问框架(ORM) 是关键。转载 2017-07-11 11:07:30 · 527 阅读 · 0 评论 -
简单的java Hadoop MapReduce程序(计算平均成绩)从打包到提交及运行
程序源码import java.io.IOException;import java.util.Iterator;import java.util.StringTokenizer;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.Path;import org.apache.hadoop转载 2017-07-11 10:29:02 · 656 阅读 · 0 评论 -
MyBatis简单使用的demo
MyBatis简单使用的demoMyBatis 是一个java持久层框架,类似hibernate,但是比hibernate轻,功能没hibernate多,关于谁好谁坏,一直有人再争论,应该是各有各的好处,大家可以自行百度其优缺点。本章内容MyBatis 配置MyBatis Java domeMyBatis 配置-下载M转载 2017-04-30 17:37:54 · 446 阅读 · 0 评论 -
Mybatis实现数据的增删改查(CRUD)
什么是 MyBatis?MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架。 MyBatis 消除了几乎所有的 JDBC 代码和参数的手工设置以及对结果集的检索。MyBatis 可以使用简单的XML 或注解用于配置和原始映射,将接口和 Java 的 POJO(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。MyBatis下载转载 2017-04-30 16:34:41 · 424 阅读 · 0 评论 -
struts2:图解action之HelloWorld示范(从action转到JSP)
http://www.cnblogs.com/nayitian/p/3429071.html虽然Struts 2.x的Action在技术上不需要实现任何接口或继承任何类型,但是,大多情况下我们都会出于方便的原因,使Action类继承com.opensymphony.xwork2.ActionSupport类,并重载(Override)此类里的String execute()方法转载 2017-03-26 22:09:28 · 496 阅读 · 0 评论 -
Struts2的配置 struts.xml Action详解
在学习struts的时候,我们一定要掌握struts2的工作原理。只有当我们明确了在struts2框架的内部架构的实现过程,在配置整个struts 的框架时,可以很好的进行逻辑上的配置。接下来我就先简单的讲解下struts2的框架工作原理:一、struts2的工作原理1、客户端初始化一个指向Servlet容器(例如Tomcat)的请求;2转载 2017-04-01 17:36:43 · 25803 阅读 · 0 评论 -
JNI 学习笔记
1,先把c语言的编译环境搭建好,windows下这里使用mingw1,mingw具体配置配置环境变量: 打开:“我的电脑->属性->高级->环境变量->系统变量”编辑如下系统变量: 变量名 变量值转载 2017-03-24 11:23:13 · 309 阅读 · 0 评论 -
Jboss的作用是什么?
Boss是全世界开发者共同努力的成果,一个基于J2EE的开放源代码的应用服务器。 因为JBoss代码遵循LGPL许可,你可以在任何商业应用中免费使用它,而不用支付费用。 2006年,Jboss公司(http://jboss.org)被Redhat公司(http://redhat.com)收购。 JBoss是一个管理EJB的容器和服务器,支持EJB 1.1、EJB 2.0和E转载 2017-03-24 09:48:43 · 3649 阅读 · 0 评论 -
Struts2基础学习总结
文章来源:http://www.cnblogs.com/jbelial/archive/2012/05/10/2486886.htmlStruts 2是在WebWork2基础发展而来的。注意:struts 2和struts 1在代码风格上几乎不一样。Struts 2 相比Struts 1的优点:1、在软件设计上Struts 2 没有像Struts 1那样跟Servl转载 2017-04-09 18:43:09 · 263 阅读 · 0 评论 -
JVM介绍
1. 什么是JVM?JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机包括一套字节码指令集、一组寄存器、一个栈、一个垃圾回收堆和一个存储方法域。 JVM屏蔽了与具体操作系统平台相关的信息,使Java程序只需生成在Java虚拟机上运行的目标代码转载 2017-03-23 17:23:28 · 213 阅读 · 0 评论 -
iBatis简单入门教程
http://www.cnblogs.com/ycxyyzw/archive/2012/10/13/2722567.htmliBatis 简介:iBatis 是apache 的一个开源项目,一个O/R Mapping 解决方案,iBatis 最大的特点就是小巧,上手很快。如果不需要太多复杂的功能,iBatis 是能够满足你的要求又足够灵活的最简单的解决方案,现在的iBatis转载 2017-03-28 17:31:41 · 331 阅读 · 0 评论 -
JNA调用DLL
JNA(Java Native Access)框架是一个开源的Java框架,是SUN公司主导开发的,建立在经典的JNI的基础之上的一个框架。非常强大、易用,功能上类似与.NET的P/Invoke。你只需要下载一个jar包,就可以使用JNA的强大功能方便地调用动态链接库中的C函数。下载jna.jar到JNA官网下载最新版本的“jna.jar”,当前的最新版是3.4.0。链接如转载 2017-03-27 17:05:05 · 526 阅读 · 0 评论 -
反射机制 有什么用
反射非常强大,但是学习了之后,会不知道该如何使用,反而觉得还不如直接调用方法来的直接和方便。 通常来说,需要在学习了Spring 的依赖注入,反转控制之后,才会对反射有更好的理解,但是刚学到这里的同学,不一定接触了Spring,所以在这里举两个例子,来演示一下反射的一种实际运用。 步骤 1 : 业务类 步骤 2 : 非反射方式转载 2017-04-30 23:35:31 · 628 阅读 · 0 评论 -
再探java基础——throw与throws
文章来源:http://blog.youkuaiyun.com/luoweifu/article/details/10721543异常处理机制异常处理是对可能出现的异常进行处理,以防止程序遇到异常时被卡死,处于一直等待,或死循环。异常有两个过程,一个是抛出异常;一个是捕捉异常。抛出异常抛出异常有三种形式,一是throw,一个throws,还有一种系统自动转载 2017-05-01 09:28:50 · 251 阅读 · 0 评论 -
看懂Hadoop集群原理与实现方式
这篇文章将会逐步介绍 Hadoop 集群的实现原理以及Hadoop集群的拓扑结构。并让大家通过拓扑图的形式直观的了解 Hadoop 集群是如何搭建、运行以及各个节点之间如何相互调用、每个节点是如何工作以及各个节点的作用是什么。明白这一点将会对学习 Hadoop 有很大的帮助。首先,我们开始了解 Hadoop 的基础知识,以及 Hadoop 集群的工作原理。 在Hadoo转载 2017-07-11 10:22:13 · 1445 阅读 · 0 评论 -
Java中的值传递和地址传递(传值、传引用)
Java传递参数有两种方式:值传递和引用传递值传递是传递数据:如基本数据类型都是值传递引用传递是把形参和实参的指针指向了堆中的同一对象,对象的引用和数组的引用。实参,Java的基本数据类型,如int,double等在函数的参数传递时,传递的是副本。String也属于这一范畴。形参,而如果是对象,则传递的是引用。作者转载 2017-06-30 22:54:57 · 12669 阅读 · 0 评论 -
Netty源码阅读
Netty是由JBOSS提供的一个java开源框架。Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序。本文讲会对Netty服务启动的过程进行分析,主要关注启动的调用过程,从这里面进一步理解Netty的线程模型,以及Reactor模式。这是我画的一个Netty启动过程中使用到的主要的类的概要类图,当然是用到的类比这个多得多,转载 2017-06-09 16:19:53 · 1488 阅读 · 0 评论