diff --git a/UPDATE.md b/UPDATE.md
index 0afc010..f3e9149 100644
--- a/UPDATE.md
+++ b/UPDATE.md
@@ -1,11 +1,19 @@
yexuejc-base 更新记录
------------------
+#### version :1.1.2
+**time:** 2018-5-16 15:03:28
+**branch:** master
+**update:**
+>1.修改依赖
+
+#
#### version :1.1.1
**time:** 2018-5-12 22:25:05
**branch:** master
**update:**
>1.添加RSA
+#
##### version :1.1.0
**time:** 2018-5-12 22:25:05
diff --git a/pom.xml b/pom.xml
index 3adc195..9204f47 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
- * This class provides static utility methods for input/output operations. - *
- * The byte-to-char methods and char-to-byte methods involve a conversion step. - * Two methods are provided in each case, one that uses the platform default - * encoding and the other which allows you to specify an encoding. You are - * encouraged to always specify an encoding because relying on the platform - * default can lead to unexpected results, for example when moving from - * development to production. - *
- * All the methods in this class that read a stream are buffered internally.
- * This means that there is no cause to use a BufferedInputStream
- * or BufferedReader. The default buffer size of 4K has been shown
- * to be efficient in tests.
- *
- * Wherever possible, the methods in this class do not flush or close - * the stream. This is to avoid making non-portable assumptions about the - * streams' origin and further use. Thus the caller is still responsible for - * closing streams after use. - *
- * Origin of code: Excalibur.
- */
-public class IOUtils {
- // NOTE: This class is focused on InputStream, OutputStream, Reader and
- // Writer. Each method should take at least one of these as a parameter,
- // or return one of them.
-
- private static final int EOF = -1;
-
- /**
- * The default buffer size ({@value}) to use for
- * {@link #copyLarge(InputStream, OutputStream)}
- * and
- * {@link (Reader, Writer)}
- */
- private static final int DEFAULT_BUFFER_SIZE = 1024 * 4;
-
- /**
- * Instances should NOT be constructed in standard programming.
- */
- public IOUtils() {
- super();
- }
-
- /**
- * Closes a Closeable unconditionally.
- *
- * Equivalent to {@link Closeable#close()}, except any exceptions will be ignored. This is typically used in - * finally blocks. - *
- * Example code: - *
- *
- * Closeable closeable = null;
- * try {
- * closeable = new FileReader("foo.txt");
- * // process closeable
- * closeable.close();
- * } catch (Exception e) {
- * // error handling
- * } finally {
- * IOUtils.closeQuietly(closeable);
- * }
- *
- * - * Closing all streams: - *
- *
- * try {
- * return IOUtils.copy(inputStream, outputStream);
- * } finally {
- * IOUtils.closeQuietly(inputStream);
- * IOUtils.closeQuietly(outputStream);
- * }
- *
- *
- * @param closeable the objects to close, may be null or already closed
- * @since 2.0
- */
- public static void closeQuietly(final Closeable closeable) {
- try {
- if (closeable != null) {
- closeable.close();
- }
- } catch (final IOException ioe) {
- // ignore
- }
- }
-
- // copy from InputStream
- //-----------------------------------------------------------------------
- /**
- * Copies bytes from an InputStream to an
- * OutputStream.
- *
- * This method buffers the input internally, so there is no need to use a
- * BufferedInputStream.
- *
- * Large streams (over 2GB) will return a bytes copied value of
- * -1 after the copy has completed since the correct
- * number of bytes cannot be returned as an int. For large streams
- * use the copyLarge(InputStream, OutputStream) method.
- *
- * @param input the InputStream to read from
- * @param output the OutputStream to write to
- * @return the number of bytes copied, or -1 if > Integer.MAX_VALUE
- * @throws NullPointerException if the input or output is null
- * @throws IOException if an I/O error occurs
- * @since 1.1
- */
- public static int copy(final InputStream input, final OutputStream output) throws IOException {
- final long count = copyLarge(input, output);
- if (count > Integer.MAX_VALUE) {
- return -1;
- }
- return (int) count;
- }
-
- /**
- * Copies bytes from a large (over 2GB) InputStream to an
- * OutputStream.
- *
- * This method buffers the input internally, so there is no need to use a
- * BufferedInputStream.
- *
- * The buffer size is given by {@link #DEFAULT_BUFFER_SIZE}.
- *
- * @param input the InputStream to read from
- * @param output the OutputStream to write to
- * @return the number of bytes copied
- * @throws NullPointerException if the input or output is null
- * @throws IOException if an I/O error occurs
- * @since 1.3
- */
- public static long copyLarge(final InputStream input, final OutputStream output)
- throws IOException {
-
- byte[] buffer = new byte[DEFAULT_BUFFER_SIZE];
- long count = 0;
- int n = 0;
- while (EOF != (n = input.read(buffer))) {
- output.write(buffer, 0, n);
- count += n;
- }
- return count;
- }
-
- /**
- * Reads bytes from an input stream.
- * This implementation guarantees that it will read as many bytes
- * as possible before giving up; this may not always be the case for
- * subclasses of {@link InputStream}.
- *
- * @param input where to read input from
- * @param buffer destination
- * @param offset initial offset into buffer
- * @param length length to read, must be >= 0
- * @return actual length read; may be less than requested if EOF was reached
- * @throws IOException if a read error occurs
- * @since 2.2
- */
- public static int read(final InputStream input, final byte[] buffer, final int offset, final int length)
- throws IOException {
- if (length < 0) {
- throw new IllegalArgumentException("Length must not be negative: " + length);
- }
- int remaining = length;
- while (remaining > 0) {
- final int location = length - remaining;
- final int count = input.read(buffer, offset + location, remaining);
- if (EOF == count) { // EOF
- break;
- }
- remaining -= count;
- }
- return length - remaining;
- }
-
- /**
- * Reads the requested number of bytes or fail if there are not enough left.
- *
- * This allows for the possibility that {@link InputStream#read(byte[], int, int)} may - * not read as many bytes as requested (most likely because of reaching EOF). - * - * @param input where to read input from - * @param buffer destination - * @param offset initial offset into buffer - * @param length length to read, must be >= 0 - * - * @throws IOException if there is a problem reading the file - * @throws IllegalArgumentException if length is negative - * @throws EOFException if the number of bytes read was incorrect - * @since 2.2 - */ - public static void readFully(final InputStream input, final byte[] buffer, final int offset, final int length) - throws IOException { - final int actual = read(input, buffer, offset, length); - if (actual != length) { - throw new EOFException("Length to read: " + length + " actual: " + actual); - } - } - - /** - * Reads the requested number of bytes or fail if there are not enough left. - *
- * This allows for the possibility that {@link InputStream#read(byte[], int, int)} may - * not read as many bytes as requested (most likely because of reaching EOF). - * - * @param input where to read input from - * @param buffer destination - * - * @throws IOException if there is a problem reading the file - * @throws IllegalArgumentException if length is negative - * @throws EOFException if the number of bytes read was incorrect - * @since 2.2 - */ - public static void readFully(final InputStream input, final byte[] buffer) throws IOException { - readFully(input, buffer, 0, buffer.length); - } -} diff --git a/src/main/java/com/yexuejc/base/encrypt/RSA.java b/src/main/java/com/yexuejc/base/encrypt/RSA.java index fa8c1e6..15ee943 100644 --- a/src/main/java/com/yexuejc/base/encrypt/RSA.java +++ b/src/main/java/com/yexuejc/base/encrypt/RSA.java @@ -2,6 +2,7 @@ package com.yexuejc.base.encrypt; import org.apache.commons.codec.binary.Base64; +import org.apache.commons.io.IOUtils; import javax.crypto.Cipher; import java.io.ByteArrayOutputStream;