JavaEE как загрузить файл на сервер glassfish4? - PullRequest
0 голосов
/ 20 июня 2019

Я использую некоторые веб-приложения на Java, используя eclipse, и размещаю файл .war на сервере glassfish4 на другом ПК.

Я написал страницу jsp, странице jsp требуется, чтобы пользователь вводил всю информацию и просматривал любые типы файлов (например, txt или файл изображений) и загружал их на локальный сервер glassfish4.

Я много занимался поиском в Google, и я не смог найти никакого решения по этому поводу. Вы все можете мне помочь с этим?

Это код моей страницы JSP:

<form action="uploadFile" method="POST" enctype="multipart/form-data">
                            <div class="card-body">
                                <h5 class="card-title">Equipment Request</h5>
                                <div class="form-group row">
                                    <label for="reqEmail" class="col-sm-2 text-right control-label col-form-label">Requestor</label>
                                    <div class="col-sm-4">
                                        <input type="text" class="form-control" id="reqEmail" name="reqEmail" disabled value="reggiezhiyi.lim@motorolasolutions.com">
                                    </div>
                                    <label for="ID" class="col-sm-1 text-right control-label col-form-label">Request ID</label>
                                    <div class="col-sm-4">
                                        <input type="text" class="form-control" id="ID" name="ID" disabled value="0000001">
                                    </div>
                                </div>
                                <div class="form-group row">
                                    <label for="projectName" class="col-sm-2 text-right control-label col-form-label">Project</label>
                                    <div class="col-sm-4">
                                        <input type="text" class="form-control" id="projectName" name="projectName" maxlength="50" placeholder="Enter the Project Name..">
                                    </div>
                                </div>
                                <div class="form-group row">
                                    <label for="contactNum" class="col-sm-2 text-right control-label col-form-label">Contact No.</label>
                                    <div class="col-sm-3">
                                        <input type="number" class="form-control" id="contactNum" name="contactNum" maxlength="50" placeholder="Enter the Phone Number">
                                    </div>
                                </div>
                                <div class="form-group row">
                                    <label for="manID" class="col-sm-2 text-right control-label col-form-label">Manager Core ID</label>
                                    <div class="col-sm-4">
                                        <input type="text" class="form-control" id="manID" name="manID" maxlength="50" placeholder="Enter the Manager Core ID">
                                    </div>
                                </div>
                                <div class="form-group row">
                                    <label for="from" class="col-sm-2 text-right control-label col-form-label">Loan Date From</label>
                                    <div class="col-sm-4 input-group">
                                        <input type="text" class="form-control" id="datepicker-autoclose" placeholder="mm/dd/yyyy">
                                        <div class="input-group-append">
                                            <span class="input-group-text"><i class="fa fa-calendar"></i></span>
                                        </div>
                                    </div>
                                    <label for="to" class="col-sm-1 text-right control-label col-form-label">To</label>
                                    <div class="col-sm-4 input-group">
                                        <input type="text" class="form-control" id="datepicker-autoclose1" placeholder="mm/dd/yyyy">
                                        <div class="input-group-append">
                                            <span class="input-group-text"><i class="fa fa-calendar"></i></span>
                                        </div>
                                    </div>
                                </div>
                                <div class="form-group row">
                                    <label for="reason" class="col-sm-2 text-right control-label col-form-label">Reason for Loan</label>
                                    <div class="col-sm-6">
                                        <textarea rows="3" class="form-control" id="reason" name="reason"></textarea>
                                    </div> 
                                </div>
                                <div class="form-group row">
                                    <label for="attach" class="col-sm-2 text-right control-label col-form-label">Attachment</label>
                                    <div class="col-sm-6">
                                        <div class="custom-file">
                                            <label class="custom-file-label" for="validatedCustomFile" placeholder="Choose File.."></label>
                                            <input type="file" class="custom-file-input" id="validatedCustomFile" name="validatedCustomFile" required>
                                        </div>
                                    </div>
                                </div>
                                <div class="form-group row">
                                    <label for="comment" class="col-sm-2 text-right control-label col-form-label">Equiment Configuration</label>
                                    <div class="col-sm-9">
                                        <textarea rows="5" class="form-control" id="comment" name="comment"></textarea>
                                    </div>
                                </div>
                                <div class="form-group row">
                                    <label for="shipping" class="col-sm-2 text-right control-label col-form-label">Shipping Address</label>
                                    <div class="col-sm-9">
                                        <textarea rows="3" class="form-control" id="shipping" name="shipping"></textarea>
                                    </div>
                                </div>
                                <div class="form-group row">
                                    <label for="return" class="col-sm-2 text-right control-label col-form-label">Return Address</label>
                                    <div class="col-sm-9">
                                        <textarea rows="3" class="form-control" id="return" name="return" disabled>Motorola Solutions Penang</textarea>
                                    </div>
                                </div>
                                <div class="form-group row">
                                    <label for="inven" class="col-sm-2 text-right control-label col-form-label">Inventory List</label>
                                    <div class="col-sm-8"></div>
                                    <div class="col-sm-2">
                                        <button type="button" class="btn btn-primary" onclick="addTable()">Add</button>
                                        <button type="button" class="btn btn-danger" onclick="deleteTable()">Delete</button>
                                    </div>
                                    <br>

                                    <!-- <div class="col-sm-2"></div> -->
                                    <div class="col-sm-12">
                                        <table class="table" id="tableList">
                                            <thead>
                                                <tr>
                                                <th scope="col">Category</th>
                                                <th scope="col">Item</th>
                                                <th scope="col">Sales Model No.</th>
                                                <th scope="col">Asset Tag</th>
                                                <th scope="col">Serial No.</th>
                                                <th scope="col">Quantity</th>
                                                </tr>
                                            </thead>
                                            <tbody>
                                            </tbody>
                                        </table>
                                    </div>
                                </div>
                            </div>
                            <div class="border-top">
                                <div class="card-body">
                                    <button type="submit" class="btn btn-primary">Submit</button>
                                    <button type="button" id="test" class="btn btn-primary">Test</button>
                                    <button type="reset" class="btn btn-info">Reset</button>
                                </div>
                            </div>
                        </form>

Действие напрямую указывает на uploadFile.java, и я не знаю, как загрузить файл в базу данных.

У меня есть пара вопросов о загрузке в базу данных:
1. Загрузить файл непосредственно в базу данных
2. Загрузите файл на локальный сервер glassfish4 и сохраните путь в базу данных
После загрузки в базу данных я хотел бы получить файл и позволить другому пользователю загрузить его.

Я хотел бы знать, какой из них легче достичь? И какой 1 является более правильным подходом.

1 Ответ

0 голосов
/ 20 июня 2019

Таким образом, файлы в базе данных должны быть сохранены в BLOB-объекте или в какой-либо другой конкретной реализации для больших полей в БД, и на сервере вы можете просто создать файловую систему, а затем сохранить путь в базе данных. Это мой предпочтительный метод, так как база данных остается отзывчивой при использовании этой таблицы.

если вы используете сервер локально, вам просто нужно предоставить доступ к файловой системе компьютера, чтобы файл мог быть сохранен там.

Примеры сохранения файлов на сервере с Java:

сохранить загруженный файл на сервере

Как мне создать файл и записать его на Java?

https://stackabuse.com/reading-and-writing-files-in-java/

Могу ли я предложить вам ознакомиться с java и файловыми системами, прежде чем приступать к реализации.

...