自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Java那点事 | 学习●思考●分享 | Java技术交流QQ群:83753349

当你的才华还撑不起你的野心时,那你就应该静下心来学习。岂能尽如人意,但求无愧我心; 努力不一定会成功,但是放弃一定会失败; 好好学习,天天向上,不求与人相比,但求超越自己; 知其然,还要知其所以然; 天道酬勤; 好记忆不如烂笔头,有好的心得 、想法、工作

  • 博客(41)
  • 收藏
  • 关注

转载 [JSON]2017年最新县及县以上行政区划代码

2017年这篇,是JSON格式,完全通过js实现,这个数据可以方便在三级联动中使用。数据来源地址:http://www.stats.gov.cn/tjsj/tjbz/xzqhdm/201703/t20170310_1471429.html从该页提供的数据来看,通过缩进实现了层级关系(虽然码值有关联,这里没使用)。将原始数据通过notepad++等工具做基本处理,处理为一个j

2017-07-19 21:12:14 1070

转载 Oracle中通过substr和instr实现截取指定字符之间的字符串:

摘要:在开发项目的过程中遇到了这样的一个问题,就是从远程服务器取到的数据中是由一段规则的字符串组成的,但是你想要的还不是这段字符串,是其中的一段字符串,那就的使用Oracle强大的函数了,我的问题是这样的,我要把如下所示红框内的那段字符串截取出来,就是说截取第一个"-"和第二个“-”之间的字符串出来:一:如图所示:二:新建数据表:[sql] view p

2017-07-14 08:28:01 534

转载 Oracle面试题(基础篇)

1. Oracle跟SQL Server 2005的区别? 宏观上: 1). 最大的区别在于平台,oracle可以运行在不同的平台上,sql server只能运行在windows平台上,由于windows平台的稳定性和安全性影响了sql server的稳定性和安全性 2). oracle使用的脚本语言为PL-SQL,而sql server使用的脚本为T-SQL 微观上: 从数据

2017-07-14 07:21:00 28974

转载 Oracle数据库分页的三种方法

-- 不能对ROWNUM使用>(大于1的数值)、>=(大于或等于1的数值)、=(大于或等于1的数值),否则无结果-- 所以直接用只能从1开始-- rownum >10 没有记录,因为第一条不满足去掉的话,第二条的rownum又成了1,所以永远没有满足条件的记录。select * from student where rownum>=1;--如果想要用rownum不从1开始,需按下面

2017-07-14 07:18:51 406

转载 webservice面试题

一 什么是webservice(用你的话描述webservice)?在什么时候用webservice(webservice能给我们解决什么样的问题)?一句话概括:WebService是一种跨编程语言和跨操作系统平台的远程调用技术。所谓跨编程语言和跨操作平台,就是说服务端程序采用Java编写,客户端程序则可以采用其他编程语言编写,反之亦然!跨操作系统平台则是指服务端程序和客户端程序可以在不同

2017-07-12 07:38:47 4586

转载 java中字符串数组和字符串之间的转换

字符串数组转为字符串:1.如果是 “字符串数组” 转 “字符串”,只能通过循环,没有其它方法 String[] str = {"abc", "bcd", "def"};StringBuffer sb = new StringBuffer();for(int i = 0; i sb. append(str[i]);}String s = sb.toString();2.如果是 “字符数组” 转

2017-07-12 06:38:30 332

转载 jvm 堆内存 栈内存 大小设置 查看堆大小

4种方式配置不同作用域的jvm的堆栈内存!1、Eclise 中设置jvm内存: 修改eclipse的配置文件,对所有工程都起作用     修改eclipse根目录下的eclipse.ini文件     -vmargs  //虚拟机设置     -Xms40m //初始内存     -Xmx256m //最大内存     -Xmn16m //最小内存

2017-07-10 20:28:15 21917 2

转载 Redis常用数据类型介绍、使用场景及其操作命令

Redis目前支持5种数据类型,分别是:String(字符串)List(列表)Hash(字典)Set(集合)Sorted Set(有序集合)下面就分别介绍这五种数据类型及其相应的操作命令。1. String(字符串)String是简单的 key-value 键值对,value 不仅可以是 String,也可以是数字。String在redis内部存储默认就是一个字符串,被re

2017-07-10 17:49:34 602

转载 35 个 Java 代码性能优化总结

前言代码优化,一个很重要的课题。可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于代码的运行效率有什么影响呢?这个问题我是这么考虑的,就像大海里面的鲸鱼一样,它吃一条小虾米有用吗?没用,但是,吃的小虾米一多之后,鲸鱼就被喂饱了。代码优化也是一样,如果项目着眼于尽快无BUG上线,那么此时可以抓大放小,代码的细节可以不精打细磨;但是如果有足够的时间开发、维护代码,这时候就必须考虑每个可

2017-07-09 08:40:19 299

转载 JAVA中堆栈和内存分配原理

1、栈、堆1.寄存器:最快的存储区, 由编译器根据需求进行分配,我们在程序中无法控制.2. 栈:存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new 出来的对象)或者常量池中(字符串常量对象存放在常量池中。)3. 堆:存放所有new出来的对象。4. 静态域:存放静态成员(static定义的)5. 常量池:存放字符串常量和基本类型常量(public s

2017-07-08 19:11:32 134

转载 路径中 斜杠/和反斜杠\ 的区别

Unix使用斜杆/ 作为路径分隔符,而web应用最新使用在Unix系统上面,所以目前所有的网络地址都采用 斜杆/ 作为分隔符。Windows由于使用 斜杆/ 作为DOS命令提示符的参数标志了,为了不混淆,所以采用 反斜杠\ 作为路径分隔符。所以目前windows系统上的文件浏览器都是用 反斜杠\ 作为路径分隔符。随着发展,DOS系统已经被淘汰了,命令提示符也用的很少,斜杆和反斜杠在大多数情况下

2017-07-08 18:09:13 241 1

转载 Java修改JVM内存大小整理。(java heap space 解决方案)

JAVA程序启动时JVM都会分配一个初始内存和最大内存给这个应用程序。这个初始内存和最大内存在一定程度都会影响程序的性能;Tomcat默认可以使用的内存为128MB,在较大型的应用项目中,这点内存是不够的,需要调大。有以下几种方法可以选用:第一种 环境myeclipse修改在菜单window->preferecces.在JDK对话框中输入-Xms512m -Xmx1024m这个参数

2017-07-08 18:08:34 1654

转载 垃圾回收 堆内存 Xms Xmx PermSize MaxPermSize 区别

Eclipse崩溃,错误提示:MyEclipse has detected that less than 5% of the 64MB of Perm Gen (Non-heap memory) space remains. It is strongly recommendedthat you exit and restart MyEclipse with new virtual ma

2017-07-08 17:54:29 347

转载 java面试中的智力题

智力题,每个正式的笔试、面试都会出,而且在面大企业的时候必然会问到,笔者曾在很多面试中,都被问到过,不过答得都不是很好,因为时间很短,加上我们有时候过于紧张,所以做出这类问题,还是有一定的难度,从这篇文章中我会总结一些常见的智力题,希望各位读者能在本章所列的题中找出做这类题的方法,克服面试中的难题!1、农民分金条问题题目:你让农民为你工作7天,给他的回报是一根金条。金条平分成相连的7段,你

2017-07-08 09:33:39 542

转载 Oracle数据库面试题

1. Oracle跟SQL Server 2005的区别? 宏观上: 1). 最大的区别在于平台,oracle可以运行在不同的平台上,sql server只能运行在windows平台上,由于windows平台的稳定性和安全性影响了sql server的稳定性和安全性 2). oracle使用的脚本语言为PL-SQL,而sql server使用的脚本为T-SQL 微观上: 从数据类型

2017-07-07 23:05:56 400

转载 40个Java多线程问题总结

前言Java多线程分类中写了21篇多线程的文章,21篇文章的内容很多,个人认为,学习,内容越多、越杂的知识,越需要进行深刻的总结,这样才能记忆深刻,将知识变成自己的。这篇文章主要是对多线程的问题进行总结的,因此罗列了40个多线程的问题。这些多线程的问题,有些来源于各大网站、有些来源于自己的思考。可能有些问题网上有、可能有些问题对应的答案也有、也可能有些各位网友也都看过,但是本文写作的重心就

2017-07-06 23:58:25 235

转载 69道Spring面试题和答案

Spring 概述1. 什么是spring?Spring 是个java企业级应用的开源开发框架。Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用。Spring 框架目标是简化Java企业级应用开发,并通过POJO为基础的编程模型促进良好的编程习惯。2. 使用Spring框架的好处是什么?轻量:Spring 是轻量的,基本的版本大约2M

2017-07-06 23:57:16 181

转载 关于Oracle数据库优化的几点总结

个人理解,数据库性能最关键的因素在于IO,因为操作内存是快速的,但是读写磁盘是速度很慢的,优化数据库最关键的问题在于减少磁盘的IO,就个 人理解应该分为物理的和逻辑的优化, 物理的是指oracle产品本身的一些优化,逻辑优化是指应用程序级别的优化物理优化的一些原则:         1)Oracle的运行环境(网络,硬件等)  2)使用合适的优化器  3)合理配置oracle实例参数

2017-07-06 22:16:25 199

转载 MySQL与Oracle的区别

1.  Oracle是大型数据库而Mysql是中小型数据库,Oracle市场占有率达40%,Mysql只有20%左右,同时Mysql是开源的而Oracle价格非常高。2. Oracle支持大并发,大访问量,是OLTP最好的工具。3. 安装所用的空间差别也是很大的,Mysql安装完后才152M而Oracle有3G左右,且使用的时候Oracle占用特别大的内存空间和其他机器性能。4.Ora

2017-07-06 22:15:31 147

转载 比较常见的数据库SQL面试题以及答案

下面的SQL题目都是比较基础,比较常见的数据库SQL面试题,在技术面试环节虽然碰到相同题目的机会比较少,但解题的基本思路都是差不多的。下面是SQL面试题描述:Student(S#,Sname,Sage,Ssex) 学生表       S#:学号;Sname:学生姓名;Sage:学生年龄;Ssex:学生性别Course(C#,Cname,T#) 课程表                  

2017-07-06 07:45:26 2353

转载 单例模式的八种写法比较

单例模式是最常用到的设计模式之一,熟悉设计模式的朋友对单例模式都不会陌生。一般介绍单例模式的书籍都会提到 饿汉式 和 懒汉式 这两种实现方式。但是除了这两种方式,本文还会介绍其他几种实现单例的方式,让我们来一起看看吧。原文链接: http://tianweili.github.io/blog/2015/03/02/singleton-pattern/简介单例模式是一种常用的软件设计

2017-07-05 22:36:30 185

转载 volatile关键字解析

volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。volatile关键字虽然从字面上理解起来比较简单,但是要用好不是一件容易的事情。由于volatile关键字是与Java的内存模型有关的,因此在讲述volatile关键之前,我们先来了解

2017-07-03 11:17:07 112

转载 Java 中 final、finally 和 finalize 使用总结

1. final1.1 final 修饰变量final 用于修饰变量时表示该变量一旦被初始化就不可以再改变,这里的不可以再改变指的是,对于基本类型它们的值不能改变,对于对象变量它们的引用不可以改变,对于后者需要注意的是,只是引用不能改变,即指向初始化时的那个对象,对象中的属性等是可以改变的,例如我们有个 final 修饰的 ArrayList,那么这个变量只能是指向最开始初始化时的

2017-07-02 23:06:05 270

转载 【MyBatis学习15】MyBatis的逆向工程生成代码

1. 什么是逆向工程  mybatis的一个主要的特点就是需要程序员自己编写sql,那么如果表太多的话,难免会很麻烦,所以mybatis官方提供了一个逆向工程,可以针对单表自动生成mybatis执行所需要的代码(包括mapper.xml、mapper.Java、po..)。一般在开发中,常用的逆向工程方式是通过数据库的表生成代码。2. 使用逆向工程  使用mybatis的逆向工程,

2017-07-02 21:37:11 342

转载 【MyBatis学习14】MyBatis和Spring整合

前面十几篇博文总结了mybatis在开发中的相关技术,但在实际中都是和spring整合开发的,所以这里总结一下mybatis和spring的整合方法,并在整合后进行测试。1. 整合的环境  这都是老掉牙的问题了,不管是开发还是整合,首先环境肯定得有,环境嘛,除了Java环境和开发环境外,那就是jar包咯,关于mybatis和spring整合的jar包,我已经上传到下载频道了==>传送门

2017-07-02 21:11:41 194

转载 【MyBatis学习13】MyBatis中的二级缓存

1. 二级缓存的原理  前面介绍了,mybatis中的二级缓存是mapper级别的缓存,值得注意的是,不同的mapper都有一个二级缓存,也就是说,不同的mapper之间的二级缓存是互不影响的。为了更加清楚的描述二级缓存,先来看一个示意图:    从图中可以看出:sqlSession1去查询用户id为1的用户信息,查询到用户信息会将查询数据存储到该UserMapper的二级

2017-07-02 21:09:51 188

转载 【MyBatis学习12】MyBatis中的一级缓存

缓存的作用是减轻数据库的压力,提高数据库的性能的。mybatis中提供了一级缓存和二级缓存,先来看一下两个缓存的示意图:    从图中可以看出:一级缓存是SqlSession级别的缓存。在操作数据库时需要构造sqlSession对象,在对象中有一个数据结构(HashMap)用于存储缓存数据。不同的sqlSession之间的缓存数据区域(HashMap)是互相不影响的。二级缓存是

2017-07-02 21:08:34 171

转载 【MyBatis学习11】MyBatis中的延迟加载

1. 什么是延迟加载  举个例子:如果查询订单并且关联查询用户信息。如果先查询订单信息即可满足要求,当我们需要查询用户信息时再查询用户信息。把对用户信息的按需去查询就是延迟加载。 所以延迟加载即先从单表查询、需要时再从关联表去关联查询,大大提高数据库性能,因为查询单表要比关联查询多张表速度要快。   我们来对比一下:关联查询:SELECT orders.*, user.userna

2017-07-02 21:07:32 135

转载 【MyBatis学习10】高级映射之多对多查询

本文来总结一下mybatis中的多对多映射,从第8节的文章中可以看出,用户表和商品表示多对多关系,它们两的多对多是通过订单项和订单明细这两张表所关联起来的,那么这一节主要来总结一下用户表和商品表之间的多对多映射。   首先在上一节的基础上继续写sql,SELECT orders.*, user.`username`, user.`sex`, user.`address`,

2017-07-02 21:03:46 234

转载 【MyBatis学习09】高级映射之一对多查询

上一篇博文总结了一下一对一的映射,本文主要总结一下一对多的映射,从上一篇文章中的映射关系图中可知,订单项和订单明细是一对多的关系,所以本文主要来查询订单表,然后关联订单明细表,这样就有一对多的问题出来了。   首先还是先写sql语句,在写sql语句的时候遵循两点:查询的主表是哪个? 订单表查询的关联表是哪个? 订单明细表  明确了主表和关联表,下面就可以写sql了,我们在上

2017-07-02 21:02:30 165

转载 【MyBatis学习08】高级映射之一对一查询

从这一篇博文开始,将总结一下mybatis中的几个高级映射,即一对一、一对多、多对多查询,这篇先总结一下mybatis中的一对一查询。   为了模拟这些需求,事先要建立几个表,不同的表之间将对应上面提到的不同的映射,为此,我建立4个表,如下:DROP TABLE IF EXISTS `items`;DROP TABLE IF EXISTS `orders`;DROP TABLE IF

2017-07-02 20:49:26 194

转载 【MyBatis学习07】动态sql

1. 动态sql  动态sql是mybatis中的一个核心,什么是动态sql?动态sql即对sql语句进行灵活操作,通过表达式进行判断,对sql进行灵活拼接、组装。就拿上一篇博文中对用户的综合查询一例来说:select * from user where user.sex = #{user.sex} and user.username like '%${user.username}%'11

2017-07-02 11:24:07 223

转载 【MyBatis学习06】输入映射和输出映射

在前面几篇博文的例子中也可以看到mybatis中输入映射和输出映射的身影,但是没有系统的总结一下,这篇博客主要对这两个东东做一个总结。我们知道mybatis中输入映射和输出映射可以是基本数据类型、hashmap或者pojo的包装类型,这里主要来总结一下pojo包装类型的使用,因为这个在开发中比较常用。1. 输入映射  输入映射,是在映射文件中通过para

2017-07-02 11:22:53 168

转载 【MyBatis学习05】SqlMapConfig.xml文件中的配置总结

经过上两篇博文的总结,对mybatis中的dao开发方法和流程基本掌握了,这一节主要来总结一下mybatis中的全局配置文件SqlMapConfig.xml在开发中的一些常用配置,首先看一下该全局配置文件中都有哪些可以配置的东西:配置内容作用用来加载属性文件用来设置全局参数用来设置类型的别名

2017-07-02 11:21:12 204

转载 【MyBatis学习04】mapper代理方法开发dao

上一篇博文总结了mybatis使用 原始dao的方法存在的一些弊端,我们肯定不会去用它,那么mybatis中该如何开发dao呢?如题所述,这篇博文主要来总结一下使用mapper代理的方法来开发dao的步骤。   使用mapper代理的方法来开发dao时,程序员只需要干两件事即可:需要编写mapper.xml映射文件需要编写mapper接口(相当于dao接口)  从做的工作来

2017-07-02 11:19:20 229

转载 【MyBatis学习03】原始dao开发方法及其弊端

上一篇博文总结了一下mybatis的入门,接下来就要开发dao方法了,这篇博文主要总结一下mybatis中原始dao开发的方法,最后并总结一下原始dao开发方法的弊端。mybatis中dao开发应该使用mapper代理的方法,这将在下一篇博文中介绍。   原始dao开发思路比较简单,写个dao接口和dao实现类即可。需要向dao实现类中注入sqlSessionFactory,在方法体内通过sq

2017-07-02 11:17:01 250

转载 【MyBatis学习02】走进MyBatis的世界

mybatis是个持久层的框架,用来执行数据库操作的,无外乎增删改查,上一节对mybatis有了宏观上的了解后,这一篇博客主要通过一个小示例来入门mybatis,先看一下要写的示例需求:根据用户id查询用户信息 根据用户名称模糊查询用户信息 添加用户、删除用户、更新用户  其实也就是增删改查,掌握这些,基本上就掌握了mybatis的基本操作了,下面一个个模块来完成。

2017-07-02 11:15:49 171

转载 【MyBatis学习01】宏观上把握MyBatis框架

今天开始学习mybatis框架,博客主要记录学习过程中的一些总结,如有错误之处,欢迎留言指正~先用mybatis的鸟鸟来镇个楼,咳咳~~   mybatis框架是一个持久层框架,是Apache下的顶级项目。mybatis可以让开发者的主要精力放在sql上,通过mybatis提供的映射方式,自由灵活的生成满足需要的sql语句。MyBatis可以将向preparedStatemen

2017-07-02 11:14:37 163

转载 MyBatis分页插件PageHelper的使用

我们知道,在MySQL中,分页的sql是使用limit来做,如果我们自己写sql,那分页肯定是没有任何问题的。但是一旦model多了起来,复杂了起来,我们很自然的想到使用mybatis的逆向工程来生成相应的po和mapper,但是同时也会带来弊端,比如这里的分页问题就不好解决了。   可能有人会说,我可以修改生成的文件,没错,这是可行的,但是一般我们通过逆向工程生成的文件,都不会去动它,所以这

2017-07-02 11:06:56 820

转载 关于文件拷贝效率问题

1.不采用缓存,读一次写一次[java] view plain copypublic static void copy1(String input,String output){          FileInputStream fis = null;          FileOutputStream fos = null;          tr

2017-07-02 08:10:28 244

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除