![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
文章平均质量分 77
Prime0906
这个作者很懒,什么都没留下…
展开
-
JUnit学习
JUnit来自百科 JUnit是一个Java语言的单元测试框架。它由Kent Beck和Erich Gamma建立,逐渐成为源于Kent Beck的sUnit的xUnit家族中最为成功的一个。 JUnit有它自己的JUnit扩展生态圈。多数Java的开发环境都已经集成了JUnit作为单元测试的工具。原创 2016-11-28 17:29:47 · 257 阅读 · 0 评论 -
装配Bean(2)-通过注解配置Bean
组件扫描组件扫描(component scanning): Spring 能够从 classpath 下自动扫描, 侦测和实例化具有特定注解的组件. @Component: 基本注解, 标识了一个受 Spring 管理的组件@Repository: 标识持久层组件@Service: 标识服务层(业务层)组件@Controller: 标识表现层组件对于扫描到的组件, Spring 有默认的原创 2017-08-19 16:23:00 · 219 阅读 · 0 评论 -
GC算法与种类
GC算法与种类标签: Java JVM GCGC算法引用计数法标记清除标记压缩复制算法GC:Garbage Collection 垃圾收集。1960年 List 使用了GC。Java中,GC的对象是堆空间和永久区引用计数法通过引用计算来回收垃圾。 引用计数器的实现很简单,对于一个对象A,只要有任何一个对象引用了A,则A的引用计数器就加1,当引用失效时,引用计数器就减1。只要对象A的引用计原创 2017-08-13 10:09:19 · 273 阅读 · 0 评论 -
JVM中的锁
JVM中的锁标签: Java JVM 锁对象头MarkMark Word,对象头的标记,32位描述对象的hash、锁信息,垃圾回收标记,年龄 指向锁记录的指针指向monitor的指针GC标记偏向锁线程IDJVM 中的锁分类偏向锁轻量级锁自旋锁偏向锁大部分情况是没有竞争的,所以可以通过偏向来提高性能所谓的偏向,就是偏心,即锁会偏向于当前已经占有锁的线程将对象头Mark的标记原创 2017-08-13 11:20:10 · 638 阅读 · 0 评论 -
Spring AOP
Spring AOP基于代理实现的日志栗子:一个计算器Calculator接口public interface Calculator { int add(int i, int j); int sub(int i, int j);}一个简单实现了该接口的类MyCalculatorpublic class MyCalculator implements Calculator {原创 2017-08-20 14:34:10 · 271 阅读 · 0 评论 -
Hibernate 起步
Hibernate 起步标签: Java Hibernate环境//MySql:mysql> select version();+------------+| version() |+------------+| 5.7.17-log |+------------+1 row in set//Eclipse:Eclipse Java EE IDE for Web Develope原创 2017-08-25 15:05:21 · 309 阅读 · 0 评论 -
Struts2-简单Ajax应用
应用场景:用户注册时在 文本输入框中输入用户名,在用户输入完之后,判断数据库中是否存在该用户名。在这个情景下,服务器只要简单的返回true或者false。Java Action中书写:/* * 用于Ajax */private InputStream inputStream; public InputStream getInputStream() { return inpu原创 2017-09-04 11:59:45 · 200 阅读 · 0 评论 -
Hibernate-继承映射
对于面向对象的程序设计语言而言,继承和多态是两个最基本的概念。Hibernate 的继承映射可以理解持久化类之间的继承关系。例如:人和学生之间的关系。学生继承了人,可以认为学生是一个特殊的人,如果对人进行查询,学生的实例也将被得到。三种方式Hibernate支持三种继承映射策略: - 使用 subclass 进行映射:将域模型中的每一个实体对象映射到一个独立的表中,也就是说不用在关系数据模型中考虑原创 2017-08-27 16:59:05 · 179 阅读 · 0 评论 -
Hibernate-检索策略
类级别的检索策略类级别可选的检索策略包括立即检索和延迟检索, 默认为延迟检索 - 立即检索: 立即加载检索方法指定的对象 - 延迟检索: 延迟加载检索方法指定的对象。在使用具体的属性时,再进行加载 类级别的检索策略可以通过 <class> 元素的 lazy 属性进行设置 如果程序加载一个对象的目的是为了访问它的属性, 可以采取立即检索. 如果程序加载一个持久化对象的目的是仅仅为了获得它的原创 2017-08-28 11:36:08 · 210 阅读 · 0 评论 -
Struts2-访问Web资源
Action类action: 应用程序可以完成的每一个操作. 例如: 显示一个登陆表单; 把产品信息保存起来Action类: 普通的 Java 类, 可以有属性和方法, 同时必须遵守下面这些规则: 属性的名字必须遵守与 JavaBeans 属性名相同的命名规则. 属性的类型可以是任意类型. 从字符串到非字符串(基本数据库类型)之间的数据转换可以自动发生必须有一个不带参的构造器至少有一个供原创 2017-09-05 21:04:31 · 204 阅读 · 0 评论 -
Struts2-动态方法调用
动态方法调用: 通过 url 动态调用 Action 中的方法。 action 声明: URI: - /struts-app2/Product.action: Struts 调用 Product 类的 execute - /struts-app2/Product!save.action: Struts 调用 Product 类的 save() 方法默认情况下, Struts 的动态方法调用原创 2017-09-06 12:11:35 · 213 阅读 · 0 评论 -
Struts2-通配符
通配符一个 Web 应用可能有成百上千个 action 声明. 可以利用 struts 提供的通配符映射机制把多个彼此相似的映射关系简化为一个映射关系。通配符映射规则:若找到多个匹配, 没有通配符的那个将胜出若指定的动作不存在, Struts 将会尝试把这个 URI 与任何一个包含着通配符 * 的动作名及进行匹配 被通配符匹配到的 URI 字符串的子串可以用 {1}, {2} 来引用. {原创 2017-09-06 15:35:56 · 278 阅读 · 0 评论 -
Struts2-result
result每个 action 方法都将返回一个 String 类型的值, Struts 将根据这个值来决定响应什么结果. 每个 action 声明都必须包含有数量足够多的 result 元素, 每个 result 元素分别对应着 action 方法的一个返回值. result 元素可以有下面两个属性 - name: 结果的名字, 必须与 Action 方法的返回值相匹配, 默认值为原创 2017-09-06 16:28:37 · 242 阅读 · 0 评论 -
Struts2-OGNL与值栈
值栈可以从值栈中获取栈对象 使用${productName}获取值,实际上该属性并不在request等域对象中,而是从值栈中获取的。值栈分为两部分Map栈:实际上是OgnlContext类型,是个Map,也是对ActionContext的一个引用。里面保存着各种Map:requestMap,sessionMap,applicationMap,paramtersMap,attr;paramete原创 2017-09-06 21:20:57 · 273 阅读 · 0 评论 -
Hibernate-二级缓存
缓存(Cache): 计算机领域非常通用的概念。它介于应用程序和永久性数据存储源(如硬盘上的文件或者数据库)之间,其作用是降低应用程序直接读写永久性数据存储源的频率,从而提高应用的运行性能。缓存中的数据是数据存储源中数据的拷贝。缓存的物理介质通常是内存Hibernate中的缓存Hibernate中提供了两个级别的缓存 - 第一级别的缓存是 Session 级别的缓存,它是属于事务范围的缓存。这一级原创 2017-08-29 16:14:59 · 262 阅读 · 0 评论 -
装配Bean
2.4声明一个简单的Beanbean class="com.helloworld.HelloWorld">bean> 因为没有给出ID,所以这个Bean将会根据全限定类名来进行命名。在这个例子中,ID为com.helloworld.HelloWorld#0,我们通过ID来引用Bean。因为是全限定类名,猜想Spring是通过反射来创建Bean的,所以我们的Bean需要有一原创 2017-08-18 20:10:36 · 211 阅读 · 0 评论 -
学习总结-Thinking In Java Chapter concurrency(1)
学习总结本篇是对学习【Java编程思想 第 21 章 并发-基本的线程机制】的学习总结。标签: Java Thread启动线程实现Runnablejiek 继承Thread使用Executor//创建一个可根据需要创建新线程的线程池,但是在以前构造的线程可用时将重用它们。 ExecutorService executor1 = Executors.newCachedThreadPool();原创 2017-08-11 12:01:27 · 213 阅读 · 0 评论 -
apache commons-logging与log4j和JDK logger的关系
apache commons-logging与log4j和JDK logger的关系原创 2016-11-28 17:33:45 · 735 阅读 · 0 评论 -
手把手教你写一个Java在线聊天系统
手把手教你写一个Java在线聊天系统标签: Java Toy_Programm Thread Swing/AWT东软2016暑假实训内容,之前写过,这次想按自己思路独立写一遍原创 2016-11-28 17:38:12 · 3805 阅读 · 3 评论 -
Monitor Linux System Using Java-CPU&Disk&Memory&Network
Linux下Java獲取CPU、内存、磁盤IO、网络相應信息這個話題不是一個很新的東西,很多工具都做了這方面的工作。出於個人興趣,我就實作一個小工具,實現了:CPU【user】【sys 】【iowait】的動態讀取Network【Receice】【Transmit】的動態讀取Disk【rkB/s】【wkB/s】的動態讀取Memeory【内存使用率】的動態分析原创 2016-12-26 08:54:47 · 648 阅读 · 0 评论 -
蓝桥杯2013试题-java梅森素数
如果一个数字的所有真因子之和等于自身,则称它为“完全数”或“完美数”例如:6 = 1 + 2 + 328 = 1 + 2 + 4 + 7 + 14早在公元前300多年,欧几里得就给出了判定完全数的定理:若 2^n - 1 是素数,则 2^(n-1) * (2^n - 1) 是完全数。其中 ^ 表示“乘方”运算,乘方的优先级比四则运算高,例如:2^3 = 8, 2 * 2^3 = 16, 2^3-1原创 2017-02-21 17:36:35 · 1334 阅读 · 0 评论 -
蓝桥杯2013试题——振兴中华
标题: 振兴中华小明参加了学校的趣味运动会,其中的一个项目是:跳格子。原创 2017-02-22 22:13:44 · 482 阅读 · 0 评论 -
蓝桥杯2013试题——颠倒的价牌
标题: 颠倒的价牌小李的店里专卖其它店中下架的样品电视机,可称为:样品电视专卖店。其标价都是4位数字(即千元不等)。小李为了标价清晰、方便,使用了预制的类似数码管的标价签,只要用颜色笔涂数字就可以了(参见p1.jpg)。原创 2017-02-22 22:26:45 · 361 阅读 · 0 评论 -
尺取法(2)
尺取法原创 2017-02-24 12:02:07 · 207 阅读 · 0 评论 -
Java 运行时数据区域
个地方个地方个地方公司的风格 程序计数器(Program Counter Register)程序计数器是一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示器。由于Java虚拟机的多线程是通过线程轮流切换并分配处理器执行时间的方式来实现的,在任何一个确定的时刻,一个处理器(对于多核处理器来说是一个内核)都会只执行一条线程中的指令。因此,为了线程切换后能够恢复到正确的执行位置,每条线程都原创 2017-06-22 14:47:11 · 224 阅读 · 0 评论 -
学习总结-Thinking In Java Chapter 8 polymorphism
学习总结本篇是对学习【Java编程思想 第 8 章 多态】的学习总结。 在面向对象的程序设计中,多态是继抽象和继承之后的第三种基本特征 多态的作用是消除类型之间的耦合关系 多态方法调用允许一种类型表现出与其他相似类型之间的区别,只要它们是同一级基类导出来的。这种区别是根据方法行为的不同而表现出来的,虽然这些方法都可以通过同一个基类来调用向上转型对某个对象的引用视为其对基类类型的原创 2017-07-11 21:03:14 · 318 阅读 · 0 评论 -
学习总结-Thinking In Java Chapter 15 generics
学习总结本篇是对学习【Java编程思想 第 15 章 泛型】的学习总结。 一般的类和方法,只能使用具体的类型,要么是基本类型,要么是自定义的类。如果要编写可以应用于多种类型的代码,这种刻板的限制的束缚就会很大。 在面向对象编程语言中,多态算是一种泛化机制。例如,你可以将方法的参数设为一个基类,那么该方法就可以接受从这个基类导出的任意类型作为参数。自Java SE5以来,提出一个重大的变原创 2017-07-16 12:21:19 · 439 阅读 · 0 评论 -
学习总结-Thinking In Java Chapter 13 strings
学习总结本篇是对学习【Java编程思想 第13 章字符串】的学习总结。 可以证明,字符串操作时计算机程序设计中最常见的行为。原创 2017-07-09 20:59:58 · 343 阅读 · 0 评论 -
代码与编程题
标签: Java 编程题1、写一个Singleton出来Singleton模式主要作用是保证在Java应用程序中,一个类Class只有一个实例存在。 一般Singleton模式通常有几种种形式: 第一种形式: 定义一个类,它的构造函数为private的,它有一个static的private的该类变量,在类初始化时实例话,通过一个public的getInstance方法获取对它的引用,继而调用其中原创 2017-07-31 22:10:02 · 2805 阅读 · 0 评论 -
Java基础
Java基础标签原创 2017-07-31 21:41:56 · 201 阅读 · 0 评论 -
Spring 高级装配
Spring 高级装配标签: Spring1.处理自动装配时的歧义性例子: 下面的代码通过注解的方式声明了三个组件分别实现接口Dessert,而setDessert()方法通过@Autowired自动装配。@Autowiredpublic void setDessert(Dessert dessert) { this.dessert = dessert;}@Componenetpub原创 2017-08-17 10:38:02 · 288 阅读 · 0 评论 -
2017今日头条网招在线编程题(部分)
第一题P 为 给 定 的 二 维 平 面 整 数 点 集 。 定 义 P 中 某 点 如 果 × 满 足 P 中 任 意 点 都 不 在 × 的 右 上 方 区 域 内 ( 横 纵 坐标 都 大 于 × ) , 则 称 其 为 “ 最 大 的 ” 。 求 出 所 有 “ 最 大 的 ” 点 的 集 合 。 〈 所 有 点 的 横 坐 标 和 纵 坐 标 都 不 重 复 . 坐 标 轴 范 围 在 [原创 2017-09-07 15:23:24 · 5658 阅读 · 3 评论