Java面试核心知识点笔记
其中囊括了JVM、锁、并发、Java反射、Spring原理、微服务、Zookeeper、数据库、数据结构等大量知识点。
Java中高级面试高频考点整理
最后分享Java进阶学习及面试必备的视频教学
org.mybatis.spring.boot
mybatis-spring-boot-starter
2.0.0
org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-tomcat
provided
org.springframework.boot
spring-boot-starter-freemarker
org.springframework.boot
spring-boot-starter-cache
org.springframework.boot
spring-boot-starter-actuator
org.springframework.boot
spring-boot-starter-logging
org.springframework.boot
spring-boot-devtools
true
org.springframework.cloud
spring-cloud-starter-config
org.springframework.cloud
spring-cloud-starter-eureka-server
1.3.1.RELEASE
org.springframework.cloud
spring-cloud-starter-contract-stub-runner
test
org.springframework.cloud
spring-cloud-starter-contract-verifier
test
org.springframework.cloud
spring-cloud-stream-test-support
test
org.apache.commons
commons-lang3
3.5
javax.servlet
javax.servlet-api
3.0.1
commons-lang
commons-lang
2.6
五、创建如图所示的目录结构:
①编写注册中心,注册中心目录结构:
编写WebApplication启动类,添加注解@EnableEurekaServer和@SpringBootApplication,我这里想做一个纯注册中心,不与数据库挂钩,所以增加了一个exclude = DataSourceAutoConfiguration.class,启动项目时不自动与数据库连接,若想让注册中心也连接数据库,这个exclude也可以不要。如图所示:
编写application.yml
server:
port: 8081
eureka:
instance:
hostname: 127.0.0.1
server:
enable-self-preservation: false # 关闭自我保护模式(默认为打开)
eviction-interval-timer-in-ms: 600000 # 续期时间,即扫描失效服务的间隔时间 一分钟,本地测试不需这么频繁,调为1小时
client:
register-with-eureka: false #自己就是注册中心,不用注册自己
fetch-registry: false #是否去注册中心获取其他服务的地址
serviceUrl:
defaultZone: http:// e u r e k a . i n s t a n c e . h o s t n a m e : {eureka.instance.hostname}: eureka.instance.hostname:{server.port}/eureka/
spring:
application:
name: xinrong
freemarker:
prefer-file-system-access: false
编写bootstrap.yml:
spring:
cloud:
config:
enabled: false
编写log4j.properties:
log4j.rootLogger=info, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n
log4j.appender.logfile=org.apache.log4j.FileAppender
log4j.appender.logfile.File=target/spring.log
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - %m%n
②编写消费者pam-service,消费者目录结构:
编写消费者启动类PamApplication.java,添加注解@MapperScan(basePackages = {“com.xinrong.pam.*.mapper”})
含义:mybatis中Mapper文件对应的包,启动项目时会自动扫描
编写消费者application.yml:
server:
port: 8088 #端口号8088
eureka:
instance:
hostname: 127.0.0.1
server:
enable-self-preservation: false # 关闭自我保护模式(默认为打开)
eviction-interval-timer-in-ms: 600000 # 续期时间,即扫描失效服务的间隔时间 一分钟
client:
register-with-eureka: true #注册到注册中心
fetch-registry: true #是否去注册中心获取其他服务的地址:是
serviceUrl:
defaultZone: http://127.0.0.1:8081/eureka/ #注册中心地址
mybatis:
mapper-locations: mapper/* #mybatis映射文件路径
config-location: classpath:/mybatis/mybatis-config.xml #mybatis配置文件路径
spring:
application:
name: pam #项目名
datasource:
url: jdbc:mysql://127.0.0.1:3306/pam?characterEncoding=utf-8&serverTimezone=Asia/Shanghai
username: root
password: root
driver-class-name: com.mysql.cj.jdbc.Driver
freemarker:
prefer-file-system-access: false
jdbc:
driverClass: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306/pam
username: root
password: root
在数据库中创建一个pam_user表:
create table pam_user(
objectId varchar(50) not null primary key ,
userName varchar(50),
password varchar(255),
phoneNo varchar(20),
sex varchar(5),
birthDay date,
Email varchar(50)
);
面试题总结
其它面试题(springboot、mybatis、并发、java中高级面试总结等)
面试题总结
其它面试题(springboot、mybatis、并发、java中高级面试总结等)
[外链图片转存中…(img-YCjPIoQt-1715424030110)]
[外链图片转存中…(img-FPUrWiKQ-1715424030110)]
[外链图片转存中…(img-hxjmzGUV-1715424030111)]