- 博客(54)
- 收藏
- 关注
原创 java 并发
并发概览并发编程背景概述[建议改成“并发编程背景概述”或者“CPU和内存发展概述”。]在早期,计算机采用的都是冯诺依曼架构,即CPU-内存架构。运行在计算机上的程序也是顺序执行的,当一个程序执行完,才能执行另一个。但很快发现顺序执行效率非常低下,当一个程序被阻塞时,整个计算机都被阻塞。随着计算机技术的发展,于是出现了多道程序设计,允许一个计算机可以同时运行多个进程,当一个进程被阻塞时可以让出C...
2019-06-24 18:48:42
129
原创 springIoC概述
概述 在java开发领域spring框架非常有名,尤其是在java领域,如果不知道spring框架,你就太low了(当然牛逼到爆的人除外)。spring框架的英文名就是springFramework,翻译过来就是spring框架。spring框架其实只是SpringSource公司的一个项目,SpringSource公司有很多项目,这是项目主页,你会看到非常多多项目。但是springFr
2016-09-14 11:06:38
425
原创 JQuerySelectors
根据获取页面中元素的不同,可以讲jQuery选择器分为:基本类型选择器,层次选择器,过滤选择器,表单选择器.其中,在过滤选择器当中又可以分为简单过滤选择器,内容过滤选择器,可见性选择器,属性选过滤择器,表单对象属性过滤选择器共六种.2.2.1基本选择器基本选择器时jQuery中使用最频繁的选择器,它又id,class,元素名,多个选择符组成. 选择器 功能 返回符 id 根据给定i
2016-05-30 21:10:52
428
原创 Spring 源码分析
为了读懂spring源码,我是根据debug来分析的。 一切的起点就是ApplicationContext。 根据构造函数的各种调用最终调用的是这个构造函数。 public ClassPathXmlApplicationContext(String[] configLocations, boolean refresh, ApplicationContext parent)
2016-05-01 19:05:37
425
原创 自学spring
Spring最基本的功能就是ioc容器,什么是ioc容器。 一般说道容器,我们都会想到一些高大上的东西,比如tomcat等等这些web容器,docker,甚至有些人将某些数据结构(List,Set,Map)也称为容器。可以说容器这个词已经被用烂了。 那就讲解一下容器最本质的意思,就是放东西的东西。所以上面的这些东西都可以被称之为容器。那么什么是ioc容器,ioc是控制反转的意思,也有人讲ioc称
2016-04-26 23:33:41
565
原创 文章标题
Setting and getting basic and nested propertiesSetting and getting properties is done using the setPropertyValues(s) and getPropertyValue(s) methods that both come with a couple of overloaded varian
2016-04-09 17:40:28
264
原创 javascript
关于js最好的做法就是把<!DOCTYPE html><html lang="en"><head> <meta charset="utf-8"/></head><body> <script src="file.js"></script></body></html>数据类型,变了mod的值是一个字符串,变量age的是一个整数,虽然他们是不同的数据类型,但在javascrip
2016-04-08 00:47:18
299
原创 Handler mappings
In previous versions of Spring,users were required to define one or more HandlerMapping beans in the web application context ot map incoming web requests to appropriate handlers.With the introduction o
2016-03-27 22:31:17
442
原创 数据库触发器
触发器只能由用户对DB中表的操作(即插入,删除和修改3中操作触发),因此可以用触发器维护表的一致性。Note触发器不仅可以用来维护表数据的一致性,还可以实现更加复杂的操作触发器分为AFTER触发器和INSTEAD OF触发器两种 AFTER触发器,表示是在增,删,改这些操作之后进行执行。AFTER只能建立在表上,每个触发操作可以定义多个AFTER触发器,可以中sp_settriggerorder指
2016-03-26 21:37:34
475
原创 spring Resolving views
All MVC frameworks for web applications provide a way to address vies. Spring provides view resolvers, which enable you to render models in a browser without tying you t a specific view technology.Out
2016-03-26 10:56:45
745
原创 mybatis cache
MyBatis 有一个功能非常强大的事物缓存优势,并且它是高度可配置,可定制的。 默认情况下,可以使用本地session缓存来缓存数据。为了可以使用一个全局的二级缓存你只需要在你的的映射文件中添加<cache/>使用了缓存就会产生这样的结果: 映射文件中所有的查询结果都会被缓存 说有的插入,更新和删除操作都会清理缓存 缓存采用最近使用算法来存储缓存数据 使用排序并不会更新缓存缓存会存储10
2016-03-09 23:35:24
486
原创 Spring Cache
Cache Abstraction35.1InstroductionSince version 3.1 Spring Framework provides support for transparently adding caching into an existing Spring application.Similar to the transaction support, the cachin
2016-03-09 22:36:53
311
翻译 git in action
You can get a Git project using two main approaches. The first takes an existing project or directory and imports it into Git. The second clones an existing Git repository from another server.有两种方法获取一
2016-02-28 03:01:29
502
原创 Spring-IOC
Instantiating a containerInstantiating a Spring IoC container is straightforward. The location path or paths supplied to an ApplicationContext constructor are actually resource strings that allow the c
2016-02-22 23:58:16
312
原创 springMVC-interceptors
Handler mappingsIn previous versions of Spring,users were required to define one or more HandlerMapping beans in the web application context to map incoming web requests to appropriate handlers.With
2016-02-22 21:17:29
440
原创 springIOC
This part of the reference documenttation covers all of those technologies that are absolutely integral to the Spring Framework.Foremost amogst these is the Spring Framework's Inversion of Control(IOC
2016-02-21 23:04:56
401
原创 linux yum源讲解
linux对于软件安装提供了一种基于容器的概念,软件的安装,卸载,更新。都由统一的yum容器来管理。 因此当我们需要安装摸个软件的时候只需要输入yum install 软件名 就可以了。 着不知道比windows方便了多少。你不用去它的官网去找了。同时在安全性上也提高了很多。我们安装软件是配置了yum源,这个yum源肯定是大家都在用的,比较正规的,比如红帽的,网易的,搜狐的,或者是你们公司自己
2016-02-05 18:45:25
632
原创 mybatis动态sql
MyBatis采用功能强大的基于OGNL的表达式来消除其他元素if choose(when,otherwise) trim(where,set) foreachif 动态sql通常要做的事情是有条件的包含where子句的一部分。比如:<select id="findActiveBlogWithTitleLike" resultBype="Blog">select * from blog w
2016-02-04 13:46:58
251
原创 mybatis
每个基于MyBatis的应用都是以一个SqlSessionFactory的实例为中心的。SqlSessionFactory的实例可以通过SqlSessionFactoryBuilder获得。SqlSessionFactoryBuilder可以从xml配置文件或一个预先定制的Configuration的实例构建出SqlSessionFactory。 从上面可以看出对于配置Mybatis也提供了两种方
2016-02-02 17:10:17
282
原创 java Format
Format是一个用于格式化的抽象类。 Format用于将你的输入格式化为String,和将String解析为Object;子类化 java平台为格式化日期,消息和数字分别提供了三个特殊的Format的子类:DateFormat,MessageFormat,NumberFormat。 具体的子类必须实现的三个方法: format(Object obj, StringBuffer toAppe
2016-01-30 18:58:57
468
原创 spring AOP
什么事aop,aop就是对业务逻辑的实现是按功能模块来划分的,当你需要实现某一个功能的时候,只需要将不同的功能模块组合在一起。想想一下没有aop我们会怎么做呢?比如某一天领导突然说,给我把这1000个类前面都加一个输出“欢迎领导”的功能。你会怎么做,在每一个接口里面都加上这个功能,啊大概1000条一模一样的代码,那第二天领导又说,换成“欢迎首长”。又是1000条修改。累死了。 但是有了aop,你就
2016-01-27 23:19:15
350
原创 spring 基于java的注入
并不是所有的人都喜欢用xml来配置spring,尤其是那些没学过xml或者讨厌xml的人。因此spring出现了一种基于java(就是通过写java代码来配置)的配置方法。 我在上次说过,springIOC容器,就是一个键值对的map,而且spring本来就是用java写的,因此用java来进配置,就是相当于新建一个实例放入这个springIOC容器当中,这和我们平常写代码非常相似。 言归正传,
2016-01-25 15:12:19
362
原创 spring IOC配置
1如何实例化一个对象? 这个简单,当然是根据构造函数了。public class Hello{ public static void main(String[] argv){ Hello hello=new Hello(); }}好了,那如果构造一个动态的对象呢?public class Student{ private String name;
2016-01-21 23:54:51
285
原创 spring IOC容器
1为什么使用spring 我们知道任何一个应用都需要用到多个类(并不是所有的应用都像Hello the world ),既然有多个类,那么久涉及到了多个之间的协作,多个类之间如何协作呢,当然是靠通信了(就像我们人与人之间)。比如我们开发了一款软件,比如eclipse。我们知道eclipse有若干个组成部分(面板1,面板2,面板3,按钮1,按钮2,按钮3,下拉菜单1,下拉菜单2,下拉菜单3,啊好痛
2016-01-21 22:54:39
210
原创 JavaScript(1)
1搭建环境: 什么都不需要做,只需要一个浏览器就可以,建议使用火狐,googel,ie 2hello the world 因为开始都是示例,我不会用IDE来写,希望大家也不要用,就用记事本来写,让自己可以记住那些常用的函数,范一些常见的错误。 <html> <head> <meta http-equiv="Content-Type" content="text/h
2016-01-01 15:33:18
261
原创 log4j
通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。引用 首先说一下log4j的日志级别, DEBUG Lev
2015-12-24 22:04:50
261
原创 判断是否是一个邮箱
本来最初设想的时候觉的应该很麻烦,但真正用到java的正则表达式的时候,发现挺简单的。import java.util.Scanner;public class ValidEmail{ public static void main(String[] argv)throws Exception{ Scanner sc=new Scanner(System.in);
2015-12-23 16:43:39
739
原创 JAVA MD5的误区
下面这句话引用自百度百科: MD5还广泛用于操作系统的登陆认证上,如Unix、各类BSD系统登录密码、数字签名等诸多方面。如在Unix系统中用户的密码是以MD5(或其它类似的算法)经Hash运算后存储在文件系统中。当用户登录的时候,系统把用户输入的密码进行MD5 Hash运算,然后再去和保存在文件系统中的MD5值进行比较,进而确定输入的密码是否正确。通过这样的步骤,系统在并不知道用户密码的明码的情
2015-12-22 23:18:53
522
原创 git最细致的图文教程
git是什么? git就是一个版本控制工具,为了生动,我就直接上图了,以oschina为例。 大家注册登录进去之后会到这个页面。 点击“+”新建一个项目。 例如我这里就建立了一个day1125的项目。 然后大家在自己的电脑上在随便一个文件夹下(该文件夹还没有被git托管) 例如,我在g:\git-test目录下。 首先需要验证一下管理信息(因为版本控制工具就是专门用来帮助多个人进行
2015-12-14 11:32:11
450
原创 struts2浅析1
struts2就是对mvc的实现,为了方便,我只讲解web上的mvc。在web上m就是model,你理解成web上的实体就可以了。c,controller,对应struts上的action,v就是view,视图对应你的那些JSP,html等等。先说一下struts2的核心,org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteF
2015-12-09 00:46:43
268
原创 hibernate一对一对应关系
1 首先我先建立三个表:Student(学生),Lab(实验室),Part(党) Student: Lab: Part:假如党员都是学生,因此在党员这个表中为了让每一个党员对应一个学生,我们在党员这个表中添加来学生的studentID,这样就可以让学生和党员一一对应起来.Student类:public class Student { private int studentI
2015-12-03 22:15:05
282
原创 hibernate常见关系的操作
一对多和多对一 为了表示这种关系,我们需要先建立一个部门表,然后再建立一个员工表。public class Employee { private int employeeId; private String employeeName; public Department department; public int getEmployeeId() {
2015-12-03 14:20:50
200
原创 hibernate的常用api
使用get(Class class,Seriable id) Configuration configuration=new Configuration(); configuration.configure("hibernate-cfg.xml"); SessionFactory sessionFactory=configuration.buildSe
2015-12-03 13:17:26
278
原创 hibernate入门
1首先在数据库中建立一个用户表User(我推荐刚起步的时候这样起名字,因为它会和你接下来的类名相同,减少出错误的可能性) 2我这里用的是idea,但是你用其他IDE也一样,没有关系。建立一个User类。public class User { private int userId; private String userName; private String passw
2015-12-03 13:00:40
231
原创 linux常用命令locate,which,whereis,grep
locatefind files by name 和find不一样,直接就是通过名字来进行查找,当然默认情况下可以使用通配符-regex 可以使用正则表达式-i 不区分大小写locate优点:因为它是去文件系统的数据库查找,而不是对磁盘进行查找,因此它的速度非常快。同时因为是对数据库进行查找,因此有些时候,一些文件的增加和删除的情况并没有及时的同步的数据库中会导致一些错误情况。eg: 当创建
2015-11-07 17:17:20
267
原创 linux常用命令find
findsearch for filesfind 范围 选项 参数 -name 通过文件名进行查找,可以把通配符加进去。 -regex 通过正则表达式进行匹配-type 根据文件类型进行匹配-size 根据文件大小=-+-group 根据所属组进行查找-cmin 根据属性的改变时间 +-=-mmin 根据文件内容的改变时间+-=-amin 根据访问时间+-=-
2015-11-07 16:09:40
296
原创 linux权限浅析
我觉定按照一般教科书式的方式先把结论告诉大家,然后再通过实验验证。 权限定理: 1在linux的文件系统中,目录文件其实是一张表,这张表只有一个字段一个是文件名,另一个就是文件的inode,用户访问文件时都是通过文件名获取indoe,然后通过文件的inode来在磁盘中找到文件. 2文件的属性也是存放在文件当中的 3该文件属性的访问并不属于该文件权限的管理范围 4如果想要操作该文件,必须能
2015-11-07 15:31:04
268
原创 linux常用命令chmod,chown,chgrp
chmodchange file mode bits 改变文件权限位 chmod [{ugoa}{+-=}{rwx}] 文件名 u:拥有者 g:所属组 o:其他人 a:所有人=:等于的权限 +:增加的权限 -:减少的权限r:读权限 w:写权限 x:执行权限只有文件的拥有者和root用户才有修改文件权限的能力 由于组合太多我只举个几个例子: chmod u+x,g-r,o
2015-11-02 22:03:07
462
原创 linux常用命令ln
lnmake links between files 在文件与文件之间制作链接 -s,–symbolic make symbolic links instead of hard links 制作符号链接(也就是常说的软链接)而不是硬链接这就意味着在不使用-s的情况下我们建立的都是hard链接symblic链接(软链接)软链接,直接理解windows里面的快捷方式就可以了,所以我就在图形界面里
2015-11-02 20:30:17
352
原创 linux常用命令touch,cat,tac,more,less,head,tail
touchchange file timestamps修改文件最后修改时间但这并不是重点。 if file argument that does not exist is created empty,unless -c or -h is supplied. 如果文件名不存在的话就会创建一个空文件,除非使用了-c或-h参数 这里我只演示它创建文件和修改时间的功能。 catconcatenate
2015-11-02 19:54:27
493
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人