自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 线程的概念:什么是线程?

1. 什么是线程进程概念:进程是代码在数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位。线程概念:线程是进程的一个执行路径,一个进程中至少有一个线程,进程中的多个线程共享进程的资源。程序计数器:是一块内存区域,用来记录线程当前要执行的指令地址。小知识:为何程序计数器线程私有:我们已知线程是占用CPU执行的基本单位,而CPU一般是使用时间片轮转方式让线程轮询占用。所以当前线程CPU时间片用完后,要让出CPU,等下次轮到自己的时候继续执行。程序计数器就是为了记录该线程让出CPU时的执

2020-07-09 20:16:16 10860

原创 @Reference注解注入为null

dubbo框架下@Reference注解应是如下包:没import com.alibaba.dubbo.config.annotation.Reference;jdk和spring框架也都提供了@Reference注解,但不适用于远程服务调用下的注入。

2020-06-23 17:47:04 3211 1

原创 Synchronized与Lock的区别

synchronized与Lock的区别synchronized是java内置关键字,属于jvm层面;Lock是一个接口(常用的实现类为ReentrantLock);synchronized无法判断是否获取锁的状态,Lock可以判断是否获取到锁;synchronized会自动释放锁(a 线程执行完同步代码会释放锁 ,b 线程执行过程中发生异常会释放锁);Lock需在finally中手工释放锁(unlock()方法释放锁),否则容易造成线程死锁;用synchronized关键字的两个线程1和线程2,

2020-06-01 21:28:32 151

原创 Android开发, 子容器/组件在RelativeLayout和LinearLayout中居中

这里说的是在子容器/组件中的设置。 如果父容器是 LinearLayout的话,在子容器/组件中的设置应为android:layout_gravity="center"如果父容器是 RelativeLayout的话,在子容器/组件中的设置应为android:layout_centerInParent="true"先简单记录下,具体的区别日后再研究。...

2018-03-22 09:20:48 871 1

原创 Java算法-冒泡排序

冒泡排序算法废话不多说,先上算法代码。算法代码//冒泡排序public class BubbleSort{ public void sort(int[] a){ int temp = 0; //temp 临时存储数据,用于两个数据的替换 //第一个for循环,控制比较到第几位。 //例如第一次循环,会控制i到倒数...

2018-03-21 10:14:48 201

原创 报错:No Session found for current thread

No Session found for current thread:没有找到当前线程的会话.这个问题我是在整合Spring时出现的。问题很好解决,在Hibernate的配置文件hibernate.cfg.xml中加入这样一条配置就好。<property name="current_session_context_class">thread</property>Good Job!!!

2017-01-11 16:52:26 480 1

原创 Spring中,将request和response由servlet传入service

从servlet将对应的request和response传到service层。在开发中,为了让程序更加美观复用,我们也许会只使用一个Servlet类。然后再这一个Servlet中进行 任务的分发 ,即通过switch case,来分情况调用不同的Service层。这时候,我们需要将请求传递到service层。在spring之前,我们会构造Service(request,response)这样的构造

2017-01-11 16:43:51 5275

原创 Struts2 拦截器Interceptor实现防止恶意登录(登录限制)

一般网站为了防止有人恶意登录(未登录就直接访问后台页面),都会用拦截器Interceptor来限制登录。下边是一个拦截器登录限制的一个小例子,帮助理解和应用拦截器。在拦截器中拦截的依据就是查看session作用域中有没有用户的信息。有的话,通过;没有则根据需要进行处理。首先要理解拦截器在登录限制里所起到的作用。拦截器拦截的是action请求。所以应有这样一个流程。登录页面-->LoginActi

2017-01-04 17:31:49 4680 3

原创 从Servlet转发页面到iframe

在练习中,想把经过servlet转发的页面显示到指定的iframe中,但是发现经过servlet转发后都直接更改了地址栏的地址,使得页面不能按理想方式显示。 其实问题很简单,只要我们在form表单中添加一个target属性就可以解决。<form action="/servlet" method="post" target="这里填iframe的name值" ></form>这样,经过servle

2016-11-29 14:33:03 3921 6

原创 Tomcat报错:LifecycleException

先贴错误java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/DriveSchool1.0]] at

2016-11-12 17:24:58 4965

原创 谷歌浏览器扩展程序-实现按钮自动连续点击

谷歌的扩展程序非常简单。必要的文件只有manifest.json文件。在该文件中声明了扩展的名称、版本、权限、设置选项和其他的一些和扩展相关的元数据。我所做的扩展实现的主要功能是按钮自动连续点击。该扩展最初的想法来自于英雄联盟一个领取头像的活动,该活动要求玩家连续点击网页上一个按钮500下,完成500个小兵的献祭,由此我尝试用扩展完成了该操作。由于现在已经没有那个活动页面,所以我将程序改成连续点

2016-11-01 13:52:15 20746 2

原创 Iterator递归迭代实例。剪切文件并删除文件夹

该实例 用到的为 递归 和迭代。 递归:程序调用自身。在下面的实例中两种方法都用到的递归。 迭代:重复执行小段代码。下面使用的是增强for循环进行迭代。 如图,由于文件夹并没有标明里边具体内容,我想查找里边的资料非常不方便 于是我写了一个小程序,实现了将里边的内容取出,并把这些文件夹删除。 下面是程序执行后的结果。 下面贴源码,主要用到的就是递归和 迭代。/* *该方法实现

2016-08-22 13:10:28 791 1

空空如也

空空如也

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

TA关注的人

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