
java
文章平均质量分 68
shexianyu
一名正在探索IT行业的学员
展开
-
SpringBoot通过账号密码验证连接MongoDB指定数据库出错(Exception authenticating MongoCredential{mechanism=SCRAM-SHA-1)
SpringBoot通过账号密码验证连接MongoDB指定数据库出错1. 报错部分日志org.springframework.data.mongodb.UncategorizedMongoDbException: Exception authenticating MongoCredential{mechanism=SCRAM-SHA-1, userName='spring', source='springboot', password=<hidden>, mechanismPropertie原创 2021-08-02 17:10:30 · 5956 阅读 · 1 评论 -
在CentOS 7安装配置Java运行环境
CentOS 7 安装JDK 8在CentOS 7操作系统上安装jdk8,编辑环境变量,编写HelloWorld程序进行测试1. Oracle官网下载jdk8官网下载链接:https://www.oracle.com/cn/java/technologies/javase/javase-jdk8-downloads.html1.1 选择需要的版本进行下载1.2 同意协议并进行下载注意:若未登录,则需登录之后方可下载2. 使用XShell工具连接服务器进行操作2.1 在/op原创 2021-01-28 18:00:19 · 2434 阅读 · 0 评论 -
在idea中使用mybatis框架(搭建mybatis环境及CRUD操作)
MyBatis 框架使用(一)mybatis3官网链接:https://mybatis.org/mybatis-3/zh/index.html1、MyBatis 简介MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象原创 2021-01-13 22:07:19 · 745 阅读 · 0 评论 -
使用mybatis完美踩坑记录
1、运行测试代码出现Could not find resource com.sxy.dao.UserMapper.xml异常根据异常信息提示信息:找不到.xml文件异常部分信息java.lang.ExceptionInInitializerError…Cause: java.io.IOException: Could not find resource com.sxy.dao.UserMapper.xml…2、处理异常2.1 查看官网发现resource加载方式,使用的是路径的格式原创 2021-01-12 23:06:49 · 287 阅读 · 0 评论 -
CentOS操作系统上部署及安装openfire
1、openfire简介openfire是免费的、开源的、基于可拓展通讯和表示协议(XMPP)、采用Java编程语言开发的实时协作服务器。 Openfire安装和使用都非常简单,并利用Web进行管理。单台服务器甚至可支持上万并发用户。2、在官网下载openfire(1)官方网址:https://www.igniterealtime.org/projects/openfire/index.jsp(2)可选择不同操作系统的版本,根据需求选择版本3、在CentOS操作系统上安装openfire(原创 2021-01-04 16:35:34 · 913 阅读 · 1 评论 -
springboot项目使用beetl模板引擎生成word文件
一、简单测试beetl生成word文件1、在springboot项目中添加beetl的依赖<dependency> <groupId>com.ibeetl</groupId> <artifactId>beetl-framework-starter</artifactId> <version>1.2.38.RELEASE</version></dependency>2、原创 2020-12-31 16:46:00 · 1584 阅读 · 2 评论 -
Data truncation: Incorrect datetime value: ‘‘ for column ‘final_time‘ at row 1
1、在添加页面,点击保存的时候,出现错误,并报下述异常org.springframework.dao.DataIntegrityViolationException: could not execute statement; SQL [n/a]; nested exception is org.hibernate.exception.DataException: could not execute statement...Caused by: org.hibernate.exception.DataEx原创 2020-12-28 17:24:34 · 1561 阅读 · 0 评论 -
SpringBoot项目中使用pdfjs-2.5.207,禁止下载和打印文件
一、下载pdf.jsGitHub下载地址:https://github.com/mozilla/pdf.js/releases/tag/v2.5.207根据自己需要下载下载完成后解压,解压目录如下图所示二、将pdfjs导入项目,进行测试在项目 /resource/static/ 下新建一个pdfjs目录,将解压后的文件复制到该目录下在html文件中添加下述代码,可以查看默认的PDF文件window.open("/pdfjs/web/viewer.html");(1)查看vi原创 2020-12-01 18:00:41 · 3209 阅读 · 1 评论 -
Java反射获取类的信息、动态创建对象、操作泛型、注解
1、通过反射获取类的类名、属性等信息package cn.sxy.demo02;import java.lang.reflect.Constructor;import java.lang.reflect.Field;import java.lang.reflect.Method;public class Test07 { public static void main(String[] args) throws ClassNotFoundException, NoSuchField原创 2020-07-27 10:43:03 · 961 阅读 · 0 评论 -
什么时候会发生类的初始化?
package cn.sxy.demo02;//什么时候类会发生初始化public class Test05 { static { System.out.println("Main类初始化"); } public static void main(String[] args) { //1.类的主动引用(一定会发生类的初始化) //当虚拟机启动,先初始化main方法所在的类 /** 打印结果 *.原创 2020-07-24 13:23:32 · 289 阅读 · 0 评论 -
Java Reflection(Java反射)
1、反射(1)Reflection(反射)是Java别视为动态语言的关键,反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及方法。(2)加载完类之后,在堆内存的方法区中就产生了一个Class类型的对象(一个类只有一个Class对象),这个方法就包含了完整的类的结构信息。可以通过这个对象看到类的结构。(3)正常方式:引入需要的“包类”名称——>通过new实例化——>取得实例化对象(4)反射方式:实例化对象——>ge原创 2020-07-24 11:34:45 · 293 阅读 · 0 评论 -
Java注解学习
1、什么是注解(1)Annotation是从JDK5.0开始引入的新技术。(2)Annotation的作用: ① 不是程序本身,可以对程序作出解释; ② 可以被其他程序(比如:编译器等)读取。(3)Annotation的格式:注解是以“@注释名”在代码中存在的,还可以添加一些参数值。 (例如:@SuppressWarnings(value="unchecked"))(4)注解附加在package,class,method,field等上...原创 2020-07-23 13:08:04 · 110 阅读 · 0 评论 -
Java多线程学习之锁
1、死锁(1)多个线程各自占有一些共享资源,并且互相等待其他线程占用的资源才能运行,而导致两个或多个线程都在等待对方释放资源,都停止执行的情形。某一个同步块同时拥有“两个以上对象的锁”时,就可能会发生“死锁”问题。(2)死锁代码演示package cn.sxy.demo4;public class DeadLock { public static void main(String[] args) { Makeup girl1 = new Makeup(0, "小微"原创 2020-07-22 13:24:18 · 113 阅读 · 0 评论 -
Java多线程学习之线程同步
1、线程同步(1)由于同一进程的多个线程共享同一块存储空间,在带来方便的同时,也带来了访问冲突问题,为了保证数据在方法中被访问时的正确性,在访问时加入锁机制synchronized。(2)当一个线程获得对象的排它锁(又称为写锁((eXclusive lock,简记为X锁)),若事务T对数据对象A加上X锁,则只允许T读取和修改A,其它任何事务都不能再对A加任何类型的锁,直到T释放A上的锁。它防止任何其它事务获取资源上的锁,直到在事务的末尾将资源上的原始锁释放为止。),独占资源,其他线程必须等待,使用后原创 2020-07-12 22:12:24 · 168 阅读 · 0 评论 -
Java多线程学习(二)
1、线程停止——自定义stop()方法2、线程休眠——sleep()3、线程礼让——yield()4、线程强制执行——jion()5、观察线程状态6、线程优先级原创 2020-07-12 16:33:11 · 126 阅读 · 0 评论 -
Java多线程学习(一)
1、创建线程的方式一:继承Thread类(1)创建TestThread类,继承Thread(2)重写run()方法,在run()方法体中,编写线程执行体(3)创建线程对象, 调用start()方法,启动线程2、创建线程方式二:实现Runnable接口(1)创建TestThread类,实现 Runable接口,重写run()方法,在run()方法中编写线程执行体(2) 创建实现类的对象,将此对象作为参数传递到Thread类的构造器中,创建Thread类的对象(.原创 2020-07-05 23:00:02 · 191 阅读 · 0 评论 -
Java多线程学习之网络图片下载
1、在项目中导入文件下载所需的jar包(1)将commons-io-2.6.jar包放在lib目录下(2)选中该jar包,右键选择Add as Library…(3)单击OK将添加到库里面(4)如下图所示状态,便可以使用该jar包中的工具类2、编写代码实现通过多线程图片下载功能package cn.sxy.demo01;import org.apache.commons.io.FileUtils;import java.io.File;import java.io.IOExce原创 2020-07-04 20:18:04 · 404 阅读 · 0 评论 -
计算两个整数的最大公约数(算法学习)
一、两个整数的最大公约数将两个不为0的非负整数m和n的最大公约数记为gcd(m,n),代表能够整除(即余数为0)m和n的最大正整数。二、欧几里得算法重复下列等式,直至m mod n =0:gcd(m,n)=gcd(n,m mod n) ,m mod n代表m除以n之后的余数。因为gcd(m,0)=m,所以m最后的取值也就是m和n的初值的最大公约数。例如:gcd(68,28...原创 2019-11-13 15:23:21 · 5472 阅读 · 0 评论 -
解决Tomcat 启动时,日志页面出现中文乱码
每当启动Tomcat服务器的时候看到下述页面的中文乱码就感觉很难受,因此解决Tomcat启动时日志文件的中文乱码问题。第一种解决方案:第一步:找到所安装的Tomcat目录下的conf目录下的logging.properties文件第二步:打开logging.properties文件,文件内容如下图所示,找到第51行的java.util.logging.ConsoleHand...原创 2019-11-07 21:08:29 · 2619 阅读 · 1 评论 -
Java 案例学习 Demo19 是否闰年
package cn.sxy.demo;import java.util.Scanner;/** * 判断是否闰年 * 满足闰年的条件:能被4整除但不能被100整除或者能被400整除 * 格式:year % 4 == 0 && year % 100 != 0 || year % 400 == 0 */public class Demo19 { publi...原创 2019-10-31 19:00:33 · 110 阅读 · 0 评论 -
Java 案例学习 Demo18 两个数进行交换(不使用第三方变量)
package cn.sxy.demo;import java.util.Scanner;/** * 通过异或运算,实现两个变量的交换 */public class Demo18 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); Sy...原创 2019-10-31 17:35:54 · 106 阅读 · 0 评论 -
Java 案例学习 Demo17 左移运算
package cn.sxy.demo;import java.util.Scanner;/** * 左移运算 * 一个整数m左移n位,相当于m乘以2的n次方 * 例:2<<2 (即2左移4位)相当于2的2次方,等于4 */public class Demo17 { public static void main(String[] args) { ...原创 2019-10-31 17:13:03 · 149 阅读 · 0 评论 -
Java 案例学习 Demo16 三元运算符判断奇偶数
package cn.sxy.demo;import java.util.Scanner;/** * 通过三元运算符判断奇数和偶数 * 三元运算符是if...else条件语句的简写格式 */public class Demo16 { public static void main(String[] args) { Scanner sc = new Scan...原创 2019-10-31 16:58:45 · 247 阅读 · 0 评论 -
Java 案例学习 Demo15 对字符进行加密解密
1、输入一个英文的字符串或者要解密的字符串2、经过加密或解密之后3、输出加密或解密的字符串package cn.sxy.demo;import java.util.Scanner;/** * 加密:位运算 */public class Demo15 { /** * 关键技术:异或运算 * 解释:如果某个字符(或数值)x与一个数值m进行异...原创 2019-10-31 16:50:04 · 224 阅读 · 1 评论 -
maven学习心得
1、下载Maven安装包下载网址:https://maven.apache.org/download.cgi2、将下载好的压缩包进行解压解压之后可以看到下列的文件目录3、进行maven环境变量的配置(1)鼠标右击“我的电脑”,单击“属性”。(2) 单击“高级属性设置”(3)单击“环境变量”(4)在“系统变量”下,单击“新建”(5)新建变...原创 2019-08-16 22:57:18 · 267 阅读 · 0 评论