- 博客(24)
- 收藏
- 关注
原创 git常用命令
初始化用户名和邮箱git config --global user.name “自已的名字”git config --global user.email “自已的邮箱地址”配置用户git config --global user.name gxqgit config --global user.email 644346732@qq.comgit config --list在空的工程中通过git base here命令窗口初始化仓库git init查看这些文件在git当中的状态 git s
2021-08-10 00:01:16
154
原创 反射和类加载
当调用Java命令运行某个程序时,该命令将会启动一个Java虚拟机进程,不管该Java程序有多么复杂,该程序启动了多少个线程,它们都处于Java虚拟机进程里。即同一个JVM的所有线程、所有变量都处于同一个进程里,它们都使用该JVM进程的内存区,当系统出现以下几种情况时,JVM进程将会被终止:1、程序运行到最后正常结束2、程序运行到使用System.exit()或Runtime.getRuntime().exit()代码结束程序3、程序进行过程中遇到未捕获的异常或错误而结束4、程序所在平台强制结束了J
2021-08-09 21:55:07
159
原创 网络编程TCP和UDP
网络编程:局域网——城域网——广域网IP地址、端口IP地址:网络每个物理节点的唯一标识。类似于一栋楼的编号。IP:Internet Protocol :负责为网络上每个物理节点编号。IPv4:32位的2进制数,为了方便机器,于是将32位的IP地址分为4节(每节8位),每节可以指定0~255的数,每节对应平时所说的IP地址的一位数。IPv6:128位的2进制数,支持更多的IP地址。端口:一个物理设备上可能有很多个网络程序运行,为了让数据能准确区分到底送达物理节点上哪个程序,于是又给这写程序分配编
2021-08-09 21:54:15
179
原创 IO和NIO
Java的IO是通过java.io包下的类和接口来支持。File类:可以代表与平台无关的文件或目录。文件和目录都可以使用File来操作,File不能访问文件内容本身,访问内容本身需要使用输入/输出流。File类使用文件路径字符串来创建File实例,可以是绝对路径也可以是相对路径,默认情况下,系统总是一句用户的工作路径来解释相对路径,该路径由系统属性“user.dir”执行,通常也就是运行Java虚拟机所在的路径。该文件类提供了非常多的方法:P680-681页文件过滤器:File类的list方法可以接受
2021-08-09 21:53:42
152
原创 常用Java注解
注解理解注解(Annotation):用法:@注解注解本身是添加到Java源程序上,但它本身对Java程序并不会产生影响,它只用于提供额外的信息,它需要额外的注解处理工具(APT)来读取,并根据注解做进一步的处理。——在极端情况下,即使对于同一个注解,在不同的注解处理工具中,它会产生不同的作用。【总结】注解是添加到源程序中的额外信息,而注解起什么作用,完全取决于注解的处理工具(APT)JDK在java.lang包下,Java内置几个常用注解:这几个常用注解,由于是Java本身提供的,因此java
2021-08-09 21:52:51
233
原创 Mysql和JDBC
Linux操作mysql:服务器端安装: sudo apt-get install mysql-server启动服务:sudo service mysql start查看进程中是否存在mysql服务:ps -ajx|grep mysqlps查看当前系统进程 -a显示所有用户进程 - j任务格式显示进程 -x显示无控制终端进程停止服务:sudo service mysql stop重启:sudo sevice mysql restartMySQL配置文件配置文件路径:/etc/mysql
2021-08-09 21:51:58
677
原创 泛型和异常类
泛型:(generic)不用泛型两个严重的问题A、集合不能记住元素的类型,因此集合元素被取出默认被当成Object类型,因此总是需要强制类型转换。B、集合不能记住元素的类型,因此程序可能不小心将任意类型的元素添加到集合中。简而言之,其他任意的类可能都存在泛型问题。所以就需要引入泛型。在集合中使用泛型:A、声明集合变量时:集合类型需要用尖括号<>来指定元素的类型B、创建集合对象时:可使用菱形语法。泛型的本质:1、java并不是只有集合类才能支持泛型,所有类都有可能支持泛型——包括
2021-08-09 21:50:55
268
原创 Java集合类
java的集合类:数组可以保存基本数据和对象(只保存对象的引用变量)但数组长度是不可变的,只能保存数量不变的数据,集合只能保存对象(同样只保存对象的引用变量),长度可变,可以保存数量变化的数据和具有映射关系的数据(关联关系 key-value)集合的根接口:CollectionCollection就是体现上面介绍作为容器的方法。遍历集合:1、用foreach循环遍历2、用Iterator遍历器遍历A、hasNext():判断是否有下一个。B、Next()如果有,取出下一个C、remove
2021-08-09 21:49:22
129
原创 基础类库和垃圾回收机制
第七章Java的入口方法:public static void main(String[] args)——该方法由JVM(java虚拟机)调用Public:访问权限修饰符,说明该方法可以在任何地方被调用。为了让JVM能调用该方法,必须把该方法暴露。Static修饰符,说明该方法直接用类调用—JVM直接用类来调用该方法String agrs ——这个数组用于接收用户输入的参数。编译java源文件后,运行时使用:java 类名 参数1 参数2 参数3…访问数组的长度:Args.length 访问字
2021-08-09 21:47:42
103
原创 数组与面向对象
Java类型:基本类型:8个引用类型:数组、类、接口、枚举数组:可以一次定义,就可以得到多个类型相同,功能相似的变量。可以通过数组元素的索引来访问数组元素,包括为数组元素赋值和取出数组元素的值。数组内的元素具有相同的数据类型或有继承关系的数据类型,一个数组只能存储一种数据类型的数据,而不能存储多种数据类型的数据。一旦数组的初始化完成,数组在内存中所占的空间将被固定下来,因此数组的长度是不可改变的,即使数组元素的数据清空,它所占的空间依然被保留,长度依然不变。数组,在所有数据结构中是存、取数据最快的
2021-08-09 21:47:01
318
原创 Java基本语法和规范
Java基本语法和规范语言按程序的执行方式分为编译型和解释型两种。编译型:需要使用专门的编译器,针对特定平台(操作系统)翻译成可被该平台执行的机器码,编译生成的可执行程序可以脱离开发环境在特定平台独立运行,运行效率高,但因为编译型语言的程序被编译成特定平台的机器码,所以无法转移到其他平台运行。如:C C++解释型:相当于把编译和解释过程同时完成,每次执行程序都进行一次编译且解释执行,所以执行效率较低。优势:跨平台容易,只需提供特定平台的解释器即可,如:Python javascriptjava语言
2021-08-09 21:45:59
489
原创 SpringBoot整合Thymeleaf
Thymeleaf概述:Thymeleaf 是一个跟 Velocity、FreeMarker 类似的模板引擎,它可以完全替代 JSPThymeleaf的使用可以查看网站:****[https://fanlychie.github.io/post/thymeleaf.html]**特点:1、动静结合:Thymeleaf 在有网络和无网络的环境下皆可运行它可以让美工在浏览器查看页面的静态效果,也可以让程序员在服务器查看带数据的动态页面效果,这是由于它支持 html 原型,然后在 html 标签里增加额
2021-04-21 01:50:15
330
原创 Dubbo + Zookeeper
Dubbo + ZookeeperDubbox:概述:Dubbo是阿里巴巴内部使用的分布式业务框架,2012年由阿里巴巴开源。2018.2月,阿里将Dubbo捐献给Apache基金会,Dubbo成为Apache孵化器项目。dubbox是基于Rpc远程过程调用协议,rcp是JDK底层提出的协议,Dubbo只是对这个协议的实现的一个框架技术,rpc协议就是跨服务器调用,可以从一个项目调用另一个项目中的方法HTTP:通信协议RPC协议:remote procedure call远程过程调用的简称,调用
2021-04-21 00:48:23
226
原创 SpringBoot整合Dubbo + Zookeeper
SpringBoot整合Dubbo + Zookeeperzookeeper: 是 Apacahe Hadoop 的子项目,是一个注册中心,负责服务地址的注册与发现,相当于目录服务,服务提供者和消费者只在启动时与注册中心交互,注册中心不转发请求,只给消费方提供可调用的服务提供方接口和端口,压力较小。zookeeper安装:windows和linux都是下载包:apache-zookeeper-3.7.0-bin.tar.gz运行zookeeper需要java的环境,因此需要配置了java的环境变量
2021-04-21 00:47:08
167
原创 SpringBoot的异步任务、定时任务、邮件发送任务
SpringBoot的异步任务、定时任务、邮件发送任务异步任务实现:1、在耗时任务方法上使用@Async注解修饰2、在启动类使用@EnableAsync注解开启异步支持定时任务实现:1、使用 @Scheduled(cron=“xxx”)注解修饰需要定时间调用的方法cron表达式包含6个参数,分别为:秒 分 时 日 月 周几 //在一个特定的时间执行这个方法 Timer //秒 分 时 日 月 周几(0-7即周一到周日) //@Scheduled(cron="15 * * *
2021-04-20 23:21:25
144
原创 SpringBoot整合Swagger
**Swagger:**最流行的Api框架RestFul Api文档在线自动生成工具——>Api文档与API定义同步更新直接运行,可以在线测试API接口,支持多种语言使用Swagger需要springfox;Swagger2Swagger uiSpringBoot集成Swagger:1、导入springfox两个包:springfox-swagger2、springfox-swagger-uiio.springfoxspringfox-swagger22.9.2io.spr
2021-04-20 23:06:22
103
原创 SpringBoot整合Shiro
SpringBoot整合Shiro步骤1、导入shiro整合spring的包:org.apache.shiroshiro-spring1.4.02、自定义类ShiroConfig,使用注解@Config修饰,在该配置类中注册Shiro的realm和securityManager对象为容器中的bean,并配置过滤器@Configurationpublic class ShiroConfig { //shiroFilterFactoryBean @Bean publ
2021-04-20 21:36:55
95
原创 shiro
shiro概述:Apache Shiro是Java的一个安全框架,Shiro是一个强大的简单易用的Java安全框架,主要用来更便捷的认证、授权、加密、会话管理、与Web集成、缓存等shiro不依赖于spring,shiro不仅可以实现web应用的权限管理,还可以实现c/s系统,分布式系统权限管理,可以单独使用。shiro的整体类图:shiro包括了以下核心类:Authentication:身份认证/登录,验证用户是不是拥有相应的身份;Authorization:授权,即权限验证,验证某个已认
2021-04-20 21:35:42
112
原创 SpringBoot整合Druid数据源
SpringBoot整合Druid数据源Durid:阿里巴巴开源的数据源,是市面上性能最好的数据源,且提供了监控功能,可以实时监控执行的数据库操作SpringBoot整合Druid数据源步骤:1、导入依赖com.alibabadruid1.1.21log4jlog4j1.2.17 2、在application.yml配置druid数据源和后台监控功能的属性:spring: datasource: username: root password: 1234
2021-04-20 21:06:07
84
原创 SpringBoot自动装配原理
SpringBoot自动装配原理:SpringBoot提供了大量的自动配置类XxxAutoConfiguration,这些配置类都默认配置了大量的信息,包括redis、MongoDB、RabbitMQ、Aop等,这些配置类都使用@EnableConfigurationProperties指定了生效的属性配置类XxxPropertes,XxxProperties指定了自动配置类XxxAutoConfiguration的默认配置,这些自动配置类XxxAutoConfiguration的全限定类名放在sprin
2021-04-20 18:28:23
61
原创 SpringBoot整合JDBC和MyBatis
SpringBoot整合JDBC和MyBatis整合JDBC:1、添加JDBC的启动器:org.springframework.bootspring-boot-starter-jdbc2、添加Mysql数据库驱动:mysqlmysql-connector-java3、到application.yml配置连接参数:spring:datasource:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://loca
2021-04-20 18:26:39
731
原创 SpringBoot的SpringMvc扩展配置(自定义视图解析器、转换器、格式化器、消息转换器、拦截器等)
**SpringBoot的SpringMvc扩展配置(自定义视图解析器、转换器、格式化器、消息转换器、拦截器等)**扩展Spring mvc的配置,支持如下扩展配置:*1、视图解析器:ContentNegotiatingViewResolver代理,BeanNameViewResolver的扩展,配置自定义视图解析器2、自定义Converter、GenericConverter转换器和Formatter格式化器3、自定义HttpMessageConverter消息转换器4、自定义指定首页5、
2021-04-20 17:59:35
587
原创 SpringBoot的基本配置
**SpringBoot的基本配置:**主程序入口:XxxApplication,使用@SpringBootApplication注解修饰类加载路径Resource:**配置文件:**以application命名,结尾可以是yml、yaml或properties,配置文件的配置作用就是替换SpringBoot自动装配的默认配置,在配置文件中配置的属性,可以通过配置类使用@ConfigurationProperties(perfix=“jdbc”)将配置文件中前缀为jdbc的属性映射到配置类(使用
2021-04-20 15:54:24
109
原创 IDEA中静态页面使用tomcat启动出现中文乱码的问题:
问题分析:1、出现该问题可能是因为项目的编码格式没有使用UTF-8的编码格式。2、默认情况下,tomcat使用的运行时编码方式为:iso8859-1,此时需要把运行编码修改为UTF-83、解决步骤:第一步:在IDEA中把项目编码格式修改为UTF-8,点击File—>settings—>Editor----->File Encodings第二步:修改tomcat的运行参数保存设置后重启一下IDEA第三步:到tomcat的下载目录中找到conf/server.xml文件,编
2021-03-14 15:03:52
429
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人