maven

eclipse 创建mavenWeb项目

孤街醉人 提交于 2021-02-15 01:57:14
eclipse 创建mavenWeb项目 CreationTime--2018年6月7日18点46分 Author:Marydon 一、创建MavenWeb项目   1.右键-->New-->Maven Project;   2.设置要创建的maven项目的保存位置,使用默认项;   3.创建web项目,必须选择maven-archetype-webapp,其他选项默认;   4.输入group Id和Artifact Id;   说明:    group id-->规定该项目属于哪个组;    artifact id-->项目名,具有唯一性;    version-->项目的版本号;    packaging-->项目打包后的输出类型(war,jar) 。   5.创建main下的java文件夹;   src-->main-->右键-->New-->Folder   文件夹名称为java    选中项目名称-->右键刷新-->你会发现java文件夹跑到了上面   注意: 必须这种方式创建java文件夹。   6.创建src/test/resources文件夹;   选中项目-->右键-->New-->Other(Ctrl+N)   在向导中输入:sour-->选择Source Folder文件夹   输入:src/test/resources   

这套面试题你能答出来多少?

馋奶兔 提交于 2021-02-14 23:19:01
引言: 前些天去参加面试,面试官对我出了如下一套面试题,大家不妨利用空闲时间也测试下自己的知识水平,试卷满分150分,你能答出来多少呢? 心动不如行动,赶快测试一下吧! 笔试开始 ▼ 1、下面程序的运行结果是什么?(10) ReentrantLock lock new ReentantLock (Boolean. True); try{ lock.lock(); ..// }catch (Exception e){ ..// }finally{ lock. unlock() ; } 2、聊聊关键字synchronized的工作机制是什么? (10) 3、StringBuilder, StringBuffer的区别是什么? (5) 4、聊聊组合与聚合的区别是什么? (5) 5、SpringMVC的工作原理是什么? (建议图解) (10) 6、浅谈SpringBoot的优势是什么?简单谈谈SpringBoot的启动过程中。@SpringBootApplication包括哪几个注解? (10) 7、SQL优化的原理是什么?若不清晰,则列举己知的优化措施方式(5)。(不少于三种) 8、title与h1两个标签的区别是什么? (5) 9、列举常用的javascript对象(5) 10、样式position有几种取值? 对布局会产生什么影响? (5) 11、父类构造器,子类构造器

Maven-插件build-helper-maven-plugin

流过昼夜 提交于 2021-02-14 23:14:06
  把原有项目添加到Maven管理时,总会出现很多莫名奇妙的问题,其中之一便是Maven默认的项目结构和自己的项目结构不一致,导致无法编译源代码,更不用说部署、运行项目了。   Java程序开发,一般使用Eclipse、MyEclipse等工具,其源码目录为src,这与Maven默认的src/main/java不同。因此,在没有额外配置的情况下,使用Maven命令无法完成代码的编译。   针对这种情况,codehaus提供了build-helper-maven-plugin插件来支持自定义的项目目录结构(相对于Maven默认目录结构来说)。 官网: http://www.mojohaus.org/build-helper-maven-plugin/ <!-- https://mvnrepository.com/artifact/org.codehaus.mojo/build-helper-maven-plugin --> <dependency> <groupId>org.codehaus.mojo</groupId> <artifactId>build-helper-maven-plugin</artifactId> <version>3.0.0</version> </dependency> Goals 概览 build-helper:add-source Add more

Dockerfile 之最小化 Java 镜像的常用技巧

折月煮酒 提交于 2021-02-14 14:07:32
背景 随着容器技术的普及,越来越多的应用被容器化。人们使用容器的频率越来越高,但常常忽略一个基本但又非常重要的问题 - 容器镜像的体积。本文将介绍精简容器镜像的必要性并以基于 spring boot 的 java 应用为例描述最小化容器镜像的常用技巧。 精简容器镜像的必要性 精简容器镜像是非常必要的,下面分别从安全性和敏捷性两个角度进行阐释。 安全性 基于安全方面的考虑,将不必要的组件从镜像中移除可以减少攻击面、降低安全风险。虽然 docker 支持用户通过 Seccomp 限制容器内可以执行操作或者使用 AppArmor 为容器配置安全策略,但它们的使用门槛较高,要求用户具备安全领域的专业素养。 敏捷性 精简的容器镜像能提高容器的部署速度。假设某一时刻访问流量激增,您需要通过增加容器副本数以应对突发压力。如果某些宿主机不包含目标镜像,需要先拉取镜像,然后启动容器,这时使用体积较小的镜像能加速这一过程、缩短扩容时间。另外,镜像体积越小,其构建速度也越快,同时还能减少存储和传输的成本。 常用技巧 将一个 java 应用容器化所需的步骤可归纳如下: 编译 java 源码并生成 jar 包。 将应用 jar 包和依赖的第三方 jar 包移动到合适的位置。 本章所用的样例是一个基于 spring boot 的 java 应用 spring-boot-docker,所用的未经优化的

SpringCloud----熔断机制 -- 断路器hystrix

浪子不回头ぞ 提交于 2021-02-14 13:58:17
参考借鉴:http://www.cnblogs.com/chry/p/7279856.html SpringCloud Netflix实现了断路器库的名字叫Hystrix. 在微服务架构下,通常会有多个层次的服务调用. 下面是微服架构下, 浏览器端通过API访问后台微服务的一个示意图: 一个微服务的超时失败可能导致瀑布式连锁反映,下图中,Hystrix通过自主反馈实现的断路器, 防止了这种情况发生。 图中的服务B因为某些原因失败,变得不可用,所有对服务B的调用都会超时。当对B的调用失败达到一个特定的阀值(5秒之内发生20次失败是Hystrix定义的缺省值), 链路就会被处于open状态, 之后所有所有对服务B的调用都不会被执行, 取而代之的是由断路器提供的一个表示链路open的Fallback消息. Hystrix提供了相应机制,可以让开发者定义这个Fallbak消息. open的链路阻断了瀑布式错误, 可以让被淹没或者错误的服务有时间进行修复。这个fallback可以是另外一个Hystrix保护的调用, 静态数据,或者合法的空值. Fallbacks可以组成链式结构,所以,最底层调用其它业务服务的第一个Fallback返回静态数据. 下面,进入正题,在之前的两HELLO WORLD服务集群中加入断路器, 防止其中一个Hello world挂掉后, 导致系统发生连锁超时失败。 1.

PageHelper分页(十)

瘦欲@ 提交于 2021-02-14 12:52:12
分页有两种: (1) 物理分页:物理分页依赖的是某一物理实体,这个物理实体就是数据库,比如MySQL数据库提供了limit关键字,程序员只需要编写带有limit关键字的SQL语句,数据库返回的就是分页结果。建议使用。 (2) 逻辑分页:辑分页依赖的是程序员编写的代码。数据库返回的不是分页结果,而是全部数据,然后再由程序员通过代码获取分页数据,常用的操作是一次性从数据库中查询出全部数据并存储到List集合中,因为List集合有序,再根据索引获取指定范围的数据。 PageHelper是一款开源免费的Mybatis第三方物理分页插件。使用PageHelper可以极大地简化我们的开发。 目前PageHelper支持的数据库有:Oracle、Mysql、DB2、SqlServer(2005,2008,2012)、SQLite、MariaDB、PostgreSQL、Hsqldb、H2、Informix、Derby、Phoenix。 一、PageHelper的使用 1. 引入分页插件 引入分页插件有下面2种方式,推荐使用 Maven 方式。 (1) 引入jar包 http://repo1.maven.org/maven2/com/github/pagehelper/pagehelper/ 由于使用了sql 解析工具,你还需要下载 jsqlparser.jar: http://repo1

Java本地缓存解决方案其一(使用Google的CacheBuilder)

心已入冬 提交于 2021-02-14 12:03:14
前不久,业务实现上需要用到本地缓存来解决一些数据量相对较小但是频繁访问的数据,通过查找各种资料,找到了一种可以实现的方案——采用的是Google的CacheBuilder。下面是代码实现过程: 1.首先在maven中引入下面的包; < dependency > < groupId >com.google.guava </ groupId > < artifactId >guava </ artifactId > < version >19.0 </ version > </ dependency > 2.下面这段是缓存代码,用到了匿名内部类的方式; package com.jd.common.util; import java.util.concurrent.TimeUnit; import com.google.common.cache.CacheBuilder; import com.google.common.cache.CacheLoader; import com.google.common.cache.LoadingCache; public class AndyService { private final LoadingCache<String, String> cache; public AndyService() { /** * 5秒自动过期 */ cache

springboot整合jsp

ぐ巨炮叔叔 提交于 2021-02-14 09:21:05
1.新建Maven工程 2.pom关键依耐 <? xml version="1.0" encoding="UTF-8" ?> < project xmlns ="http://maven.apache.org/POM/4.0.0" xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation ="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" > < modelVersion > 4.0.0 </ modelVersion > < parent > < groupId > org.springframework.boot </ groupId > < artifactId > spring-boot-starter-parent </ artifactId > < version > 1.5.10.RELEASE </ version > </ parent > < groupId > com.cchengyyj </ groupId > < artifactId > springboot-jsp </ artifactId > < version > 0.0.1-SNAPSHOT </

Spring Boot面试题

孤者浪人 提交于 2021-02-13 21:39:42
Spring Boot 是微服务中最好的 Java 框架. 我们建议你能够成为一名 Spring Boot 的专家。 问题一 Spring Boot、Spring MVC 和 Spring 有什么区别? SpringFrame SpringFramework 最重要的特征是依赖注入。所有 SpringModules 不是依赖注入就是 IOC 控制反转。 当我们恰当的使用 DI 或者是 IOC 的时候,我们可以开发松耦合应用。松耦合应用的单元测试可以很容易的进行。 SpringMVC Spring MVC 提供了一种分离式的方法来开发 Web 应用。通过运用像 DispatcherServelet,MoudlAndView 和 ViewResolver 等一些简单的概念,开发 Web 应用将会变的非常简单。 SpringBoot Spring 和 SpringMVC 的问题在于需要配置大量的参数。 <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix"> <value>/WEB-INF/views/</value> </property> <property name="suffix"> <value>.jsp</value> <

IDEA中用Maven创建webapp项目失败(没有src等文件目录) 报错: Received fatal alert: protocol_version 解决方法

我只是一个虾纸丫 提交于 2021-02-13 20:17:08
IDEA中用Maven创建webapp项目失败(没有src等文件目录) 报错: Received fatal alert: protocol_version 解决方法 参考文章: (1)IDEA中用Maven创建webapp项目失败(没有src等文件目录) 报错: Received fatal alert: protocol_version 解决方法 (2)https://www.cnblogs.com/jsoso/p/11208065.html 备忘一下。 来源: oschina 链接: https://my.oschina.net/u/4437974/blog/4952660