自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(66)
  • 资源 (2)
  • 问答 (2)
  • 收藏
  • 关注

转载 Spring事务传播性与隔离性

一、事务传播性什么是事务的传播性事务的传播性一般在事务嵌套时候使用,比如在事务A里面调用了另外一个使用事务的方法,那么这俩个事务是各自作为独立的事务执行提交,还是内层的事务合并到外层的事务一块提交那,这就是事务传播性要确定的问题。下面一一介绍比较常用的事务传播性。首先奉上事务拦截器TransactionInterceptor事务处理流程图:事务的传播属性1、PROPAGATION_REQUIRED...

2018-04-13 13:35:29 281

转载 我曾七次鄙视自己的灵魂

第一次,当它本可进取时,却故作谦卑;第二次,当它在空虚时,用爱欲来填充;第三次,在困难和容易之间,它选择了容易;第四次,它犯了错,却借由别人也会犯错来宽慰自己;第五次,它自由软弱,却把它认为是生命的坚韧;第六次,当它鄙夷一张丑恶的嘴脸时,却不知那正是自己面具中的一副;第七次,它侧身于生活的污泥中,虽不甘心,却又畏首畏尾。...

2018-04-09 14:07:11 216

原创 线程池饱和策略附上测试代码

问:线程池中线程用完了怎么办?答:放到队列中问:那队列也用完了呢?。。。。下面就是饱和策略登场了首先设置饱和策略的方式,就是下面这个了executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());1、Abort策略    这个也是线程池默认的饱和策略,该策略是抛出一个RejectedExecution...

2018-04-09 00:01:13 358

原创 小心linux自动杀死进程的操作(kill -9 pid)

这两天部署在linux上的程序老是莫名其妙的自动停止而且没有任何日志打印,纠结好长时间后发现linux的message.log日志中有一句,如下:因为内存占用过多会杀死一个占用最多的进程Apr 2 21:44:01 shanyao kernel: Out of memory: Kill process 14268 (java) score 378 or sacrifice childApr ...

2018-04-02 22:47:25 10018 3

原创 Linux安装Tomat

#下载wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-8/v8.5.28/bin/apache-tomcat-8.5.28.tar.gz#解压tar -zxvf apache-tomcat-8.5.28.tar.gz#####修改tomcat端口1、打开tomcat配置文件#vi /usr/local/apache-tomcat/conf/se...

2018-03-19 16:45:32 233

原创 Linux上关于防火墙和端口

1、firewalld的基本使用启动: systemctl start firewalld查看状态: systemctl status firewalld 停止: systemctl disable firewalld禁用: systemctl stop firewalld 2.systemctl是CentOS7的服务管理工具中主要的工具,它融合之前service和chkconfig的功能于一体。...

2018-03-19 16:32:14 229

原创 Class.newInstance与同new的到对象的区别

先说一下区别1、使用newInstance可以解耦。使用newInstance的前提是,类已加载并且这个类已连接,这是正是class的静态方法 forName()完成的工作。newInstance实际上是把new         这个方式分解为两步,即,首先调用class的加载方法加载某个类,然后实例化。2、newInstance: 弱类型。低效率。只能调用无参构造。 ne

2018-01-26 23:11:12 10573 5

原创 Idea中Mybatis找不到mapper.xml

把映射文件放到scr/main/java中找不到mapper.xml在pom文件中添加 src/main/java **/*.xml

2018-01-03 22:24:51 1468

原创 线程退出的几种方式

使用volatile类型的域来保存取消状态因为volatile本身特性,每次修改都会立刻刷新到缓存中,这样就可以保证线程任务可以及时看到下面代码示例,在线程运行一秒后取消任务:public class PrimeGenerator implements Runnable{ private final List primes = new ArrayList<>(); private

2017-12-31 00:04:09 5813

原创 CSDN越来越恶心了

做什么都要C币,连提问个问题都必须要,以后不用这个了

2017-12-12 11:19:27 5282 15

转载 有状态和无状态的对象区别

最近在读《java并发编程实战》,看这个之前我还特意先看了《java并发编程艺术》不过读起来还是有点吃力,不只是翻译问题还是我理解能力问题,很多句子读不懂。记录一下遇到的一些基础知识的知识点以便以后查看。第一:基本概念: 1、有状态就是有数据存储功能。有状态对象(Stateful Bean),就是有实例变量的对象,可以保存数据,是非线程安全的。在不同方法调用间不保留任何

2017-11-20 12:56:09 754

原创 利用jstack查看线程运行状态

首先一段代码public class P173ThreadState { public static void main(String[] args) { new Thread(new TimeWaiting(),"TimeWaitingThread").start(); new Thread(new Waiting(),"WaitingThread").start(); //

2017-04-26 23:13:39 6853 1

转载 一个不错的线程讲解系列,记录下来以便学习(最近研究多线程以及并发)

http://www.cnblogs.com/skywang12345/p/java_threads_category.html

2017-04-26 11:33:37 289

转载 for循坏遍历list过程中remove某个元素出错,从源码角度解释

123456789101112public class Test {    public static void main(String[] args)  {        ArrayList list = new ArrayList();        list.add(2);        Iterator iterator = list.iterator();        while(it

2017-04-24 18:32:11 467

转载 线程池,这一篇或许就够了

为什么用线程池创建/销毁线程伴随着系统开销,过于频繁的创建/销毁线程,会很大程度上影响处理效率>例如:>>记创建线程消耗时间T1,执行任务消耗时间T2,销毁线程消耗时间T3>>如果T1+T3>T2,那么是不是说开启一个线程来执行这个任务太不划算了!>>正好,线程池缓存线程,可用已有的闲置线程来执行新任务,避免了T1+T3带来的系统开销线程并发数量过多,抢占系统

2017-04-20 09:32:40 265

原创 以Blob形式存取图片到Oracle

将图片存入Oracle数据库 public int writeBlob(String path,String id) throws SQLException, IOException{ Connection conn = null; PreparedStatement ps =null; conn = getConnetion();

2017-04-19 09:27:29 2626

转载 IntelliJ IDEA使用教程二 项目创建&Tomcat配置

一、创建一般的Java项目上一节中创建的是一个空项目,并没有什么用。二、设置编码每次新建一个项目都需要更改一下编码,目前还没找到好办法三、项目设置四、HelloWorl

2017-04-17 14:25:26 296

原创 抽象BaseAction对进行ModelDriven实现

package com.sinitek.product.action.base;import com.opensymphony.xwork2.ActionSupport;import com.opensymphony.xwork2.ModelDriven;import java.lang.reflect.ParameterizedType;import java.lang.

2017-04-17 13:53:10 534

原创 Struts2之ModelDriven的使用

Java代码 我们可以根据Action属性的不同将它分为两类:Field-Driven(属性驱动)Action和Model-Driven(模型驱动)Action。 一、Field-Driven(属性驱动)Action,Action拥有自己的属性,这些属性一般是Java的基本类型。表单字段直接和Action的属性对应。 二、实现了modelDriven接口可以在action中直接获得例如

2017-04-17 13:42:50 421

原创 又一个因为延迟加载出现的错误Hibernate:could not initialize proxy - no Session

今天利用Hibernate写一个Demo的时候遇到个错误解决,字面意思是没有session,郁闷了老半天,终于发现问题我要查询的数据与其他表有多对一的关联关系,但是延迟加载设置为lazy,也就是说当我使用这个关联数据时才会去查询,而这个时候session早已关闭,就出现了上面的错误。解决方法有三个:       1、把lazy设成false。这个是最简单的办法,个人认为也是比较笨的方法

2017-04-14 15:13:41 263

原创 org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleT

org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister at org.hibernate.persister.internal.PersisterFactoryImpl.create(PersisterFacto

2017-04-13 16:43:17 447

原创 java 大文件以二进制保存到数据库

一、创建表 oracle: create table baoxiandan ( id number(20) not null, fileName varchar2(200) not null, content blob, primary key(id) ); create sequence seq_baoxiandan; 二、Hibe

2017-04-11 15:32:46 1676

转载 Intellij IDEA的Hibernate简单应用

1、创建数据库及其表create database demo;   use demo;CREATE TABLE `user` (  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,  `username` varchar(50) DEFAULT NULL,  `password` varchar(50) D

2017-04-10 23:17:43 395

转载 junit单元测试的java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing问题解决办法

用junit进行单元测试的时候,突然就出现了以下错误:java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClassCond(Class

2017-04-10 17:54:17 879

转载 SQL多表连接查询(详细实例)

本文主要列举两张和三张表来讲述多表连接查询。新建两张表:表1:student  截图如下:表2:course  截图如下:(此时这样建表只是为了演示连接SQL语句,当然实际开发中我们不会这样建表,实际开发中这两个表会有自己不同的主键。)一、外连接外连接可分为:左连接、右连接、完全外连接。1、左连接  left join 或 lef

2017-04-09 22:27:00 216

转载 关于java的深克隆与浅克隆

1.浅复制与深复制概念 ⑴浅复制(浅克隆)     被复制对象的所有变量都含有与原来的对象相同的值,而所有的对其他对象的引用仍然指向原来的对象。换言之,浅复制仅仅复制所考虑的对象,而不复制它所引用的对象。 ⑵深复制(深克隆)     被复制对象的所有变量都含有与原来的对象相同的值,除去那些引用其他对象的变量。那些引用其他对象的变量将指向被复制过的新对象,而不再是原有

2017-04-02 22:29:06 232

转载 java语言复制数组的四种方法

来源于牛客网的一道选择题:JAVA语言的下面几种数组复制方法中,哪个效率最高?A.for循环逐一复制B.System.arraycopyC.System.copyofD.使用clone方法效率:System.arraycopy > clone > Arrays.copyOf > for循环1、System.arraycop

2017-03-26 23:17:50 292

转载 写出float x 与“零值”比较的if语句

写出float  x 与“零值”比较的if语句请写出 float  x 与“零值”比较的 if 语句: const float EPSINON = 0.00001; if ((x >= - EPSINON) && (x  不可将浮点变量用“==”或“!=”与数字比较,应该设法转化成“>=”或“EPSINON应该是一个很小的值吧   因为计算机在处理浮点数的时候是有误差的

2017-03-26 23:08:22 650

转载 Spring @Configuration 使用

虽然 2.0 版本发布以来,Spring 陆续提供了十多个注解,但是提供的这些注解只是为了在某些情况下简化 XML 的配置,并非要取代 XML 配置方式。这一点可以从 Spring IoC 容器的初始化类可以看出:ApplicationContext 接口的最常用的实现类是 ClassPathXmlApplicationContext 和 FileSystemXmlApplicationConte

2017-03-22 16:32:04 255

原创 Bean的生命周期2

bean生成过程,图解生命周期在spring中,从BeanFactory或 ApplicationContext取得的实例为Singleton,也就是预设为每一个Bean的别名只能维持一个实例,而不是每次都产生一个新的对象使用Singleton模式产生单一实例,对单线程的程序说并不会有什么问题,但对于多线程的程序,就必须注意安全(Thread-safe)的议题,防止多个线程同时存取共享

2017-03-22 15:25:35 180

转载 BeanNameAware接口和BeanFactoryAware接口

迄今为止,所接触到的Bean都是“无知觉”的,就像黑客帝国中机械工厂里面“养殖”的人类,他们虽然能完成一定的功能,但是根本不知道自己在工厂(BeanFactory)中的代号(id),或者自己是在哪个工厂(BeanFactory的引用)中沉睡。所以,本节的目的就是要创造出一个尼奥一样的Bean,让他知道自己在工厂中的id和自己原来躺在哪个工厂中。这里,称之为,Bean对Spring有知觉。但

2017-03-22 12:54:28 398

转载 Spring IOC -bean对象的生命周期详解

生命周期执行的过程如下:1)spring对bean进行实例化,默认bean是单例2)spring对bean进行依赖注入3)如果bean实现了BeanNameAware接口,spring将bean的id传给setBeanName()方法4)如果bean实现了BeanFactoryAware接口,spring将调用setBeanFactory方法,将BeanFactory实例传

2017-03-22 12:44:40 359

转载 单例模式的七种写法

转载请注明出处:http://cantellow.iteye.com/blog/838473 第一种(懒汉,线程不安全): Java代码  public class Singleton {      private static Singleton instance;      private Singleton (){}        public stati

2017-03-19 21:54:51 255

转载 Spring 事物机制总结

Spring两种事物处理机制,一是声明式事物,二是编程式事物声明式事物1)Spring的声明式事务管理在底层是建立在AOP的基础之上的。其本质是对方法前后进行拦截,然后在目标方法开始之前创建或者加入一个事务,在执行完目标方法之后根据执行情况提交或者回滚事务。声明式事务最大的优点就是不需要通过编程的方式管理事务,这样就不需要在业务逻辑代码中掺杂事务管理的代码,只需在配置文件中做相

2017-03-19 21:47:32 165

转载 Spring中事务的传播行为

7个传播行为,4个隔离级别。Spring事务的传播行为和隔离级别[transaction behaviorand isolatedlevel]Spring中事务的定义:Propagation(key属性确定代理应该给哪个方法增加事务行为。这样的属性最重要的部份是传播行为。)有以下选项可供使用:PROPAGATION_REQUIRED--支持当前事务,如果当前没有事务

2017-03-19 17:25:51 173

原创 自动拆装箱

关于拆装箱可看:http://write.blog.csdn.net/postlist下面代码的打印结果:public class Test2{ public void add(Byte b) { b = b++; } public void test() { Byte a = 127; Byte

2017-03-18 17:30:24 306

转载 java中自动拆装箱

4.2 自动装箱和拆箱基本数据(Primitive)类型的自动装箱(autoboxing)、拆箱(unboxing)是自J2SE 5.0开始提供的功能。虽然为您打包基本数据类型提供了方便,但提供方便的同时表示隐藏了细节,建议在能够区分基本数据类型与对象的差别时再使用。4.2.1 autoboxing和unboxing在Java中,所有要处理的东西几乎都是对象(Object),例如之前所

2017-03-18 17:29:05 326

原创 初始化类时的加载顺序

1.父类静态代码块 (  java虚拟机加载类时,就会执行该块代码,故只执行一次)2 .子类静态代码块 (  java虚拟机加载类时,就会执行该块代码,故只执行一次)3. 父类属性对象初始化4.父类普通代码块(每次new,每次执行 )5. 父类构造函数(每次new,每次执行)6.子 类 属性对象初始化7.子类普通代码块(每次new,每次执行

2017-03-18 17:09:00 256

转载 实例方法和类方法

前面提到成员变量可分为实例变量和类变量。同样,类中的方法也可分为实例方法和类方法。在方法前面加上static就成了类方法,例如:[java] view plain copypublic class Example {      float a, b;        void sum(float x, float y)     

2017-03-18 16:43:17 537

转载 Java中堆内存和栈内存详解

Java把内存分成两种,一种叫做栈内存,一种叫做堆内存在函数中定义的一些基本类型的变量和对象的引用变量都是在函数的栈内存中分配。当在一段代码块中定义一个变量时,java就在栈中为这个变量分配内存空间,当超过变量的作用域后,java会自动释放掉为该变量分配的内存空间,该内存空间可以立刻被另作他用。堆内存用于存放由new创建的对象和数组。在堆中分配的内存,由java虚拟机自动垃圾回收器

2017-03-18 13:32:22 352

opt_win64_21最新

Erlang(['ə:læŋ])是一种通用的面向并发的编程语言,它由瑞典电信设备制造商爱立信所辖的CS-Lab开发,目的是创造一种可以应对大规模并发活动的编程语言和运行环境。Erlang问世于1987年,经过十年的发展,于1998年发布开源版本。Erlang是运行于虚拟机的解释性语言,但是现在也包含有乌普萨拉大学高性能Erlang计划(HiPE)开发的本地代码编译器,自R11B-4版本开始,Erlang也开始支持脚本式解释器。在编程范型上,Erlang属于多重范型编程语言,涵盖函数式、并发式及分布式。顺序执行的Erlang是一个及早求值, 单次赋值和动态类型的函数式编程语言。 Erlang是一个结构化,动态类型编程语言,内建并行计算支持。最初是由爱立信专门为通信应用设计的,比如控制交换机或者变换协议等,因此非常适 合于构建分布式,实时软并行计算系统。使用Erlang编写出的应用运行时通常由成千上万个轻量级进程组成,并通过消息传递相互通讯。进程间上下文切换对于Erlang来说仅仅 只是一两个环节,比起C程序的线程切换要高效得多得多了。 使用Erlang来编写分布式应用要简单的多,因为它的分布式机制是透明的:对于程序来说并不知道自己是在分布式运行。Erlang运行时环境是一个虚拟机,有点像Java虚拟机,这样代码一经编译,同样可以随处运行。它的运行时系统甚至允许代码在不被中断 的情况下更新。另外如果需要更高效的话,字节代码也可以编译成本地代码运行。

2018-08-08

分别使用Hibernate和JDBC操作数据库

分别使用Hibernate和JDBC操作数据库

2017-04-17

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

TA关注的人

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