初遇“synchronized" 前言从今天开始,姑娘我将要回归“起跑线”,含着眼泪默默的将大学老师奋笔疾书教过的“理论”以及工作N年后并曾未总结过的“实战经验”一并拾起来,我要向专业再靠近一步,近一步......心里默默叨念:我不仅可以靠颜值吃饭,更可以在实力的路上越走越远......这一切的一切动力源于两个原因:1·看到一个刚毕业不久(好像是哈)的小弟弟在各大网站及b站发表的系列文章,其广度其深度让已经毕业四年的我深感...
年后公司的‘优化’事件所思所想 年后经历了公司的裁员,整个过程前前后后一共三天,这三天,经历了很多,也思考了很多。一:“优化名单”与“非优化名单”的区别首要因素是责任心以及态度,而非技术能力;二:如若不在名单,也不要存在侥幸心理,带一笔赔偿金走人然后找到一份可跳薪的工作;三:这个过程,无论处于什么角色,都是一件好事,这里心态很重要;四:如若从‘优化名单‘调至’置换名单‘,现在自己面临两个选择,1:留下来;2:拿钱...
日子过的太好,却忘记了曾经的梦想 情人节的夜晚,独自窝在被窝,读着朋友这两年的成长历程,让自己惊呆了,回想自己的这一年,只是想说:是不是日子过的太好,却忘记了曾经的梦想。想翻翻自己写的2017年终总结,好了解一下去年,方便对比今年,但然而并没有在csdn找到,只是在自己的笔记中翻到了一点点,所以,不发出去的文章,永远写不完,永远没有结尾,永远不会用心。所以,2018的总结我会发布出去。这一年,发生了很多很多事情,工作...
《Spring IOC 学习——注解工作机制》 在没有引入spring框架前,在类与类之间的调用关系通过new关键字进行实例化对象,进而调用对象的方法或者属性。在引入spring框架后,我们开始使用spring容器进行IOC注入,在spring的配置文件applicationContext.xml文件里,配置相应类的bean节点,在不配置懒加载bean节点的前提下,当配置文件applicationContext加载后,会自动实例化所有的sing
《Spring AOP入门——动态代理》 Spring的动态代理有两种实现方式:JDK的动态代理;cglib的动态代理。 JDK的代理方式只能代理实现了接口的类,而不能实现接口的类就不能实现JDK的动态代理。这就要使用cglib动态代理了。这里主要聊聊JDK的动态代理。 说到动态代理,就不得不说代理模式。一:代理模式使用代理模式必须要让代理类和目标类实现相同的接口,客户端通过代理
《Spring实践——不一样的'HelloWorld'》 前言HelloWorld对于IT行业实属经典,就像一些经典电影,都不曾被超越。之前的《tiny-SpringIoc学习系列博客》都是对于源码的一些初步分析, 现在要在对于springIoc的理解基础之上,至于实践应用。 系列博客如下: 《step1:tiny Spring IoC学习一》——最基本的容器BeanFactory 《step2:tiny Spring IoC学习二》——将be
《step5:tiny-spring-ioc学习五》——ApplicationContext登场 首先可以看一下咱们在前4篇博客的基础上初始化bean并获取bean对象的代码://1.读取配置XmlBeanDefinitionReaderxmlBeanDefinitionReader=newXmlBeanDefinitionReader(newResourceLoader());xmlBeanDefinitionReader.loadBeanDefinitions("tinyioc.xml"
《step4:tiny-spring-ioc学习四》——读取xml配置来初始化bean 在上两篇博客中,采用的是通过给定的包名和类名使用java代码动态加载类,随着bean类的增加,貌似这样的容器管理bean方式就有些不大合适,所以,这篇博客是采用xml配置bean节点来完成初始化工作。 这里的BeanDefinition只是一些配置,我们定义了BeanDefinitionReader初始化bean,它有一个实现是XmlBeanDefinitionReader。该Xml
《step3:tiny-Spring-IoC学习三》——为bean注入属性 这一步,我们想要为bean注入属性。我们选择将属性注入信息保存成PropertyValue对象,并且保存到BeanDefinition中。这样在初始化bean的时候,我们就可以根据PropertyValue来进行bean属性的注入。Spring本身使用了setter来进行注入,这里为了代码简洁,我们使用Field的形式来注入。------------------------------
《step2:tiny Spring IoC学习二》——将bean创建放入工厂 在上一篇博客《step1:tiny Spring Ioc 学习一最基本的容器BeanFactory》中,bean(HelloWorldService)是通过new初始化好之后再set进去BeanDefinition对象中的,实际使用中,我们希望容器来管理bean的创建。于是我们将bean的初始化工作放入BeanFactory中去。为了保证扩展性,我们使用ExtractInterface的方法,将B
《step1:tiny Spring IoC学习一》——最基本的容器BeanFactory IOC容器作为spring的核心内容,它的实现机制是如何的呢?下面我们通过5部分内容来对IOC容器宏观上认识。
进一步解析“Hello World”程序 现在你已经看到了“HelloWorld!”应用程序(甚至可能编译并运行它),您可能会想知道它是如何工作的。这里是它的代码:class HelloWorldApp{ public static void main(String[]args) { System.out.println("HelloWorld!"); // Display the string. }
“Hello World”应用程序 下面列出的部分提供了编译和运行一个简单的“HelloWorld!”的详细说明。应用。第一部分提供有关入门NetBeans IDE的信息,NetBeans IDE是一个大大简化了软件开发流程的集成开发环境。NetBeansIDE可在下列所有平台上运行。其余部分提供平台特定的入门指导,无需集成开发环境。如果遇到问题,请务必查阅常见问题部分;它为新用户遇到的许多问题提供了解决方案。·在N
Spring task 定时任务实践 需求: 每天的早上7点定时扫描表里的数据,符合条件的数据将会被发送到相应人员的邮箱当中。 分析: 实现定时任务技术上有好多选择:1· Java自带的java.util.Timer类:这个类允许你调度一个java.util.TimerTask任务。使用这种方式可以让你的程序按照某一个频度执行,但不能在指定时间运行。一般用的较少。2.使用Quartz,这是一个
Java技术是什么 在任何地方我们都经常讨论Java技术,但它到底是什么呢?下面部分将会介绍Java技术不仅仅是一门编程语言,也是一种平台,并会概述这门技术能为我们做什么。 ·Java技术是什么·Java技术能够做什么?·Java技术怎样改变我们的生活? 一:Java技术是什么Java技术是一门编程语言,也是一个平台。1·java编程语言Java编程语言是一种高级语言,可以
Java多线程学习总结(一)——多线程创建 在学习总结多线程的创建方式之前,我们先不使用多线程,只通过主线程实现的一个简单打印功能。目的:是为了和多线程的创建使用进行对比。代码:package com.thread.test;/** * 多线程的创建 * @author jimmy * */public class First { private String name; public First
SpringMVC学习总结(五)——转发和重定向 在SpringMVC中转发和重定向最重要的区别就是:应用场景不同,换句话说,就是需求不同。如果是直接放回到jsp页面:则如下边两种方式均可。 1· @RequestMapping("/add/{itemid}") public String addCart(@PathVariable long itemid,int num, HttpServletRequest request,H