- 博客(27)
- 资源 (3)
- 收藏
- 关注
原创 解决JavaEE项目tomcat中文乱码问题【最全方案】
一、Request请求中文参数乱码问题解决方案:1、GET请求中文参数值乱码问题解决: a)解决乱码的核心思路,就是把得到的乱码按照原来乱码的步骤逆序操作。 1、先以iso-8895-1进行编码 2、然后再以utf-8进行解码 3、代码示例: String username = request.getParameter("username"); username = new String(username.get...
2020-06-27 19:25:20
728
原创 如何在github上高效的搜索自己感兴趣的开源项目呢
如何在github上高效的搜索自己感兴趣的开源项目呢? in:name 关键字:表示查询仓库名称中包含某些关键字的仓库,比如我们只想查找仓库名称包括Spring Cloud的仓库,可以使用:in:name spring cloud进行搜索。 in:description关键字:表示查询仓库描述中包含某些关键字的仓库,比如我们只想朝招仓库描述中包括Spring Cloud的仓库,...
2020-03-07 14:08:56
726
原创 事物的ACID以及事务的四种隔离级别
事务具有4个特征,分别是原子性、一致性、隔离性和持久性,简称事务的ACID特性;一、原子性(atomicity)一个事务要么全部提交成功,要么全部失败回滚,不能只执行其中的一部分操作,这就是事务的原子性二、一致性(consistency)事务的执行不能破坏数据库数据的完整性和一致性,一个事务在执行之前和执行之后,数据库都必须处于一致性状态。如果数据库系统在运行过程中发生故障,有...
2020-03-05 18:34:51
307
原创 系统且透彻理解Java NIO(内容较多,慎入)
本文揭示了Java NIO底层的诸多细节与使用和理解上的陷阱,对于NIO的学习非常有帮助。本文是笔者在学习NIO过程中发现的一些比较容易让人忽略的知识的一个总结,而这些让人忽略的小细节恰恰是NIO网络编程中必不可少。虽然现在我们不会直接编写NIO来完成我们的网络层通讯,而是使用成熟的基于NIO的网络框架来实现我们的网络层。如,netty、mina。但对NIO网络编程过程的了解,非常有助于我们...
2020-02-18 00:21:44
300
原创 解决Navicat for MySQL 连接 Docker中运行的Mysql出现1251- Client does not support authentication protocol 错误
1、拉取最新的mysql:docker pull mysql2、配置端口映射以及密码启动mysql:docker run ‐p 3306:3306 ‐‐name mysql02 ‐e MYSQL_ROOT_PASSWORD=123456 ‐dmysql3、进入docker中mysql控制台:docker exec -it 406251a4f34d bash说明:406251a4f3...
2020-02-18 00:20:49
446
原创 Docker方式启动tomcat,访问首页出现404错误
1、使用docker pull tomcat 从阿里云上默认下载了一个latest的版本的tomcat(版本是从阿里云上拉下的:8.5.50),进行相关网络端口映射,如下命令:docker run --name mytomcat01 -d -p 8888:8080 tomcat2、浏览器运行访问不了,报404,这个证明tomcat已经起来了,可能webapp路径下没有配置主页。3、输...
2020-02-16 23:39:11
1737
2
原创 IDea gradle 'Spring Boot Configuration Annotation Processor not configured'
With Gradle 4.5 and earlier, the dependency should be declared in thecompileOnlyconfiguration, as shown in the following example:dependencies { compileOnly "org.springframework.boot:spring-boot-...
2020-02-09 13:46:56
1090
原创 使用idea构建一个springboot+gradle项目
1、根据idea向导创建gradle项目:2、配置gradle3、配置build.gradle文件buildscript { ext { springBootVersion = '2.2.4.RELEASE' springDependencyVersion = '1.0.9.RELEASE' } repositori...
2020-02-08 14:49:15
4195
原创 关于gradle加快构建速度采用阿里云中央仓库的配置
关于gradle加快构建速度采用阿里云中央仓库的配置在gradlehome下的init.d目录下加入一个名叫 init.gradle 的文件,然后把阿里云的配置加进去,内容如下:、allprojects { repositories { maven { name "aliyunmaven" ur...
2020-02-06 22:58:04
159
原创 CentOS7安装GitLab(亲测通过)
安装CentOS7的镜像文件地址:https://mirrors4.tuna.tsinghua.edu.cn/centos/7/isos/x86_64/CentOS-7-x86_64-Everything-1908.iso说明:镜像文件可能一直在更新,下载最新的即可。安装的GitLab的安装地址:https://packages.gitlab.com/gitlab/gitlab-ce/p...
2019-12-01 17:05:27
555
原创 Struts2验证框架输出信息实现国际化案例
<validator type="requiredstring"> <param name="fieldName">username</param> <message>${getText("username.invalid",{username})} </message> </valid...
2019-09-14 17:31:36
118
原创 Tomcat解决中文乱码问题
修改Tomcat的server.xml文件,该文件位于 tomcat/conf,红色部分为添加部分,也就是当前使用的HTTP端口的连接方式的设置。找到Connector标签,使 Tomcat 服务器以UTF-8模式进行工作,从底层对乱码进行处理,修改如下:<ConnectorURIEncoding="utf-8"port="8080" protocol="HTTP/1.1"...
2019-09-10 17:15:07
117
原创 Java面试官最爱的volatile关键字
在Java相关的岗位面试中,很多面试官都喜欢考察面试者对Java并发的了解程度,而以volatile关键字作为一个小的切入点,往往可以一问到底,把Java内存模型(JMM),Java并发编程的一些特性都牵扯出来,深入地话还可以考察JVM底层实现以及操作系统的相关知识。下面我们以一次假想的面试过程,来深入了解下volitile关键字吧!面试官: Java并发这块了解的怎么样?说说你对vola...
2019-08-25 14:03:18
134
原创 设计模式之组合模式(Composite)【Java实现】
组合模式(Composite Pattern):定义命令模式(Composite Pattern):组合模式有时候又叫部分-整体模式,它使我们树形结构的问题中,模糊了简单元素和复杂元素的概念,客户程序可以像处理简单元素一样来处理复杂元素,从而使得客户程序与复杂元素的内部结构解耦。意图:将对象组合成树形结构以表示“部分-整体”的层次结构。Composite模式使得用户对单个对象和组合对象...
2019-08-24 15:56:13
167
原创 设计模式之命令模式(Command)【Java实现】
命令模式(Command Pattern):定义命令模式(Command Pattern):将一个请求封装为一个对象,从而你可以用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作。使用场景在某些场合,比如要对行为进行"记录、撤销/重做、事务"等处理,这种无法抵御变化的紧耦合是不合适的。在这种情况下,如何将"行为请求者"与"行为实现者"解耦?将一组行为...
2019-08-24 14:48:25
303
原创 设计模式之适配器模式(Adapter)【Java实现】
适配器模式(Adapter Pattern):定义适配器模式(Adapter Pattern):将一个接口转换成客户希望的另一个接口,使接口不兼容的那些类可以一起工作,其别名为包装器(Wrapper)。适配器模式既可以作为类结构型模式,也可以作为对象结构型模式。意图:将一个类的接口转换成客户希望的另外一个接口。Adapter 模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作...
2019-08-22 21:45:25
287
原创 myeclipse 启动后一直在Initializing Java Tooling
原因:JDK运行路径配置错误找到设置面板【Window】-》【Preferences】-》【Java】-》【Installed JREs】设置成自己安装的JDK重启,发现问题还没解决!!!找到eclipse目录,编辑eclipse.ini文件,在-vmargs参数之前增加以下参数,问题解决-vmD:\jdk160_18\bin(JDK安装目录)如何查找ec...
2019-08-22 19:13:49
677
原创 配置JAVA环境变量(最近重装了下系统,发现有必要记录下)
一、去官网下载并安装JDK二、打开:我的电脑->属性->高级系统设置->环境变量系统变量下:新建JAVA_HOME:D:\jdk160_18 【根据JDK安装情况】新建CLASSPATH:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar在已有的系统变量“Path”下新建%JAVA_HOME%...
2019-08-22 17:58:42
267
原创 设计模式之模板方法模式(Template Method)(Java实现)
模板方法模式(Template Method):定义一个操作中的算法骨架,而将一些步骤延伸到子类中去,使得子类可以不改变一个算法的结构,即可重新定义该算法的某些步骤。这里需要服用的是算法的结构,也就是步骤,而步骤的实现可以在子类中完成。使用场景1、一次性实现一个算法的不变部分,并且将可变的行为留给子类来完成。2、各子类公共的行为应该被提取出来并集中到一个公共父类中以避免代码的重...
2019-08-21 20:42:05
134
原创 Junit4使用教程详解
下载Junit4相关Jar包(一般eclipse等IDE已经集成):资源链接:https://download.youkuaiyun.com/download/yl405001832/11580748将jar包导入项目右键点击项目,点击Build Path选择 Configure Build Path如果采用eclipse集成的jar包:如果采用自己下载的j...
2019-08-20 23:02:52
3175
原创 JUNIT3.8使用详解
一:junit 3.8使用原则测试类必须要继承与TestCase父类;测试方式需要满足如下原则: 1)public的 2)void的 3)无方法参数 4)方法名称必须以test开头Test Case之间一定要保持完全的独立性,不允许出现任何的依赖关系。使用Assert中的各类assert方法,在测试代码不会执行的地方插入Assert.fail()方...
2019-08-19 21:39:52
1033
原创 ProcessBuilder使用注意事项
1、ProcessBuilder.start().getInputStream()是线程阻塞的,如果调用其他java应用,很容易阻塞,程序需要做线程处理或者直接加上这句:processBuilder.redirectErrorStream(true);...
2019-08-18 10:21:22
2832
原创 DOS命令编译带有包名的JAVA类
javac -d . HelloWord.java(注意-d空一格再打点再空一格)说明这个点表示class文件从当前目录开始创建目录结构如果java文件不在当前路径,如下:javac -d . ./database/TableCreationProcessorFactory.java...
2019-08-18 09:14:48
140
原创 【JAVA】用哈希散列(拉链法)实现简单的HashMap源代码
1、定义和实现Map.Entry://需要着重注意重写hashCode()和equals()这两个方法。public class MapEntry<K,V> implements Map.Entry<K,V> { private K key; private V value; public MapEntry(K key, V value) { t...
2019-08-06 19:47:06
286
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人