自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

张栋的博客

分享知识,共同进步

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

原创 两年工作经验的后端开发的工作方法小结

1.首先要去理解去想去弄明白这个需求要解决什么实际问题,这个需求为什么会提出来(这个是最重要的,这一步做好做接下来的事情会很有感觉)2.脑子里有了大致的思路之后,然后再将脑子中的思路书面化,把自己的思路写下来。3.手一定不要比大脑快,开始做之前一定要提前做一个计划,把自己接下来要做的事情全部通过文字的形式罗列出来其中包括1.要新建哪些表,要改动哪些表,要建哪些菜单2.要从0到1...

2019-06-13 10:35:21 2378 1

原创 浅谈final关键字

Java中的final关键字非常重要,它可以应用于类、方法以及变量。这篇文章中我将带你看看什么是final关键字?将变量,方法和类声明为final代表了什么?使用final的好处是什么?最后也有一些使用final关键字的实例。final经常和static一起使用来声明常量,你也会看到final是如何改善应用性能的。final关键字的含义?final在Java中是一个保留的关键字,可以声明成员变量、...

2018-03-18 10:54:26 242

原创 SQL的四种连接查询

 SQL数据库中有两张表,一张人员(T_Person)表、一张卡(T_Card)表,人基本上都那么几张卡,像银行卡、饭卡、水卡、电费卡……(T_Person)(T_Card)内连接1.内连接(inner join 或 join)        内连接是等值连接,它使用“=、>、<、<>”等运算符根据每个表共有的列的值匹配两个表中的行查询语句:[sql] view plain...

2018-02-28 17:04:24 876

原创 javascript版排二叉树

Binary Treefunction BinaryTree(){var Node = function(key) {this.key = key;this.left = null;this.right = null;}var root = null;this.insert = function(key) {var newNode = new N

2017-11-12 11:15:41 204

原创 java中的自动拆箱与自动装箱

什么是自动装箱拆箱基本数据类型的自动装箱(autoboxing)、拆箱(unboxing)是自J2SE 5.0开始提供的功能。 一般我们要创建一个类的对象实例的时候,我们会这样: Class a = new Class(parameter); 当我们创建一个Integer对象时,却可以这样: Integer i = 100; (注意:不是 int i =

2017-11-01 10:48:49 266

原创 快速排序java版

com.sunny.sortpublic class QuickSort{public static void main(String[] args){Integer[] a = {1,2,6,1,10,7,80,16,17,19,18,26,21};sort(a);show(a);}/*** 快速排序算法*/public static void sort(

2017-10-30 16:58:32 168

原创 用java实现一个基于堆排序的优先队列

com.sunny.heappublic class MaxPQ{ public static void main(String[] args){MaxPQ heap = new MaxPQ(11);heap.insert("S");heap.insert("R");heap.insert("T");while(!heap.isEmpty())  {  Syst

2017-10-30 16:53:03 479

原创 用java语言写一个环形队列

package com.sunny.queue;import java.util.ArrayList;/*** 环形队列* @author zhangdong**/public class MyQueue {//存储元素的队列数组private Object[] queueArray;//队列的头private int head;//

2017-10-30 16:49:13 574

原创 用java语言写一个栈

package com.sunny.stack;/*** 栈* @author zhangdong*/public class MyStack {/*栈顶元素的位置**/private int top;/*栈的容量**/private int stackCapacity;/*存放栈中元素的数组**/private Object[] stack;

2017-10-30 16:47:25 450

翻译 LinkedList源码分析

一、源码解析    1、 LinkedList类定义。 public class LinkedList extends AbstractSequentialList implements List, Deque, Cloneable, java.io.Serializable LinkedList 是一个继承于AbstractSequ

2017-08-21 20:52:52 152

原创 HashMap源码分析

一、HashMap概述  HashMap基于哈希表的 Map 接口的实现。此实现提供所有可选的映射操作,并允许使用 null 值和 null 键。(除了不同步和允许使用 null 之外,HashMap 类与 Hashtable 大致相同。)此类不保证映射的顺序,特别是它不保证该顺序恒久不变。  值得注意的是HashMap不是线程安全的,如果想要线程安全的HashMap,可以通过Co

2017-08-20 22:36:46 153

原创 ArrayList源码分析

一、 ArrayList概述:  ArrayList是基于数组实现的,是一个动态数组,其容量能自动增长,类似于C语言中的动态申请内存,动态增长内存。     ArrayList不是线程安全的,只能用在单线程环境下,多线程环境下可以考虑用Collections.synchronizedList(List l)函数返回一个线程安全的ArrayList类,也可以使用concurr

2017-08-20 21:45:05 163

翻译 单点登录

一、单系统登录机制1、http无状态协议  web应用采用browser/server架构,http作为通信协议。http是无状态协议,浏览器的每一次请求,服务器会独立处理,不与之前或之后的请求产生关联,这个过程用下图说明,三次请求/响应对之间没有任何联系  但这也同时意味着,任何用户都能通过浏览器访问服务器资源,如果想保护服务器的某些资源,必须限制浏览器请求;要限

2017-06-29 11:14:50 369

原创 为什么把String类设置为final的

String是Java中一个不可变的类,所以他一旦被实例化就无法被修改。不可变类的实例一旦创建,其成员变量的值就不能被修改。不可变类有很多优势。本文总结了为什么字符串被设计成不可变的。将涉及到内存、同步和数据结构相关的知识。字符串池字符串池是方法区中的一部分特殊存储。当一个字符串被被创建的时候,首先会去这个字符串池中查找,如果找到,直接返回对该字符串的引用。下面的代码只会在

2017-06-26 20:33:12 285

原创 maven介绍

1.Maven是一个很好用的项目管理工具其主要用途有1.1帮助我们统一管理开发时用到的jar包在这里有一个库的概念。我们可以在maven项目中的pom.xml中配置我们开发时需要 的jar包,配什么,maven就会自动帮我去仓库里去取对应的jar包如果仓库中没有对 应的jar包那么maven会自动去网上的中心仓库去帮我们把对应的jar包下载到我们的 仓库中,我们需要的setting

2017-06-26 11:12:58 173

原创 sql大全

基础创建数据库CREATE DATABASE database-name 删除数据库drop database dbname备份sql server创建 备份数据的 device USE masterEXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat

2017-05-12 10:59:55 304

原创 sql那些事

我觉得对于SQL语句,清楚知道它执行的顺序,对于写sql语句非常重要                                  sql查询中用到的关键词主要包含六个,并且他们的书定顺序依次为 Select--From--Where--Group by--Having--Order by但这几关键词的执行顺序与sql语句的书写顺序并不是一样的,而是按照下面的顺序来执行 Fro

2017-04-04 17:04:50 221

原创 求一个数列中的最大子序列

/** *  *求一串数字中的最大子序列 */public class Demo1 {public static void main(String[] args) {int[] arr = {-1,-2,3,4,5,-5,4,-1};seekMax3(arr);}/***找出数组中的最大子序列 算法一*时间复杂度O(n^3)*/public st

2017-04-04 11:03:31 766

原创 使用递归打印出一个文件夹下所有子孙文件的树形结构

public static void main(String[] args) {File file = new File("E:\\学习文档");treeShow(file, 0);}/*** 用递归的方法打印一个文件夹的树形结构* deep为递归的深度*/public static void treeShow(File file,int deep){File[

2017-04-04 11:02:03 987

原创 Mybatis那些事

1在谈Mybatis之前我们先说一说传统jdbc的缺点a.实现程序各层松耦合时获得数据库连接很困难b.操作时重复性代码过多c.无法自动封装结果集对象d.传统jdbc连接数据库时需要频发的创建和关闭连接操作MyBatis的步骤2使用了Mybatis后就可以完美的解决这些问题我们在写程序是就可以更多的关注点放到如何编写sql语句上面而不是操作数据库的api上3我们在聊一聊Myb

2017-04-04 10:47:23 215

原创 java环境变量问题

我们一般在安装完jdk一般都要设置两个环境变量分别是 path和classpath。设置位置(右键我的电脑-->属性-->高级系统设置-->环境变量)进入界面后会出现这时会出现一个用户变量和一个系统变量,两个的区别是用设置的用户变量只对本机上的此用户起作用,而系统变量则对本机上的所有用户起作用。我们先来说一说pathpath变量的值是你的jdk的安装目录到bin目录

2017-04-03 18:14:05 248

原创 springmvc组件详解

1.      前端控制器Springmvc的核心组件负责request和response的转发2.      处理器映射器接收前端控制器发来的请求,将请求匹配到正确的controller3.      处理器适配器  处理前端控制器发来的请求,并将处理的结果包装成ModelAndView对象将其返回给前端控制器。4.      视图解析器     接收前端控制器发送的

2017-04-03 17:51:19 309

原创 浅出java异常机制

java异常机制其实就是为了弥补java程序中各个组件通信功能的不足。如方法之间的调用一个是调用者,一个是被调用者。调用者可以通过不同的参数个数不同的参数类型来向被调用者传递信息(信息很丰富)。而被调用者只能通过返回值来向调用者反馈信息(信息很局限)。java异常机制恰恰弥补了这个不足。让被调用者除了可以通过返回值来给调用者反馈信息外,还可以通过丰富的异常类型来给调用者反馈信息。大大提升了ja

2017-04-03 15:42:11 180

原创 动态代理详解

什么是代理?客户,房东,中介客户有租房的需求,房东有租房的行为。中介就相当于一个代理当对用户进行服务时,中介除了能完成房东的所有服务,还能提供额外 的服 务比如在租给用户房子前可以带用户看房给用户介绍房子,租给用户房子后  还可以收取额外的中介费用,这就是一个代理的过程 传统模式-->静态代理模式-->动态代理模式-->AOP面向切面编程  传统模式:1.将处理事务或其

2017-04-02 13:52:04 341

空空如也

空空如也

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

TA关注的人

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