- 博客(14)
- 收藏
- 关注
原创 常用Linux指令
查看所有tomcat进程:ps -ef|grep tomcat查看:执行ps -ef |grep tomcat 输出:*** 5144 。。。等等.Bootstrap start说明tomcat已经正常启动, 5144 就为进程号 pid = 5144杀死:kill -9 5144打开与关闭tomcat:启动:一般是执行sh tomcat/bin/startup.sh停止:一般是执行sh tomcat/bin/shutdown.sh脚本命令实时查看tomcat运行日志先切换到:cd
2021-10-11 10:44:21 97
原创 git教程学习
!!转自狂神!!1.版本控制1.1什么是版本控制版本控制(Revision control)是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术。实现跨区域多人协同开发追踪和记载一个或者多个文件的历史记录组织和保护你的源代码和文档统计工作量并行开发、提高开发效率跟踪记录整个软件的开发过程减轻开发人员的负担,节省时间,同时降低人为错误简单说就是用于管理多人协同开发项目的技术。没有进行版本控制或者版本控制本身缺
2021-10-09 18:09:31 246
原创 Java反射获取类,方法
获取Class类的实例若已知具体的类,通过类的class属性获取,该方法最为安全可靠,程序性能最高。Class clazz = Person.class;已知某个类的实例,调用该实例的getClass()方法获取Class对象。Class clazz = person.getClass();已知一个类的全类名,且该类在类路径下,可通过Class类的静态方法forName()获取,可抛出ClassNotFoundException。Class clazz = Class.forName
2021-06-02 15:21:48 1047
原创 Java注解
元注解元注解的作用就是负责注解其他注解,Java定义了4个标准的meta-annotation类型,他们被用来提供对其他annotation类型作说明。这些类型的它们所支持的类在java.lang.annotation包中可以找到。(@Target,@Retention,@Documented,@Inherited)@Target:用于描述注解的使用范围(既被描述的注解可以用在什么地方)@Retention:表示需要在什么级别保存该注解信息,用于描述注解的生命周期。(SOURCE<CLAS
2021-06-02 11:03:08 98
原创 Java线程通信
线程通信1.应用场景:生产者和消费者问题假设仓库中只能存放一件产品,生产者将生产出来的产品放入仓库,消费者将仓库中产品取出消费。如果仓库中没有产品,则生产者将产品放入仓库,否则停止生产并等待,直到仓库中的产品被消费者取走为止。如果仓库中放有产品,则消费者可以将产品取走消费,否则停止消费并等待,直到仓库中再次放入产品为止。2.这是一个线程同步问题,生产者和消费者共享同一个资源,并且生产者和消费者之间相互依赖,互为条件对于生产者,没有生产产品之前,要通知消费者等待,而生产了产品之后,又需要马上
2021-05-19 16:24:34 77
原创 Java中synchronization和Lock对比
synchronized与Lock的对比Lock是显式锁(手动开启和关闭锁,别忘记关锁哦)synchronized是隐式锁,出了作用域自动释放。Lock只有代码块锁,synchronization有代码块锁和方法锁。使用Lock锁,JVM将花费较少的时间来调度线程,性能更好,并且具有更好的扩展性(提供更多的子类,如ReentrantLock可重入)。Lock可以知道线程有没有成功获取到锁。这个是synchronized无法办到的。Lock不是Java语言内置的,synchronized是Java
2021-05-19 15:21:13 212
原创 Java线程死锁
什么是死锁 所谓死锁,是指多个进程在运行过程中因争夺资源而造成的一种僵局,当进程处于这种僵持状态时,若无外力作用,它们都将无法再向前推进。死锁产生的4个必要条件互斥条件:进程要求对所分配的资源进行排它性控制,即在一段时间内某资源仅为一进程所占用请求和保持条件:当进程因请求资源而阻塞时,对已获得的资源保持不放。不剥夺条件:进程已获得的资源在未使用完之前,不能剥夺,只能在使用完时由自己释放。环路等待条件:在发生死锁时,必然存在一个进程–资源的环形链。预防死锁资源一次性分配:一次性分配所
2021-05-19 14:52:45 68
原创 JavaDoc
Javadoc命令是用来生成自己的API文档的!!参数信息@author 作者名@version 版本号@since 指明需要最早使用的jdk版本@param 参数名@return 返回值情况@throws 异常抛出情况
2021-05-19 14:24:29 74
原创 SQL中分组,排序,分组排序
1.分组(group by)select子句后的任一非聚合函数字段都应来源于group by 分组语句后,否则语法会编译不通过。当在一个SQL中同时使用where和group by和having子句时,其执行顺序为:where>group by>having。同时where子句作用于表或者视图,having子句作用于组,having子句必须作用在group by之后。2.排序(order by)根据字段排序 ASC升/DESC降3.分组排序row_number() ov
2021-05-10 17:55:04 18953 2
原创 JAVA中RandomAccess接口
RandomAccess接口 RandomAccess是一个标记接口,实现该接口表示支持快速访问。这是一个空接口,没有任何方法。 当实现该接口时,说明支持快速访问。即:for (int i=0, n=list.size(); i<n; i++)list.get(i);要比for (Iterator i=list.iterator(); i.hasNext(); )i.next();访问速度快。当没有实现该接口时,for (int i=0, n=list.size();
2021-04-30 16:03:08 343 1
原创 有关指针的数据类型
有关指针的数据类型定义含义int i;定义整形变量iint *p;p为指向整型数据的指针变量int a[n];定义整形数组a,它有n个元素int *p[n];定义指针数组p,他由n个指向整型数据的指针元素组成int (*p)[n];p为指向含有n个元素的一维数组的指针变量int f();f为带回整型函数值的函数int *p();p为带回一个指针的函数,该指针指向整形数据int (*p)();p为指向函数的指针,该
2021-04-20 19:33:30 274
原创 常用Dos命令
常用Dos命令盘符切换: D:查看当前目录下的所有文件: dir切换目录: cd(change directory)返回上一层: cd…清理屏幕: cls(clear screen)退出终端: exit查看电脑IP: ipconfigping命令(查看服务器IP): ping www.baidu.com图片解压出文件: copy /b 1.jpg+2.rar 3.jpg文件操作:md (创建目录)rd(删除目录)cd
2021-04-19 14:14:45 783 7
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人