-
透过 ReentrantLock 分析 AQS 的实现原理
所属栏目:[Java] 日期:2020-12-15 热度:133
对于 Java 开发者来说,都会碰到多线程访问公共资源的情况,这时候,往往都是通过加锁来保证访问资源结果的正确性。在 java 中通常采用下面两种方式来解决加锁得问题: synchronized 关键字; Java.util.concurrent.locks 包中的 locks 包下面的锁(Lock 接[详细]
-
class, classloder, dex 详解
所属栏目:[Java] 日期:2020-12-15 热度:75
class与dex文件 什么是class文件 class文件是一种能够被JVM识别,加载并且执行的文件格式。 ? class文件的作用 class文件的作用是记录一个类文件的所有信息。 例如记住了当前类的引用this、父类super等等。class文件记录的信息往往比java文件多。 ? class文[详细]
-
JVM中 Class 文件分析 JVM基础系列第5讲:字节码文件
所属栏目:[Java] 日期:2020-12-15 热度:147
Java 虚拟机中定义的 Class 文件格式。每一个 Class 文件都对应着唯一一个类 或接口的定义信息,但是相对地,类或接口并不一定都得定义在文件里(譬如类或接口也可以通过 类加载器直接生成)。本章中,我们只是通俗地将任意一个有效的类或接口所应当满足的格式[详细]
-
java 考试易考识记题目(一)
所属栏目:[Java] 日期:2020-12-15 热度:55
笔者擅长 C# 语言,4月份要考试,学习 JAVA 是为了考试罢了。 如何在最短时间内学习 JAVA 基础语法和通过考试考核呢~ 学习 JAVA ,要为了应付考试,判断、循环这部分,C、C++、C#、JAVA 都是一样的,不需要重复学习。 基础语法上,C++ 跟 C# 接近,例如命名[详细]
-
java GUI 快速入门
所属栏目:[Java] 日期:2020-12-15 热度:86
java 中编写 GUI 有两中工具包,分别为 AWT、Swing。 Swing 是 AWT 的拓展,Swing 具有比 AWT 丰富的组件和方法。 AWT 和 Swing 都能跨平台使用;AWT 会随着不同的系统平台,UI 样式会有所变化,Swing 则不会,设计完毕后在所有平台下样式一致。 import java[详细]
-
【SpringBoot】03.SpringBoot整合Servlet的两种方式
所属栏目:[Java] 日期:2020-12-15 热度:88
SpringBoot整合Servlet的两种方式: 1. 通过注解扫描完成Servlet组件注册 新建Servlet类继承 HttpServlet 重写超类 doGet 方法 在该类使用注解 @WebServlet @WebServlet(name="FirstServlet",urlPatterns="/first")public class FirstServlet extends HttpSe[详细]
-
设计模式——单例模式
所属栏目:[Java] 日期:2020-12-15 热度:140
设计模式(Design Pattern) 是一套被反复使用、多数人知晓的、经过分类编目、代码设计经验的总结。 目的 让代码更容易被他人理解、保证代码可靠性。 ? 单例模式: 应用场合:有些对象我们只需要一个,比如:配置文件、工具类、线程池、缓存、日志对象等。如[详细]
-
【SpringBoot】06.SpringBoot访问静态资源
所属栏目:[Java] 日期:2020-12-15 热度:76
SpringBoot访问静态资源 1.SpringBoot从classpath/static的目录 目录名称必须是static 启动项目,访问http://localhost:8080/0101.jpg 可以访问! 也可以在static中建立别的文件夹,例如:images ,访问的时候需要加上路径:http://localhost:8080/images/xx[详细]
-
【SpringBoot】05.SpringBoot整合Listener的两种方式
所属栏目:[Java] 日期:2020-12-15 热度:181
SpringBoot整合Listener的两种方式: 1.通过注解扫描完成Listener组件的注册 创建一个类实现 ServletContextListener (具体实现哪个Listener根据情况来判断) 在类上加入注解 @WebListener 重写 contextInitialized() 与 contextDestroyed() 方法 编写启动类[详细]
-
【SpringBoot】08.SpringBoot整合jsp
所属栏目:[Java] 日期:2020-12-15 热度:56
SpringBoot整合jsp 1.修改pom文件加入两个坐标 jstl标签库 和 jasper project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apa[详细]
-
【SpringBoot】04.SpringBoot整合Filter的两种方式
所属栏目:[Java] 日期:2020-12-15 热度:55
SpringBoot整合Filter过滤器的两种方式: 1.通过扫描注解完成Filter组件注册 创建一个类,实现Filter接口,实现doFilter()方法 在该类使用注解 @WebFilter ,设置 filterName 与 urlPatterns 在doFilter中编写代码 编写启动类:增加注解 @ServletComponentSca[详细]
-
【SpringBoot】01.创建Springboot项目及启动器
所属栏目:[Java] 日期:2020-12-15 热度:57
创建Springboot项目及启动器 1.创建一个简单maven项目 SpringBoot2.0以下需要使用JDK1.7 ,2.0以上使用JDK1.8 如果需要修改JDK的版本需要打开pom文件: !-- 修改JDK版本 -- properties java.version1.8/java.version /properties !-- 然后更新项目 -- 2.注入[详细]
-
【SpringBoot】02.编写HelloWorld
所属栏目:[Java] 日期:2020-12-15 热度:182
1.编写一个返回HelloWorld的Controller @Controllerpublic class HelloWorld { @ResponseBody@RequestMapping("/hello")public String helloWorld() {return "HelloWorld";}} 2.启动SpringBoot 2.1编写启动类 在类上加入@SpringBootApplication 如果某个类中[详细]
-
【SpringBoot】07.SpringBoot文件上传
所属栏目:[Java] 日期:2020-12-15 热度:157
SpringBoot文件上传 1.编写html文件在classpath下的static中 !DOCTYPE htmlhtmlheadmeta charset="UTF-8"title文件上传/title/headbodyform action="fileUploadController" method="post" enctype="multipart/form-data"上传文件:input type="file" name="f[详细]
-
与、或、异或的运算
所属栏目:[Java] 日期:2020-12-15 热度:67
与运算 (“? ”) 参与运算的两个数据,按照二进制位进行“与运算”。 运算规则 :00=0;???01=0;? ?10=0;? ? 11=1; 即:两位同时为1,则值为1。否则为0 例如:6 7 = 110 111 = 110 = 6 8 3 = 1000 11 = 0 = 0 或运算 (“ | ”) 参与运算的两个数据,按照[详细]
-
【SpringCloud】01.常见软件架构的区别
所属栏目:[Java] 日期:2020-12-15 热度:55
MVC、RPC、SOA、微服务架构的区别: 一、MVC架构 MVC架构就是一种单体架构。 代表技术:Struts2、SpringMVC、Spring、Mybatis等等。 二、RPC架构 RPC(Remote Procedure Call):远程过程调用。它是一种通过网络从远程计算机程序上请求服务,而不需要了解底[详细]
-
自己动手写一个持久层框架
所属栏目:[Java] 日期:2020-12-15 热度:61
目录 0. 前言 and Flag 1. JDBC问题分析 问题分析: 解决思路: 2. 自定义框架思路分析 使用端(项目): 自定义持久层框架(工程): 3. 创建表并编写测试类 1. 创建一个Maven项目—— Ipersistence_test 2. 在resource中创建sqlMapConfig.xml 和 UserMappe[详细]
-
【SpringCloud】05.Eureka的高可用
所属栏目:[Java] 日期:2020-12-15 热度:68
1.简单情况 2.为了达到Eureka的高可用,可以多个Eureka互相注册。 3.我们需要修改两处: Eureka Client Eureka Server 3.1 Eureka Client 在Client的配置文件中,分别配置所有的Eureka Server地址 eureka: client: service-url: defaultZone: http://192.168[详细]
-
【SpringBoot】13. logback日志记录
所属栏目:[Java] 日期:2020-12-15 热度:174
logback日志记录 Spring Boot 1.5.19.RELEASE 1.导入相关jar包 在spring-boot-starter-web 中已经包含 2.添加logback.xml配置文件 ?xml version="1.0" encoding="UTF-8" ? configuration!--定义日志文件的存储地址 勿在 LogBack 的配置中使用相对路径-- prop[详细]
-
【SpringBoot】11-1.Springboot整合Springmvc+Mybatis增删改查操
所属栏目:[Java] 日期:2020-12-15 热度:52
整合过程:https://www.isdxh.com/68.html 一、增——增加用户 1.创建实体类 package com.dxh.pojo;public class Users {private Integer id;private String name;private Integer age;public Integer getId() {return id;}public void setId(Integer id) {t[详细]
-
【SpringBoot】15. Spring Boot核心注解
所属栏目:[Java] 日期:2020-12-15 热度:145
Spring Boot核心注解 1 @SpringBootApplication 代表是Spring Boot启动的类 2 @SpringBootConfiguration 通过bean对象来获取配置信息 (被@Configuration修饰所以才能够获取配置信息) 3 @Configuration 通过对 bean 对象的操作替代spring中的xml文件 4 @Ena[详细]
-
【SpringCloud】07.应用间的通信
所属栏目:[Java] 日期:2020-12-15 热度:162
应用间通信 HTTP vs RPC Spring Cloud (HTTP) Dubbo (RPC) 1.SpringCloud中服务间两种restful调用方式 RestTemplate Feign 方式一、RestTemplate:是一个http客户端 RestTemplate有三种方式 1.直接写url :http://localhost:8080/msg 使用 restTemplate.[详细]
-
【SpringCloud】03.微服务的设计原则
所属栏目:[Java] 日期:2020-12-15 热度:88
微服务的设计原则: 一、AKF拆分原则 业界对于可扩展的系统架构设计有一个朴素的理念:通过加机器就可以解决容量和可用性问题(如果一台不行就两台)。 Y轴(功能)——关注应用中功能划分,基于不同的业务拆分 X轴(水平扩展)——关注水平扩展,也就是“加[详细]
-
Mybatis动态SQL
所属栏目:[Java] 日期:2020-12-15 热度:142
目录 动态SQL 什么是动态SQL? IF标签: 如何使用? 测试: foreach标签: 如何使用? 测试: 最后 动态SQL 什么是动态SQL? MyBatis的官方文档中是这样介绍的? 动态 SQL 是 MyBatis 的强大特性之一。如果你使用过 JDBC 或其它类似的框架,你应该能理解根据[详细]
-
【SpringBoot】16. 如何监控springboot的健康状况
所属栏目:[Java] 日期:2020-12-15 热度:180
如何监控springboot的健康状况 SpringBoot1.5.19.RELEASE 一、使用Actuator检查与监控 actuaotr是spring boot项目中非常强大的一个功能,有助于对应用程序进行监控和管理,通过restful api请求来监管、审计、收集应用的运行情况,针对微服务而言它是必不可少[详细]