java
Paroxetiner
你送我的打火机丢了,所以我戒烟了
展开
-
Spring Data JPA 与 Mybatis的区别
今天复习了一下springboot,正好看到这个地方。记录一下1.概述Spring Data JPA可以理解为 JPA 规范的再次封装抽象,底层还是使用了Hibernate的 JPA 技术实现。MyBatis本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。Mybatis:着力于POJO与SQL之间的映射关系。2.性能 由于 Hibernate 比...原创 2022-01-30 01:15:56 · 2725 阅读 · 0 评论 -
JAVA流对象
今天准备学习学习java的网络部分上来就遇见了一个问题,流对象。特此记录。 Java根据数据流向的不同分为输入流和输出流; Java根据处理数据类型的不同分为字符流和字节流,所有输入流类都是抽象类InputStream(字节输入流),或者抽象类Reader(字符输入流)的子类, 而所有输出流都是抽象类OutputStream(字节输出流)或者Writer(字符输出流)的子类; InputStream(字节输入流)和Reader(字符输入流)通俗的理解都是读(re...原创 2020-09-18 10:46:03 · 585 阅读 · 0 评论 -
springboot项目之相互依赖报错(基于idea)
昨天在辛劳的进行代码搬运工作的时候,发现springboot项目的一个新建模块中service层的各个注解都变成了黑色,正常情况下应该是黄色的。我觉得可能是一些springboot的相关组件没有引入pom文件所以我对照着原来的模块直接复制了一些依赖就出现了一个新大陆的报错Error:java: Annotation processing is not supported for module cycles. Please ensure that all modules from cycle.原创 2020-09-08 17:23:09 · 3436 阅读 · 0 评论 -
springboot各个层之间的联系
可以这样理解:controller层-----> service层(接口—>接口实现类) -----> dao层的.mapper文件 -----> 和mapper层里的.xml文件对应Model层是数据层: TableName是对数据表实体的映射; Criteria传输前台数据 DTO 传输类间数据Mapper层放置SQL查询XML...原创 2020-08-14 14:26:15 · 6878 阅读 · 1 评论 -
springboot项目中各个层的作用和联系
SpringBoot. model层 model层即数据库实体层,也被称为entity层,pojo层。 一般数据库一张表对应一个实体类,类属性同表字段一一对应。 . dao层 dao层即数据持久层,也被称为mapper层。 dao层的作用为访问数据库,向数据库发送sql语句,完成数据的增删改查任务。 . service层 service层即业务逻辑层。 service层的作用为完成功能设计。 service层调用dao层接口,接收dao层返回的数据,完成项目的基本功能设原创 2020-08-13 14:35:01 · 4660 阅读 · 4 评论 -
Spring Boot连接数据库的配置文件---application.properties
现在我很难看见application.properties这一类的配置文件了越来越多的yml文件让我再次看见他的时候竟然有点陌生现在的多模块的springboot项目使用yml,今天在学习echarts的时候网上找了一个单模块项目发现是application.properties,“=”这个东西让我很不适应。现在还是“:”看着顺眼想着连接数据库,从数据库中读取数据,却忘了怎么在application.properties配置数据库特此记录1.文件名称与路径说明名称:appli.原创 2020-08-11 14:39:09 · 15394 阅读 · 0 评论 -
如何使用IDEA右边栏的Database模块,以及Driver files are not downloaded和时区问题
自从接触idea依赖,无不感慨这个平台的强大,可以说每一天都有新的惊喜今天我就误打误撞的使用了idea右边栏的那个被无数小白吐槽说鸡肋的“Database”模块为什么说是鸡肋呢,因为这个东西只是个视图就是说,你只有成功的连接了数据库才能成功的使用它,那我为啥不直接用Navicat呢算了,强迫症还是想物尽其用点开它,点一下上方的“+”就可以了选MySQL填上User(数据库用户名,基本上都是root)、password(数据库密码)、Database(写上这个项目用的数原创 2020-08-03 17:24:15 · 3588 阅读 · 1 评论 -
突发状况-----MySQL客户端输入密码之后闪退(1045的解决办法)
今天想着吧旧电脑上的项目导入到新电脑上来装逼心理凸显,下载了最新版的idea,但是验证码是个大问题,最后想从某宝上面淘一个(网上的诸多办法真的只能帮倒忙,大家要是想省省心,还是相信万能的马爸爸吧)结果人家说最新版的不行只能用账号,19大洋一年,我作为一个程序员对于有期限的东西向来都是抵触的,于是我果断的删除了最新版的idea,下载了前一个版本。15大洋破解成功,我可以一直到2089年都写程序了。(但是还是建议家里有矿的程序员们还是购买正版)项目导入,Maven配好,jdk就位。启动!!!原创 2020-07-27 11:19:06 · 608 阅读 · 0 评论 -
win10系统下,jdk配置环境变量时遇到的问题
今天换了新的电脑,所有的新环境有的重装本来觉得jdk这种东西对于我来说,算是诸多事项中最简单的一项了结果啊。。。凭借记忆熟练的新建文件夹-->把老电脑的jdk1.8(我是个旧时代的人啊)挪过来熟练的配置环境向量win+r cmd 打开命令行输入java。。。。错误,不慌。认真一点发现是自己把java_home和classpath两个写到了用户变量里面改回到系统变量里面,确定!win+r cmd 打开命令行输入java。。。。错误,我慌了。...原创 2020-07-24 17:03:23 · 191 阅读 · 0 评论 -
关于IDEA的springboot项目的热部署(多模块)
一、开启IDEA的自动编译(静态)具体步骤:打开顶部工具栏 File -> Settings -> Default Settings -> Build -> Compiler 然后勾选 Build project automatically 。二、开启IDEA的自动编译(动态)具体步骤:同时按住 Ctrl + Shift + Alt + / 然后进入Registry ,勾选自动编译并调整延时参数。compiler.automake.allow.when.app.r原创 2020-07-14 13:40:38 · 3501 阅读 · 1 评论 -
maven的install的报错情况----1
IDEA导入springboot的项目中,对于Maven进行install时报错Error running 'lizi-user-api [clean]': No valid Maven installation found. Either set the home directory in the configuration dialog or set the M2_HOME environment variable on your system.今天用idea清除缓存,clean的时候报了个原创 2020-07-13 19:57:10 · 904 阅读 · 0 评论 -
初入springboot之小白必备-----Maven下载安装教程和环境变量的详细指引(保证成功)
前置条件:已安装jdk1.下载maven下载方法:百度搜索“maven下载”,点击第一个就行了这里下载第二个就可以, 最后两个src.tar.gz是源码2.解压apache-maven-3.5.23.配置环境变量 复制maven路径a.创建环境变量Maven_HOME / D:\maven\apache-maven-3.5.2 (maven路径)b.系统变量path添加 %MAVEN_HOME%\bin4.检查maven环境...原创 2020-07-13 19:39:37 · 385 阅读 · 0 评论 -
java小白不明白的事之Spring、SpringMvc、SpringBoot和SpringCloud的联系与区别
spring和springMvc:1. spring是一个一站式的轻量级的java开发框架,核心是控制反转(IOC)和面向切面(AOP),针对于开发的WEB层(springMvc)、业务层(Ioc)、持久层(jdbcTemplate)等都提供了多种配置解决方案;2. springMvc是spring基础之上的一个MVC框架,主要处理web开发的路径映射和视图渲染,属于spring框架中WE...原创 2020-05-07 10:14:31 · 155 阅读 · 0 评论 -
编程中遇见的“耦合”“耦合度”“低耦合”是什么意思
怎么说呢,一个人要开发大型软件是很没效率的,所以就要有很多人共同开发,懂吧那么很多人共同开发,你不能所有人都开发一个模块,一个功能,一个文件对吧,是不是要有个分工呢?比如说做一个程序,有人开发数据库方面的东西,有人开发网络方面的东西,有人开发界面方面的东西,这就是分工。那么分工,每一个分工,也就相当于一个模块,而一个模块就是一个功能。一个模块这个概念比较抽象,可以说是一个编程语言文件,也可...原创 2020-03-17 03:11:49 · 7059 阅读 · 0 评论 -
MQ以及四大MQ的比较
一、消息中间件相关知识1、概述消息队列已经逐渐成为企业IT系统内部通信的核心手段。它具有低耦合、可靠投递、广播、流量控制、最终一致性等一系列功能,成为异步RPC的主要手段之一。当今市面上有很多主流的消息中间件,如老牌的ActiveMQ、RabbitMQ,炙手可热的Kafka,阿里巴巴自主开发RocketMQ等。2、消息中间件的组成 2.1 Broker消息服务器...原创 2020-03-10 16:51:11 · 747 阅读 · 0 评论 -
Springboot放入配置文件.properties与.yml之间的比较
在于其拥有天然的树状结构,所以着手尝试将properties文件更改为yml文件,发现了几个要注意的地方:1、在properties文件中是以”.”进行分割的, 在yml中是用”:”进行分割;最近在做一个springboot的配置中,网上的教程是yml而我一般用properties,所以就会造成显示的数据为null。把properties重命名为yml之后解决问题。2、yml的数据格式...原创 2020-03-07 15:26:30 · 1059 阅读 · 0 评论 -
@Override注解的作用
在java中如果方法上加@Override的注解的话,表示子类重写了父类的方法。当然也可以不写,写的好处是:可读性提高编译器会校验写的方法在父类中是否存在public class Father { public void test(){ System.out.println("test"); } class child extends ...原创 2020-01-31 18:54:54 · 1055 阅读 · 0 评论 -
构造器里面的super()有什么用,含参的super是干嘛的
平时写的单独一个类如果没有直接继承父类就是直接继承的Object,有父类就是间接继承的Object,因为父类会继承Object,java的所有类都是Object的子类,哪怕不写super(),也会默认调用的父类的空构造器。接下来举个例子class A{ public A() { System.out.println("A的无参数构造器"); } pu...原创 2020-01-31 13:00:09 · 1256 阅读 · 0 评论 -
Java中的Filter过滤器
Filter简介Filter也称之为过滤器,它是Servlet技术中最实用的技术,Web开发人员通过Filter技术,对web服务器管理的所有web资源:例如Jsp, Servlet, 静态图片文件或静态 html 文件等进行拦截,从而实现一些特殊的功能。例如实现URL级别的权限访问控制、过滤敏感词汇、压缩响应信息等一些高级功能。它主要用于对用户请求进行预处理,也可以对Htt...原创 2020-01-27 11:08:53 · 275 阅读 · 0 评论 -
hashcode()和equals()的作用、区别、联系
hashCode()方法和equal()方法的作用其实一样,在Java里都是用来对比两个对象是否相等一致,那么equal()既然已经能实现对比的功能了,为什么还要hashCode()呢? 因为重写的equal()里一般比较的比较全面比较复杂,这样效率就比较低,而利用hashCode()进行对比,则只要生成一个hash值进行比较就可以了,效率很高,那么hashCode()既然...原创 2020-01-11 10:01:40 · 926 阅读 · 0 评论 -
JPA之@GeneratedValue注解
JPA的@GeneratedValue注解,在JPA中,@GeneratedValue注解存在的意义主要就是为一个实体生成一个唯一标识的主键(JPA要求每一个实体Entity,必须有且只有一个主键),@GeneratedValue提供了主键的生成策略。@GeneratedValue注解有两个属性,分别是strategy和generator,其中generator属性的值是一个字符串,默认为"",其...原创 2020-01-05 22:22:56 · 425 阅读 · 0 评论 -
JAVA中关于set()和get()方法的理解及使用
进行后端和数据库的连接时 ,发现类中出现很多getXXX和setXXX方法我们先来看看set和get这两个词的表面意思,set是设置的意思,而get是获取的意思,顾名思义,这两个方法是对数据进行设置和获取用的。而且,在类中使用set和get方法时,都是在set和get后面跟上一些特定的词来形成特定意思的方法名,比如setage()和getage(),表示设置年龄和获取年龄。然后我们来了解...原创 2020-01-05 21:35:38 · 1253 阅读 · 0 评论 -
为什么要用implements Serializable
在进行网上商城的开发中发现,几乎所有的类都会为什么要用implements Serializable,这个接口只知道是用来进行序列化的,那么序列化到底是用来干什么的??一个对象序列化的接口,一个类只有实现了Serializable接口,它的对象才是可序列化的。因此如果要序列化某些类的对象,这些类就必须实现Serializable接口。而实际上,Serializable是一个空接口,没有什么具体...原创 2020-01-04 18:53:35 · 539 阅读 · 0 评论 -
【SpringBoot】 http请求注解之@RestController
【SpringBoot】 http请求注解之@RestController本次介绍SpringBoot中针对http的常用注解。SpringBoot之所以在现阶段从Spring全家桶中脱颖而出,不仅是其号称“轻量级”,在实际工作中,工程师也会发现大量的SpringMVC中配置文件工作,由注解替代。作为优质的服务端Java框架,今天着重介绍SpringBoot中与http请求相关的注解。Sp...原创 2019-12-31 10:20:00 · 510 阅读 · 0 评论 -
java抽象类终极心得
Java 抽象类在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。抽象类除了不能实例化对象之外,类的其它功能依然存在,成员变量、成员方法和构造方法的访问方式和普通类一样。由于抽象类不能实例化对象,所以抽象类必须被继承,才能被使用。父类包含了子类集合的常见的方法,但是...原创 2019-12-30 22:04:55 · 693 阅读 · 0 评论 -
foreach注意事项
【Java】 foreach对数组赋值问题 今天写代码时发现了如下问题: 1 2 3 4 5 6 7 8 9 publicclassTest { publicstaticvoidmain(String[] args) { int[] arr=ne...原创 2019-12-29 15:24:38 · 436 阅读 · 0 评论 -
力扣刷题第一天
1.数组可以用作为方法类型,也可以作为方法返回值当你需要返回多个值时,你可以将方法类型设置为数组类型,设置一个新的数组,将你需要的返回值,return 这个数组。在main方法中在设置一个数组用于接收。遍历输出这个数组就可以得到想要的多个返回值。2.java跳出多重循环用loop作为标记,在最内层循环的最后一句break loop即可。3.java也可以实现链表给出两个非空 ...原创 2019-12-25 11:31:22 · 1265 阅读 · 0 评论 -
exe4j使用教程
一、背景 exe4j 可以很容易吧一个 jar 打包成 exe。二、下载地址 Exe4j 下载地址:http://dl.dbank.com/c0owlopqf8三、打包步骤 1、 从上面网址下载 exe4j 安装文件,里面包含一个注册码生成工具(都是网上收集) 。 2、 安装 exe4j 以及破解(注意 jre 版本必须是 1.4 到 1.6) 。 3、 运行 ex...转载 2018-10-30 11:59:18 · 1705 阅读 · 0 评论 -
为窗体添加背景和为组件添加图片
为窗体添加背景public class LoginPanel extends JPanel{ private Image img;// 登录面板的背景图片 public LoginPanel() {// 登录面板的构造方法 super();// 调用父类JPanel的构造器 URL url = getClass().getResource("lo...原创 2018-10-30 11:57:24 · 1021 阅读 · 0 评论 -
增强的for循环
for(:)这是循环遍历数组的一种方式,通常称为“增强的for循环”。意思大概是:把a类型的集合c中的每个元素赋值给b.最常用的用于list的逐行赋值 1 2 3 4 5 6 List<String> strs = new ArrayList<String>(); strs.add("hel...翻译 2018-10-20 09:40:35 · 232 阅读 · 0 评论 -
关于DefaultTableModel的用法
要显示JTable组件(需要用到)TableModel接口(需要下面这个类才能实现)DefaultTableModel类所以思路应该是: 1,先定义一个DefaultTableModel类的对象mm DefaultTableModel mm = new DefaultTableModel();2,替换该对象的列 mm.setColumnIdentifiers(columnNames);...原创 2018-10-17 00:01:33 · 44120 阅读 · 3 评论 -
JTable中,使指定的行列不可编辑
DefaultTableModel newTableModel = new DefaultTableModel(){@Overridepublic boolean isCellEditable(int row,int column){return false;}};全部不可编辑; DefaultTableModel newTableModel = new De...原创 2018-09-28 15:38:43 · 3249 阅读 · 2 评论 -
.next()的理解
1、.next()方法的作用:指针指向下一条记录,有记录(有值)返回true并把记录内容存入到对应的对象中,也就是obj.next()的obj中。如果没有返回false。2、.next()方法的应用:一般和ResultSet对象和while循环一起使用,去迭代结果集,并在循环中调用getXXX(intfieldIndex)/getXXX(String columnName)方法获取字段值。...原创 2018-09-23 17:22:01 · 16038 阅读 · 0 评论 -
关于网格窗体的weightx(y)属性的个人理解
江湖小白,初涉江湖,被weightx这个属性搞得焦头烂额,从入门到精通上说的还有点意思,但是小白看的也是云里雾里,只得上网求助希望有大神相助,哪知网上的大佬们一旦被小白问询就变得不食人间烟火,权重、空间等陌生名词脱口而出,信手拈来。只能自己摸索,有点感悟,出来炫耀一下。weightx这个属性,与具体数值无关,创建网格对象后,引用此属性后,会获得相应比例的额外空间。什么是额外空间?这就是整个...原创 2018-09-05 23:15:47 · 1065 阅读 · 0 评论 -
Socket编程
Java最初是作为网络编程语言出现的,其对网络提供了高度的支持,使得客户端和服务器的沟通变成了现实,而在网络编程中,使用最多的就是Socket。像大家熟悉的QQ、MSN都使用了Socket相关的技术。下面就让我们一起揭开Socket的神秘面纱。一、网络基础知识(参考计算机网络) 关于计算机网络部分可以参考相关博客: 《TCP/IP协议栈及OSI参考...原创 2019-01-11 20:02:52 · 119 阅读 · 0 评论 -
java 集合和视图的概念
一、集合的概念 何为集合,集合就是相当于一个对象的容器。集合是类似数组的一个作用。既然有了数组,为何还要有集合呢,由于数组对象一旦创建,其大小便不可以更改,我们只能往数组中存放创建时数量的对象。而集合中的长度却是动态可变化的,我们可以往集合中添加任意数量的对象。并且我们可以通过集合更方便地实现数据结构如队列,栈等等。在集合中我们更可以定义自己想要的操作。二、集合的定义 java中集...原创 2019-01-18 08:03:57 · 1625 阅读 · 0 评论 -
java 窗口监听事件
【窗体监听事件 WindowListener】windowOpened 打开windowActivated 激活(获得焦点状态)windowDeactivated 非激活(失去焦点状态)windowIconified 最小化windowDeiconified 最小化恢复正常windowClosing 关闭(右上角X),优先于windowClosedwind...原创 2019-01-12 20:36:53 · 3780 阅读 · 0 评论 -
map,set,list
Map用来描述数学中的映射关系: 存在两个集合A,B,在f条件下,对于A中的每个元素,在B中都能找到唯一确定对的元素与其相对应。 f: A->BMap简介严格上来说,Map没有继承Collection接口,并不是集合。Map仅仅表示A,B之间的关系,由于其能存储数据,所以习惯性的称其为集合。Map接口的关系图Map的key-value每次向Map中存储数据时,都应该同时...原创 2019-01-14 21:54:29 · 105 阅读 · 0 评论 -
foreach
java 里面for (String str : s){}怎么理解?这种写法是增强for循环,for(int i = 0;i < s.length(); i++){String str = s[i]; //当成数组的写法}编译器会认为:1.创建名称为str 的String变量。2.将s的第一个元素赋给str 。3.执行重复的内容。4.赋值给下一个元素str 。5.重复执...原创 2019-01-26 20:32:35 · 116 阅读 · 0 评论 -
java Map的基本用法
1.map储存数据的方式,map储存数据的形式是一个key和一个value对应, 即Map<String,String> map = new HashMap<String,String>(); 其储存的数据类型可以是任意的。 2.接下来我们简单的介绍一下它添加数据和遍历数据的方法: map.put("key1", "value1")...原创 2019-02-05 20:09:39 · 12022 阅读 · 0 评论