Spring-通过注解注入Bean的几种方式(二)
Spring通过注解注入Bean,这里记录一下注入List、Map、String类型的注入MyBean.java
import org.springframework.beans.factory.annotation.Autowired;import org.springframework.beans.factory.annotation.Qualifier;import org.springframework.beans.factory.annotation.Value;import org.springframework.stereotype.Component;import java.util.List;import java.util.Map;/** * @Author: www.itze.cn * @Email: 814565718@qq.com */@Componentpublic class MyBean { //List类型注入方式 private List<String> list; public List<String& ...
SVN仓库从Windows迁移至Linux(CentOS 7)
场景SVN仓库需要从Windows 10操作系统整体迁移至Linux CentOS 7 操作系统
迁移准备
需要先在Linux那台操作系统的服务器上安装SVN,具体安装教程看这篇文章:Linux(CentOS 7)安装SVN详解
安装完成以后新建一个新的仓库,仓库名最好和需要迁移的仓库名字对应
操作过程Windows平台SVN管理使用的是VisualSVN,比如你的仓库路径位置:D:\svn\AProject,(AProject是项目仓库名称),利用svnadmin,Linux操作系统需要的是.dump结尾的文件不是用VisualSVN备份出来的.vsvn.bak结尾文件,下面开始操作命令
导出svnadmin dump AProject > D:\AProject.dump
D:\AProject.dump 的意思是新的文件导出到D盘下,文件名为AProject.dump 导出是时间和仓库大小有关,这样是所有Version版本号都会导出来,如果只需要导出指定版本
导出指定版本号导出Version版本号为20的所有AProject仓库下的文件,导出到D盘,命名为AProjec ...
Linux(CentOS 7)安装SVN详解
安装环境
操作系统:Linux(CentOS 7)
需要提前开放3690端口,CentOS如何开放端口可以查看这篇文章:CentOS 7 开启防火墙及开放指定端口
安装命令yum install -y subversion
安装过程SVN安装完成之后默认的仓库路径是:/var/svn 通过命令
vim /etc/sysconfig/svnserve
修改位置:OPTIONS=”-r /var/svn”,修改其中的/var/svn就可以了,默认即可!
仓库创建注意:这里如果上面的默认位置(/var/svn)没有更改,就把项目仓库创建到默认位置下面,如果修改了,就创建到你修改的路径下
创建示例mkdir -p /var/svn/svntest
svnadmin create /var/svn/svntest
执行完上面两个命令之后,查看一下,命令
ll /var/svn/svntest
查看结果截图:
配置仓库用户及权限当前位置:/var/svn/svnte ...
CentOS 7 开启防火墙及开放指定端口
查看防火墙状态
systemctl status firewalld
启动防火墙
systemctl start firewalld
停止某项服务,这里举例停止防火墙
systemctl stop firewalld
查看防火墙已经开放的端口
firewall-cmd --list-port
添加开放指定防火墙
firewall-cmd --zone=public --add-port=这里是需要开启的端口号/tcp --permanent
重新加载防火墙
firewall-cmd --reload
Spring-通过注解注入Bean的几种方式(一)
用到的注解
@Configuration :定义配置类,代替了xml文件
@ComponentScan(value = “com.aa”) :包扫描,Spring会自动扫描com.aa同级以及子类包下的所有类
@Component : 声明把该类交由Spring,由Spring来帮你完成实例化
@Autowired : 注入,Spring完成自动装配
通过构造函数/Set方法/@Autowired方式AnotherBean.java
/** * @Author: www.itze.cn * @Email: 814565718@qq.com *///默认为单例模式@Componentpublic class AnotherBean {}
MyBean.java
@Componentpublic class MyBean { private AnotherBean anotherBean1; private AnotherBean anotherBean2; //使用@Autowired注入 @Auto ...
SpringBoot打包:Failed to execute goal org.apache.maven.plugins
先贴详细错误[INFO] Error stacktraces are turned on.[INFO] Scanning for projects...[INFO][INFO] ----------------------< cn.itze >----------------------[INFO] Building itze 0.0.1-SNAPSHOT[INFO] --------------------------------[ jar ]---------------------------------[INFO][INFO] --- maven-resources-plugin:3.2.0:resources (default-resources) @ itze ---[INFO] Using 'UTF-8' encoding to copy filtered resources.[INFO] Using 'UTF-8' encoding to copy filtered properties files.[INFO] Co ...
SpringBoot项目Jar包运行没有主清单属性
场景SpringBoot项目打成Jar之后通过命令行运行,报错:没有主清单属性
解决办法首先确保POM文件中有以下插件
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins></build>
然后如果使用命令打包,则使用打包命令:mvn install -Dmaven.test.skip=true 解释一下,-Dmaven.test.skip=true 这句话的意思是跳过测试验证,可加可不加,不加缩短打包时间
注意:使用命令打包需要提前把路径切换到该项目的POM文件同级路径!不然会报找不到POM文件说一下我的错误原因,刚开始报错,也是各种 ...
Springboot@Autowired注入为Null
场景SpringBoot项目,在获取resources中application.properties配置文件中的内容时,使用注入Environment方法获取,启动项目之后发现注入的Environment一直为null
解决办法经过一段时间查阅,最终使用@PostConstruct注解解决
@PostConstruct@PostConstruct用于修饰非静态的void方法,被该注解修饰的方法会在服务器加载Servlet的时候加载执行,并且只会执行一次 google翻译官方API一段解释:PostConstruct批注用于需要依赖注入完成以执行任何初始化之后要执行的方法上。必须在类投入使用之前调用此方法。所有支持依赖注入的类都必须支持该注释。即使该类不要求注入任何资源,也必须调用用PostConstruct注释的方法。此注释只能注释一种方法。
代码示例import org.springframework.beans.factory.annotation.Autowired;import org.springframework.core.env.Environment;import or ...
查看自签SSL证书信息
命令keytool -list -v -keystore you.keyStroe
JDK信任自签证书
自签证书非机构办法,不在jdk信任的列表cacerts找到cacerts文件所在目录路径,jdk_home(jdk位置路径)/jdk1.8.0_231/jre/lib/security 如果是window系统斜杠是“\”到cacerts文件所在路径位置,Linux就cd到此位置,Windows就cmd到此位置 cacerts文件所在路径位置:
导入证书keytool -import -v -trustcacerts -alias base64ssl(另起别名) -file /你的路径/base64ssl.cer(要导入的证书) -storepass changeit -keystore cacerts
注意:这里是.cer文件
查看jdk已经信任的证书keytool -list -keystore cacerts -storepass changeit
删除已经导入的证书keytool -delete -alias ssl64(证书导入时的别名) -keystore cacerts -storepass changeit