Mysql优化(一)—Sql语句 第一篇是最基础,同样也是最重要的Sql语句的优化。就和炒菜一样,假如我们的原材料,例如青菜或者肉是坏了的,即便我们拥有手艺一流的厨子,品质保证的厨具,也不可能做出美味的佳肴。所以,不仅要有好厨师好厨具,更要有好原料!而我们今天要讲的就是美味佳肴的基本:原材料,也就是Sql语句! 常见的Sql语句优化主要有以下几种: 1. 避免SELECT * 查询; 一方面,
MySql优化 优化MYSQL数据库是DBA和开发人员的必备技能。MYSQL优化一方面是找出系统瓶颈,提高数据库整体性能;另一方面提高用户操作响应的速度;同时还可以节省系统资源,以便系统可以提供更大负荷的服务。本系列文章主要是一步一步,深入浅出的详细介绍Mysql的优化过程。 Mysql优化(一)--Sql语句 Mysql优化(二)--索引 Mysql优化(三)--慢查询日志
Java反射机制 开篇必然要先说一说,什么是java反射了。标准的来说,反射是指程序可以访问、检测和修改自身状态和行为的一种能力。简单的来说,java反射机制其实就是在运行时获取类的信息,属性或方法等,并利用这些信息做一些我们想做的事情。 大家有注意到上面一个非常重要的词--“运行时”。顾名思义,就是当程序运行的时候。这个词也就说明了我们为什么要使用反射机制。java语言本身不是一种动态语言,它在编译
Java多线程全面解析 在说Java多线程之前我觉得有必要先来认识一下进程、线程的概念。 一般来说,当运行一个应用程序的时候就启动了一个进程。但是需要注意的是进程是一个静态概念,是不可以执行的。而线程则是一个程序中不同的执行路径,是在进程中执行的一个任务。线程需要较少的资源来创建和驻留在进程中,并且可以共享进程中的资源。知道了什么是进程和线程,也就必须要了解一下并发执行了,其实并发执行就是多个线程同时
JSON(二):服务器端和客户端的JSON处理 上面介绍了如何用 JSON表示数据,接下来,我们还要解决如何在服务器端生成 JSON 格式的数据以便发送到客户端,以及客户端如何使用 JavaScript 处理 JSON 格式的数据。 先来看看服务器如何输出JSON格式的数据吧。 以 Java 为例,我们将演示将一个Java 对象编码为 JSON 格式的文本。将 String 对象编码为 JSON格式时,只需处理好特殊字符即可
JSON(一):基本语法 JSON 即 JavaScriptObject Natation,它是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互。JSON 也是基于纯文本的数据格式。由于JSON 天生是为 JavaScript 准备的,因此,JSON 的数据格式非常简单,您可以用 JSON 传输一个简单的String,Number,Boolean,也可以传输一个数组,或者一个复杂的 Objec
初步学习:VO,BO和PO 刚到这个公司前几天,被安排的看文档,主要是对现在这个项目的技术选型以及框架的基本了解。用的也是现在公司常用的框架Spring,struts和MyBatis。了解起来感觉还是挺简单的,不过被一堆VO,BO和PO给搞得不清不楚的,现在也开发了几条线了,有了一些初步的了解,先总结总结。 PO:persistantobject持久对象。在o/r映射的时候出现的概念,如果没有o/r映射,没
DWZ(三):常用组件了解 上篇博客中已经介绍了DWZ一些UI组件的使用,接下来再给大家介绍一些。仅供参考。具体使用还需要在自己的项目中对应。 CSS Table原生 html + CSS 实现,无 js 处理效果、最简单、最基本、性能最高的 table。在 table 标签上增加 class="list", table 外面包一个实现 table 固定高度 Table 扩展在 tab
DWZ(二):常用组件了解 上篇博客中我们大致明白了DWZ框架,以及它的一些优势,接下来的这篇博客是详细介绍了DWZ框架中一些常用组件的使用。 常用组件列表: Ajax 链接扩展 示例: 提示窗口 当前 navTab 中链接 ajax post 扩展 删除 或删除
DWZ(一):框架初了解 DWZ富客户端框架(jQuery RIAframework),是中国人自己开发的基于jQuery实现的Ajax RIA开源框架。 DWZ富客户端框架设计目标是简单实用、扩展方便、快速开发、RIA思路、轻量级。 DWZ框架支持用HTML扩展的方式来代替JavaScript代码,只要懂HTML语法,再参考DWZ使用手册就可以做Ajax开发。 开发人员不写JavaScript的情况
AOP之代理模式(三) JDK自从1.3版本开始,就引入了动态代理,JDK的动态代理用起来非常简单,但是它有一个限制,就是使用动态代理的对象必须实现一个或多个接口 。如果想代理没有实现接口的类可以使用CGLIB包。先来看看GCLIB的具体使用,然后再对应代码深入理解。 在使用CGLIB时需引入cglib-nodep-2.1_3.jar包。 先来一个基础类,注意,这里没有对应的接口。pub
AOP之代理模式(二) 上篇博文介绍的静态代理有一个最主要的缺点:每个业务类,必须有一个代理类。这样在程序中就会出现很多个代理类,这样的代码还是有坏味道的。这篇文章就为了解决这个问题而来--JDK动态代理。 先来看一看最基本的业务接口和业务类:/** * 业务接口类 * @author sunliduan * */public interface Greeting { void sa
AOP之代理模式(一) AOP,为Aspect OrientedProgramming的缩写,意为:面向切面,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。 说了一堆很官方的话,大家可能不是特别明白,不过这些算是我们实践的理论寄出去,还是很有必要知道的,但是现在不必
JPA(四):EntityManager接口 JPA API的核心在于EntityManager的操作,EntityManager接口虽然小但是却非常简单,而且其功能非常完整,提供有效的持久化基础结构。在某种程度上,EntityManager是面向对象和数据库关系领域之间的桥梁。如下图所示: 当我们要创建域实体时,EntityManager把实体转换成新的数据库记录;当我们要更新实体时,EntityManager将找到对应实体的关
JPA(三):JPA+Hibernate 基础学习 在该系列的第一篇文章中,我们已经提到JPA和Hibernate。下图是两者在系统架构中的作用: 由以上图片我们可以得出两个结论:首先JPA的主要作用就是持久化操作;其次JPA只是一种规范,它需要一种实现,正如上图显示的,Hibernate、oPenJPA等等。简单些,可以说JPA只是一套接口,本身不能完成任何事情。 而这篇博文的主要内容就是对JP
JPA(二):EntityManager 上述我们知道什么是JPA了,接下来这篇文章就主要为大家介绍JPA的一个重要内容:EntityManager。任何对实体的操作都是通过它来完成的。 先来说说什么是EntityManager。顾名思义,EntityManager是负责管理Entity的对象。它是Java实体对象与数据库交互的中介,它负责管理一组对应的实体,包括这组实体的CRUD操作等。同时,EntityManager也就
JPA(一):初步了解 说到JPA,大家可能没有Hibernate听起来那么熟悉,那我就通过一张图让大家了解一下,什么是JPA。下图是JPA在系统架构中的作用: 由以上图片我们可以得出两个结论:首先JPA的主要作用就是持久化操作;其次JPA只是一种规范,它需要一种实现,正如上图显示的,Hibernate、oPenJPA等等。简单些,可以说JPA只是一套接口,本身不能完成任何事情。
2014年终总结:缅怀过去,祝福自己 日子在弹指一挥间就毫无声息的流逝,就在此时需要回头总结之际才猛然间意识到日子的匆匆。绚烂的烟花和震天的爆竹声过后,2014年已然成为过去,2015年已经来临。我满怀信心与期待的迎接我的2015,却也需要满怀感恩与思念的回忆我过去的2014。2014年对我来说,是鼓励与幸福的一年,不管是在学习上还是在生活中。
SSH(三)资源分类和日志管理 上篇博文已经分别介绍了如何搭建SSH开发环境以及对SSH三个框架的整合。整合完成之后,我们基本上就可以正常的开始一个基于SSH框架开发的项目了。本篇博文介绍的资源分类和日志管理都是一些锦上添花的配置。利用这些,来清晰我们的思路,便利我们的编程。 先来说说资源分类吧。这里的资源分类是指对项目中代码或者配置文件等的一个分类管理。以下截图中的分类只是参考,主要是对于资源分类管理思想上的
SSH(二)框架整合 上篇博文已经分别介绍了如何搭建SSH开发环境,接下来这一篇博客就来说说,如何将独立的三个框架整合到一起,以及为什么要将它们整合到一起。三、整合 1.struts和spring整合 Struts2与Spring的集成要用到Spring插件包struts2-spring-plugin-x-x-x.jar,这个包是同Struts2一起发布的。Spring插件