Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit eba56dc

Browse files
springboot 结合FastDFS实现文件上传
0 parents commit eba56dc

File tree

16 files changed

+907
-0
lines changed

16 files changed

+907
-0
lines changed

‎.gitignore

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
/target/
2+
!.mvn/wrapper/maven-wrapper.jar
3+
4+
### STS ###
5+
.apt_generated
6+
.classpath
7+
.factorypath
8+
.project
9+
.settings
10+
.springBeans
11+
.sts4-cache
12+
13+
### IntelliJ IDEA ###
14+
.idea
15+
*.iws
16+
*.iml
17+
*.ipr
18+
19+
### NetBeans ###
20+
/nbproject/private/
21+
/build/
22+
/nbbuild/
23+
/dist/
24+
/nbdist/
25+
/.nb-gradle/

‎.mvn/wrapper/maven-wrapper.jar

47.2 KB
Binary file not shown.

‎.mvn/wrapper/maven-wrapper.properties

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.5.4/apache-maven-3.5.4-bin.zip

‎README.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
fastdfs
2+
-
3+
源码: GItHub地址:https://github.com/happyfish100
4+
5+
文件上传后的路径:
6+
group1/M00/00/43/wKgCYVwhkTOAUxZ1AGf8LohRDBw966.jpg
7+
解读:
8+
一、组名:文件上传后所在storage组名称,在文件上传成功后有storage服务器返回,需要客户端自行保存。
9+
10+
二、虚拟磁盘路径:storage配置的虚拟路径,与磁盘选项store_path*对应。如果配置了store_path0则是M00,如果配置了store_path1则是M01,以此类推。
11+
12+
三、数据两级目录:storage服务器在每个虚拟磁盘路径下创建的两级目录,用于存储数据文件。
13+
14+
四、文件名:与文件上传时不同。是由存储服务器根据特定信息生成,文件名包含:源存储服务器IP地址、文件创建时间戳、文件大小、随机数和文件拓展名等信息。
15+

‎mvnw

Lines changed: 286 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,286 @@
1+
#!/bin/sh
2+
# ----------------------------------------------------------------------------
3+
# Licensed to the Apache Software Foundation (ASF) under one
4+
# or more contributor license agreements. See the NOTICE file
5+
# distributed with this work for additional information
6+
# regarding copyright ownership. The ASF licenses this file
7+
# to you under the Apache License, Version 2.0 (the
8+
# "License"); you may not use this file except in compliance
9+
# with the License. You may obtain a copy of the License at
10+
#
11+
# http://www.apache.org/licenses/LICENSE-2.0
12+
#
13+
# Unless required by applicable law or agreed to in writing,
14+
# software distributed under the License is distributed on an
15+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16+
# KIND, either express or implied. See the License for the
17+
# specific language governing permissions and limitations
18+
# under the License.
19+
# ----------------------------------------------------------------------------
20+
21+
# ----------------------------------------------------------------------------
22+
# Maven2 Start Up Batch script
23+
#
24+
# Required ENV vars:
25+
# ------------------
26+
# JAVA_HOME - location of a JDK home dir
27+
#
28+
# Optional ENV vars
29+
# -----------------
30+
# M2_HOME - location of maven2's installed home dir
31+
# MAVEN_OPTS - parameters passed to the Java VM when running Maven
32+
# e.g. to debug Maven itself, use
33+
# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
34+
# MAVEN_SKIP_RC - flag to disable loading of mavenrc files
35+
# ----------------------------------------------------------------------------
36+
37+
if [ -z "$MAVEN_SKIP_RC" ] ; then
38+
39+
if [ -f /etc/mavenrc ] ; then
40+
. /etc/mavenrc
41+
fi
42+
43+
if [ -f "$HOME/.mavenrc" ] ; then
44+
. "$HOME/.mavenrc"
45+
fi
46+
47+
fi
48+
49+
# OS specific support. $var _must_ be set to either true or false.
50+
cygwin=false;
51+
darwin=false;
52+
mingw=false
53+
case "`uname`" in
54+
CYGWIN*) cygwin=true ;;
55+
MINGW*) mingw=true;;
56+
Darwin*) darwin=true
57+
# Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home
58+
# See https://developer.apple.com/library/mac/qa/qa1170/_index.html
59+
if [ -z "$JAVA_HOME" ]; then
60+
if [ -x "/usr/libexec/java_home" ]; then
61+
export JAVA_HOME="`/usr/libexec/java_home`"
62+
else
63+
export JAVA_HOME="/Library/Java/Home"
64+
fi
65+
fi
66+
;;
67+
esac
68+
69+
if [ -z "$JAVA_HOME" ] ; then
70+
if [ -r /etc/gentoo-release ] ; then
71+
JAVA_HOME=`java-config --jre-home`
72+
fi
73+
fi
74+
75+
if [ -z "$M2_HOME" ] ; then
76+
## resolve links - 0ドル may be a link to maven's home
77+
PRG="0ドル"
78+
79+
# need this for relative symlinks
80+
while [ -h "$PRG" ] ; do
81+
ls=`ls -ld "$PRG"`
82+
link=`expr "$ls" : '.*-> \(.*\)$'`
83+
if expr "$link" : '/.*' > /dev/null; then
84+
PRG="$link"
85+
else
86+
PRG="`dirname "$PRG"`/$link"
87+
fi
88+
done
89+
90+
saveddir=`pwd`
91+
92+
M2_HOME=`dirname "$PRG"`/..
93+
94+
# make it fully qualified
95+
M2_HOME=`cd "$M2_HOME" && pwd`
96+
97+
cd "$saveddir"
98+
# echo Using m2 at $M2_HOME
99+
fi
100+
101+
# For Cygwin, ensure paths are in UNIX format before anything is touched
102+
if $cygwin ; then
103+
[ -n "$M2_HOME" ] &&
104+
M2_HOME=`cygpath --unix "$M2_HOME"`
105+
[ -n "$JAVA_HOME" ] &&
106+
JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
107+
[ -n "$CLASSPATH" ] &&
108+
CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
109+
fi
110+
111+
# For Mingw, ensure paths are in UNIX format before anything is touched
112+
if $mingw ; then
113+
[ -n "$M2_HOME" ] &&
114+
M2_HOME="`(cd "$M2_HOME"; pwd)`"
115+
[ -n "$JAVA_HOME" ] &&
116+
JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
117+
# TODO classpath?
118+
fi
119+
120+
if [ -z "$JAVA_HOME" ]; then
121+
javaExecutable="`which javac`"
122+
if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then
123+
# readlink(1) is not available as standard on Solaris 10.
124+
readLink=`which readlink`
125+
if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then
126+
if $darwin ; then
127+
javaHome="`dirname \"$javaExecutable\"`"
128+
javaExecutable="`cd \"$javaHome\" && pwd -P`/javac"
129+
else
130+
javaExecutable="`readlink -f \"$javaExecutable\"`"
131+
fi
132+
javaHome="`dirname \"$javaExecutable\"`"
133+
javaHome=`expr "$javaHome" : '\(.*\)/bin'`
134+
JAVA_HOME="$javaHome"
135+
export JAVA_HOME
136+
fi
137+
fi
138+
fi
139+
140+
if [ -z "$JAVACMD" ] ; then
141+
if [ -n "$JAVA_HOME" ] ; then
142+
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
143+
# IBM's JDK on AIX uses strange locations for the executables
144+
JAVACMD="$JAVA_HOME/jre/sh/java"
145+
else
146+
JAVACMD="$JAVA_HOME/bin/java"
147+
fi
148+
else
149+
JAVACMD="`which java`"
150+
fi
151+
fi
152+
153+
if [ ! -x "$JAVACMD" ] ; then
154+
echo "Error: JAVA_HOME is not defined correctly." >&2
155+
echo " We cannot execute $JAVACMD" >&2
156+
exit 1
157+
fi
158+
159+
if [ -z "$JAVA_HOME" ] ; then
160+
echo "Warning: JAVA_HOME environment variable is not set."
161+
fi
162+
163+
CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
164+
165+
# traverses directory structure from process work directory to filesystem root
166+
# first directory with .mvn subdirectory is considered project base directory
167+
find_maven_basedir() {
168+
169+
if [ -z "1ドル" ]
170+
then
171+
echo "Path not specified to find_maven_basedir"
172+
return 1
173+
fi
174+
175+
basedir="1ドル"
176+
wdir="1ドル"
177+
while [ "$wdir" != '/' ] ; do
178+
if [ -d "$wdir"/.mvn ] ; then
179+
basedir=$wdir
180+
break
181+
fi
182+
# workaround for JBEAP-8937 (on Solaris 10/Sparc)
183+
if [ -d "${wdir}" ]; then
184+
wdir=`cd "$wdir/.."; pwd`
185+
fi
186+
# end of workaround
187+
done
188+
echo "${basedir}"
189+
}
190+
191+
# concatenates all lines of a file
192+
concat_lines() {
193+
if [ -f "1ドル" ]; then
194+
echo "$(tr -s '\n' ' ' < "1ドル")"
195+
fi
196+
}
197+
198+
BASE_DIR=`find_maven_basedir "$(pwd)"`
199+
if [ -z "$BASE_DIR" ]; then
200+
exit 1;
201+
fi
202+
203+
##########################################################################################
204+
# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
205+
# This allows using the maven wrapper in projects that prohibit checking in binary data.
206+
##########################################################################################
207+
if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then
208+
if [ "$MVNW_VERBOSE" = true ]; then
209+
echo "Found .mvn/wrapper/maven-wrapper.jar"
210+
fi
211+
else
212+
if [ "$MVNW_VERBOSE" = true ]; then
213+
echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..."
214+
fi
215+
jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.4.2/maven-wrapper-0.4.2.jar"
216+
while IFS="=" read key value; do
217+
case "$key" in (wrapperUrl) jarUrl="$value"; break ;;
218+
esac
219+
done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties"
220+
if [ "$MVNW_VERBOSE" = true ]; then
221+
echo "Downloading from: $jarUrl"
222+
fi
223+
wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar"
224+
225+
if command -v wget > /dev/null; then
226+
if [ "$MVNW_VERBOSE" = true ]; then
227+
echo "Found wget ... using wget"
228+
fi
229+
wget "$jarUrl" -O "$wrapperJarPath"
230+
elif command -v curl > /dev/null; then
231+
if [ "$MVNW_VERBOSE" = true ]; then
232+
echo "Found curl ... using curl"
233+
fi
234+
curl -o "$wrapperJarPath" "$jarUrl"
235+
else
236+
if [ "$MVNW_VERBOSE" = true ]; then
237+
echo "Falling back to using Java to download"
238+
fi
239+
javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java"
240+
if [ -e "$javaClass" ]; then
241+
if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
242+
if [ "$MVNW_VERBOSE" = true ]; then
243+
echo " - Compiling MavenWrapperDownloader.java ..."
244+
fi
245+
# Compiling the Java class
246+
("$JAVA_HOME/bin/javac" "$javaClass")
247+
fi
248+
if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
249+
# Running the downloader
250+
if [ "$MVNW_VERBOSE" = true ]; then
251+
echo " - Running MavenWrapperDownloader.java ..."
252+
fi
253+
("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR")
254+
fi
255+
fi
256+
fi
257+
fi
258+
##########################################################################################
259+
# End of extension
260+
##########################################################################################
261+
262+
export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}
263+
if [ "$MVNW_VERBOSE" = true ]; then
264+
echo $MAVEN_PROJECTBASEDIR
265+
fi
266+
MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"
267+
268+
# For Cygwin, switch paths to Windows format before running java
269+
if $cygwin; then
270+
[ -n "$M2_HOME" ] &&
271+
M2_HOME=`cygpath --path --windows "$M2_HOME"`
272+
[ -n "$JAVA_HOME" ] &&
273+
JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
274+
[ -n "$CLASSPATH" ] &&
275+
CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
276+
[ -n "$MAVEN_PROJECTBASEDIR" ] &&
277+
MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"`
278+
fi
279+
280+
WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
281+
282+
exec "$JAVACMD" \
283+
$MAVEN_OPTS \
284+
-classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \
285+
"-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
286+
${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@"

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /