
JAVA
文章平均质量分 87
sunxj1222
这个作者很懒,什么都没留下…
展开
-
泛型
一、概述1、没有泛型:编译时不报错,运行时报错ClassCastException2、泛型好处:编辑期检查、减少了数据类型转换3、泛型的本质就是参数化类型,也就是定义形参。二、泛型类1、创建对象的时候指定具体的数据类型2、泛型类,如果没有指定具体的数据类型,此时,操作类型是Object3、泛型的类型参数只能是引用类型,不能是基本数据类型,如:int4、同一个泛型类,根据不同的数据类型创建的对象,本质上是同一个类型(同一个class对象)。注:可以结合后面的泛型擦除理解,泛型擦除之后 Ge原创 2021-05-05 18:00:02 · 242 阅读 · 1 评论 -
设计模式
一、设计原则1、开闭原则--->对扩展开发,对修改关闭2、单一职责原则--->一个方法只做一件事3、依赖倒置原则--->通过接口是各个类之间解耦4、接口隔离原则--->5、迪米特原则--->一个类对其所依赖的类知道的越少越好。通过private、public6、里式替换原则--->子类可以扩展父类的功能,不能改变父类原有的功能(本来就不能)7、合成复用原则--->尽量使用对象的组合和聚合,而不是用继承二、spring中的设计模式1、工厂模式:Be原创 2020-08-02 18:34:17 · 234 阅读 · 0 评论 -
springBoot使用jmx
一、springBoot添加jmxpackage com.study.config;import java.rmi.registry.Registry;import javax.management.remote.JMXConnectorServer;import org.springframework.beans.factory.annotation.Value;import...原创 2020-04-26 11:15:50 · 2155 阅读 · 0 评论 -
logback使用
一、日志格式1、格式<property name="ENCODER_PATTERN" value="%d{yyyy-MM-dd HH:mm:ss.SSS} %X{ip} %p [%t] %c.java:%L#%M - %m%n"/>2、输出内容2020-04-13 16:23:48.838 INFO [main] org.springframework.beans.fa...原创 2020-04-13 16:33:08 · 160 阅读 · 0 评论 -
springBoot多环境配置
一、环境准备1、pom.xml中的<profiles> <profiles> <profile> <id>dev1</id> <properties> <profileActive>dev</pro...原创 2020-04-11 20:25:53 · 209 阅读 · 0 评论 -
alibaba-fastJson
一、JSON类介绍a、JSON主要实现JSONObject对象,JSONArray对象数组,javabean对象,json字符串之间的相互转化。b、其中,有关键字transient修饰的toJSONString()用于json对象序列化过程中,希望某个"键:值"出现在json字符串中。使用:1、JSON类之toJSONString()方法,实现json对象转化为json字符串...原创 2020-03-08 16:54:31 · 356 阅读 · 0 评论 -
maven
一、settings.xml1、使用阿里云镜像,阿里云有多个仓库,jar分别在不通的仓库上。 例:maven-clean-plugin-2.5.jar 就不在public库上,而在jcenter库上https://help.aliyun.com/document_detail/102512.html?spm=a2c40.aliyun_maven_repo.0.0.30be3054...原创 2020-01-20 17:02:02 · 113 阅读 · 0 评论 -
开发问题
一、NoClassDefFoundError:JobDetailBean not found1、问题:2019-02-19 16:15:39,688 | ERROR | ffsa.ripsg_app_ffsa_1.7.5 [296]) | SpringApplicationContextCreator | ? ? ...原创 2019-10-22 16:22:30 · 1515 阅读 · 0 评论 -
封装dbcp
package com.sunxj.extension.dbcp;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStream;import java.sql.C...原创 2019-09-30 10:58:07 · 135 阅读 · 0 评论 -
springBoot小知识点
1、FactoryBean与Bean自动注入问题FactoryBeanfb=newFactroyBean();Beanb=FactoryBean.getObject()注意:springBoot的@Configuration中只需注入fb这个bean就可以了,不用在注入b这bean了,springBoot会自动将b注入...原创 2019-06-06 20:04:50 · 191 阅读 · 0 评论 -
springBoot启动过程 & 关键组件顺序
一、启动过程(一)、new SpringApplication1、判断是否为web环境2、从spring.factories中加载: key = ApplicationContextInitializer 注:改接口是执行refresh()方法之前调用3、从spring.factories中加载: key = ApplicationListener4、从当前...原创 2019-05-18 10:47:04 · 320 阅读 · 1 评论 -
springBoot的Bean懒加载
前提:四种将bean加载搭到spring容器的方式1、@Configuration +@bean2、@component3、@import4、META-INF/spring.factories 中的 key =org.springframework.boot.autoconfigure.EnableAutoConfiguration、 注:其中3、4也可以用于:a项...原创 2019-05-16 17:10:12 · 2437 阅读 · 0 评论 -
java 项目打包部署
一、打包1、在pom.xml中指定main类<plugin> <artifactId>maven-assembly-plugin</artifactId> <configuration> <appendAssemblyId>false</appendAssemblyId> <d...原创 2019-05-20 15:54:49 · 11067 阅读 · 0 评论 -
单例设计模式
单例模式一、定义 单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。在计算机系统中,线程池、缓存、日志对象、对话框、打印机、显卡的驱动程序对象常被设计成单例。二、特点单例类只能有一个实例。单例类必须自己创建自己的唯一实例。单例类必须给所有其他对象提供这一实例。三、实现方式1、饿汉式单例(立即加载方式) 饿汉式单例在类加载初始化时就创建好一个静态的对象供外部使用...原创 2018-04-02 15:42:19 · 207 阅读 · 0 评论 -
内部类与静态内部类总结
1、静态内部类可以有静态成员(方法,属性),而非静态内部类则不能有静态成员(方法,属性)。2、静态内部类只能够访问外部类的静态成员(除构造方法外---和内部类的加载顺序有关:内部类加载顺序),而非静态内部类则可以访问外部类的所有成员(方法,属性)。3、实例化一个非静态的内部类的方法: a.先生成一个外部类对象实例 OutClassTest oc1 = new OutClassTest...原创 2018-04-02 15:42:49 · 156 阅读 · 0 评论 -
类的加载顺序
一、普通类的加载顺序1、加载一个类时,其各模块的加载顺序。public class Test { private static String aa = "静态属性"; private String bb = "普通属性"; { System.out.println("构造代码块"); } private Test(){ System.out.println("构造方法"); } static{...原创 2018-04-02 15:43:15 · 178 阅读 · 0 评论 -
反射
反射是框架设计的灵魂(使用的前提条件:必须先得到代表的字节码的Class,Class类用于表示.class文件(字节码))一、反射的概述JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。要想解剖一个类,必须先要获取到该类的字节码文件对象。而解...转载 2018-04-02 16:02:14 · 150 阅读 · 0 评论 -
在项目中指定log4j.xml的位置
一、默认位置1、项目会默认在classpath目录下读取log4j.xml或log4j.properties。二、在代码中指定1、 try {Log4jConfigurer.initLogging("file:/opt/app/config/log4j.xml"); Log4jConfigurer.initLogging...原创 2018-04-13 14:09:05 · 3676 阅读 · 0 评论 -
XML与Java转换之JAXB
一、JAXB介绍1、JAXB(Java Architecture for XML Binding) 是一个业界的标准,是一项可以根据XML Schema(.xsd文件)产生Java类的技术。该过程中,JAXB也提供了将XML实例文档反向生成Java对象树的方法,并能将Java对象树的内容重新写到 XML实例文档。2、基本概念 a、JAXBContex...原创 2019-03-10 09:32:42 · 559 阅读 · 0 评论 -
json
一、json1gson-2.24.jar<dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>2.3.1</version></depend...原创 2019-02-15 10:45:28 · 98 阅读 · 0 评论 -
AOP编程注意事项
一、proxy-target-class1、proxy-target-class true:cglib字节码增强(标识:EnhancerByCGLIB) false:jdk动态代理(标识:Proxy4)2、例 A implements B (1)、proxy-target-class = false 时,使用jdk动...原创 2019-03-10 09:28:40 · 571 阅读 · 0 评论 -
代理设计模式
代理模式:为其他对象提供一种代理以控制对这个对象的访问。 代理模式中的角色:抽象主题角色(Subject):声明了目标对象和代理对象的共同接口,这样一来在任何可以使用目标对象的地方都可以使用代理对象。具体主题角色(RealSubject):也称为委托角色或者被代理角色。定义了代理对象所代表的目标对象。代理主题角色(Proxy):也叫委托类、代理类。代理对象内部含有目标对象的引用,从而可以在任何时候...转载 2018-04-08 14:19:51 · 121 阅读 · 0 评论