- 博客(13)
- 收藏
- 关注
原创 Intellji Idea的tomcat项目修改代码后无效的问题
最近在做一个maven项目,spring+mybatis,配置到tomcat上,另外还有gihub版本管理。出现了一些问题。将登录方法的method从Get改为Post,再次运行,用postman测试,显示Post方法不支持,Get方法仍能运行。写好mapper里的sql语句,运行报错,Invalid bound statement (not found): 后跟mapper接口的方法名,大意就是通过接口找不到mapper.xml里面的sql语句。这两个问题都可以归结为idea更改代码后重启项目更改.
2020-12-16 13:27:25
3222
1
原创 2020版本IDEA创建web项目注意事项
一、创建web项目2019版IDEA创建web项目非常清晰,File->new->Project,选中 java Enterprise,配置jdk,tomcat,勾选Web Application案例,注意勾选生成web.xml文件2020版IDEA新建项目时点击 java Enterprise的页面发生了改变,勾选Web Profile,可以创建web项目,其中的类也可以继承HttpServlet、实现Servlet接口,但是webapps文件夹存储位置和2019版不
2020-10-21 11:19:31
1140
2
原创 Java之线程池与Lambda表达式
文章目录一、线程池1.1 缓存线程池CachedThreadPool1.2 定长线程池FixedThreadPool1.3 单线程线程池SingleThreadExecutor1.4 周期性任务定长线程池ScheduledThreadPool一、线程池提到线程线程池我们先来说一下线程池的好处,线程池的有点大概可以概括三点:重用线程池中的线程,避免因为线程的创建和销毁所带来的性能开销。能有效控制线程池的最大并发数,避免大量线程之间因互相抢夺系统资源而导致的阻塞现象。能够对线程进行简单的管理,..
2020-09-26 14:19:05
680
原创 Java多线程之基础篇
一、概述1.1 进程与线程进程是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。进程实体由程序段, 数据段, PCB(进程控制块)组成。线程可以看做轻量级进程,线程是进程的执行单元,是进程调度的基本单位。每一个进程都是拥有一个独立的内存空间的应用程序,线程是进程中的一个执行路径,共享一个内存空间(拥有自己的栈空间,共享堆内存),线程之间可以自由切换,并发执行。1.2 线程的调度分时调度所有线程轮流使用CPU的使用权,平均分配每个线程占用CPU的时间。抢占式调
2020-09-12 17:36:57
186
原创 Java序列化与反序列化的介绍,过时了吗?
一、概述序列化的原本意图是希望对一个Java对象作一下“变换”,变成字节序列,这样一来方便持久化存储到磁盘,避免程序运行结束后对象就从内存里消失,另外变换成字节序列也更便于网络运输和传播,所以概念上很好理解:序列化:把Java对象转换为字节序列。反序列化:把字节序列恢复为原先的Java对象。我们知道,当两个进程进行远程通信时,可以相互发送各种类型的数据,包括文本、图片、音频、视频等, 而这些数据都会以二进制序列的形式在网络上传送。那么当两个Java进程进行通信时,能否实现进程间的对象传送呢?这就
2020-09-11 17:09:20
161
原创 .properties文件与Properties类
一、概述当我们写一个简单程序(例如图书管理、快递管理等)时,经常会有一些困扰,我们上一次录入的对象信息,下一次都不能保存。在我们学习了文件的io操作后,也许可以将这些信息写入文件中,下一次运行程序时就可以载入数据。这些信息的存储有一些成熟的格式,比如说XML,JSON等,我们先来学习一下.properties文件。Properties类继承HashTable,可以存取键值对,属性列表中的每个键及其对应的值都是一个字符串。该类的方法有:void load(InputStream inStream)
2020-09-11 16:11:29
146
原创 Java中的io流,输入输出我们该用什么?
一、概述Java IO,即input/output,输入输出系统。无论什么样的程序,我们都难免和输入输出相关的媒介打交道,对于不同的媒介(如文件、控制台、网络),采用不同的方式(顺序、随机、二进制、按字符、按字节、按行)进行输入和输出,是十分复杂的一个问题。Java类库提供了大量的类来解决这些难题,这些类位于java.io包中。1.1 流在Java IO中,流是一个核心的概念。流从概念上来说是一个连续的数据流。你既可以从流中读取数据,也可以往流中写数据。流与数据源或者数据流向的媒介相关联。在Java
2020-09-11 15:30:53
451
原创 JAVA数据结构之Map映射(新手版)
1.1 Map首先要注意,Map和Collection为同一级别的,而不是和List Set同一级别。方法有:void clear() 从此映射中删除所有映射(可选操作)。V put(K key, V value) 将指定的值与此映射中的指定键相关联(可选操作)。返回value,如果key已经关联一个value,则将新的替换旧的,然后返回旧的valueboolean containsKey(Object key) 如果此映射包含指定键的映射,则返回 true 。boolean cont
2020-09-07 16:03:47
502
原创 JAVA 数据结构之集合总结(初学版)
一、概述Collection接口是在整个Java类集中保存单值的最大操作空接口,通常我们使用List和Set这两个子接口,List允许重复元素,Set不允许重复元素。1.1 Collection接口1.2List接口List是Collection的子接口,里面所有的内容都是允许重复的。List重载了Collection的remove方法,传入下标,在删除的同时还能返回内容。所以当我们想取出一个数据并删除的时候,可以不用get方法,而用remove方法。常用的实现类有:ArrayList,Ve
2020-09-07 15:06:26
185
原创 AVA 常用类库总结(3)字符串类
String每一个程序都离不开字符串的存储,所以我单独写一篇博客来整理String类的方法。字符串本质上是一个字符数组,由于数组的长度不可变,所以字符串一旦创建后无法更改,正是由于这个特性,String对象是可共享的。即,如果创建两个字符串,且内容一样,由于不可更改性,Java会将这两个字符串存在同一个内存地址。但是,如果是使用new关键字创建对象,一定是重开了一块空间来存储。字符串常量池方法区(Method Area)又称永久代(Permant Generation),又称非堆区(Non-
2020-09-05 15:03:58
256
原创 JAVA 常用类库总结(2)日期相关类
java.util.Date观察API文档,我们会发现,Date类有很多方法标记已过时。这是Java的JDK更新版本时,发现之前的方法有bug,但是还有很多使用这个方法的程序并没有出现bug,所以不能直接删除,当你使用这些方法时,编辑器会划一条删除线 ,告诉程序员这个方法已过时,可以使用新的方法,当然Java中也有目前也没有解决的bug。现在,我们来学习一下Date未过时的方法。Date表示的时刻精度为毫秒long getTime()该方法返回一个long类型数据,获取从格林威治时间1970年1
2020-09-05 00:01:06
165
原创 JAVA 常用类库总结(1)
写在前面要想成为一个优秀的Java工程师,会看源码是不可或缺的必备技能。在IDEA里,Ctrl+鼠标左键就可以看到类的源码。同样的,也要熟悉Java的API文档。这里简单的介绍一些Java类库及其常用的方法,会根据我自己的学习进度进行不定时更新。java.util.Objects我们知道 java.lang.Object 是类层次的根,所有类的基类,即所有类都继承自Object。这里我们介绍的是 java.util.Objects 类。此类包含static实用程序方法,用于操作对象或在操作前检查某些
2020-09-02 21:12:21
490
1
原创 JAVA 一个简单的控制台五子棋程序 一看就会
1、绘制棋盘定义一个二维数组来绘制棋盘,第一行第一列用来显示坐标,其他为0表示没有棋子,黑方为1,白方为2。static int[][] map = new int[17][17]; // 二位数组作为棋盘在这里只需要将第一行第一列的坐标信息填充进去即可。public int[][] buildMap() { for (int j = 0; j < 16; j++) // 仅需构建棋盘边界 map是静态变量初始值为0 map[0][j] = j; for (int i = 0
2020-09-02 16:16:33
691
4
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人