Страницы

Поиск по вопросам

Показаны сообщения с ярлыком jsp. Показать все сообщения
Показаны сообщения с ярлыком jsp. Показать все сообщения

понедельник, 13 апреля 2020 г.

Подскажите книги по java ee [дубликат]

#java #java_ee #jsp #книги

                            
             
                
                    
                        
                            На этот вопрос уже дан ответ здесь:
                            
                        
                    
                
                        
                            Книги и учебные ресурсы по Java
                                
                                    (1 ответ)
                                
                        
                Закрыт 4 года назад.
            
        

Желательно на русском    


Ответы

Ответ 1



Все книги на русском, с направлением веб разработки: "Blinov Java Industr Programming" "Дэвид Гери, Кей Хорстманн - JavaServer Faces. 3-е издание" "Ильдар Хабибуллин - Разработка web-служб средствами Java" - исключительно для изучения веб служб, таких как WSDL UPD Дэвид Хеффельфингер: Java EE 6 и сервер приложений GlassFish

Ответ 2



На английском книг по J2EE раз 2 и обчелся, а вы на русском просите. Рекомендую Beginning Java EE 6 with GlassFish 3. Читайте с переводчиком, переводите незнакомые слова, английский пригодится.

воскресенье, 8 марта 2020 г.

Как передать свой объект из jsp в контроллер

#java #hibernate #jsp #spring_mvc #jstl


У меня есть User, в нем есть ссылка на Role, и например на странице editUser мне
надо собрать объект User в контроллер spring MVC(в параметры контроллера добавляю User
user), такие объекты как
name(String),email(String), age(int) собираются в User нормально, а чтобы добавить
туда Role мне надо редактируемого User'a достать из БД извлечь его роль и засетить
в новый объект User и только потом делать update в hibernate. 

Так вот вопрос можно ли как то spring'ом сразу User собрать вместе с Role из jsp
страницы?

Пробовал указать поле в верстке 

input type="hidden" name="role" value"${user.role}"


но тогда вообще контроллер не находит и редиректит на страницу 400.

P.S User добавляю из get-контроллера в jsp, тоесть переменные User можно достать в jsp
    


Ответы

Ответ 1



Как по мне, на уровне клиента это невозможно. Как вариант, тебе нужно сперва запросом отправить id нужного объекта, а потом используя id получить его. Я бы сделал бы это вот так html ... ... ... ... Внутри метода* .........@ModelAttribute("user") User user, @RequestParam("id") Integer id) { .... Role role = (Role) session.createQuery("from Role role where role.id=:id").setParameter("id", id).list().get(0); user.setRole(role); .... }

Ответ 2



input type="hidden" name="role" value"${user.role} Может вместо этого надо: input type="hidden" name="role" value="${user.role}"

Сделать ссылку для скачивания JSP

#java #jsp


Есть JSP страница необходимо сделать ссылку для скачивания файла. Как это можно реализовать?
    


Ответы

Ответ 1



Для начала вам необходимо создать Servlet для загрузки файла. Например: @WebServlet("/download") public class DownloadServlet extends HttpServlet { ... } Теперь опишите метод doGet( HttpServletRequest request, HttpServletResponse response): // тип данных, которые вы отправляете // например application/pdf, text/plain, text/html, image/jpg response.setContentType("ТИП_ДАННЫХ_MIME"); response.setHeader("Content-disposition","attachment; filename=ВАШЕ_КАСТОМНОЕ_ИМЯ_ФАЙЛА.ext"); // файл, который вы отправляете File my_file = new File("ИМЯ_ФАЙЛА"); // отправить файл в response OutputStream out = response.getOutputStream(); FileInputStream in = new FileInputStream(my_file); byte[] buffer = new byte[4096]; int length; while ((length = in.read(buffer)) > 0){ out.write(buffer, 0, length); } // освободить ресурсы in.close(); out.flush(); Это очень простой пример загрузки файла. Теперь в example.jsp необходимо просто разместить ссылку, например скачать файл

понедельник, 6 января 2020 г.

Увеличить дату на один день

#javascript #java #jquery #jsp


Есть web-сайт java, на форму прикрутил datepicker jQuery.
Для выборки с БД нужно сравнивать 2 даты, а точнее, есть переход с одного дня на
другой, например есть некая смена 1 (её время с 22-00 01.01.2016 по 7-00 02.01.2016).

На форме для отображения отчета могут выбрать совершенно любую дату и год, но если
это смена 1 то нужно вместо текущей даты использовать дату следующего дня. 

Как это правильно реализовать? Смены определяю так: 

if (gang.equals("1")){time_start = "22:00:00"; time_end = "7:00:00";} 

    


Ответы

Ответ 1



Чтобы получить значение даты в js на сутки больше (делаю вывод из темы вопроса), чем имеющееся значение, достаточно сделать так: // date - какая-то имеющаяся дата date.setDate(date.getDate() + 1) //если дата на стыке месяца, все равно корректно рассчитается браузером В Java, насколько могу судить по документации, должно сработать: //date - инстанс java.util.Calendar date.add(Calendar.DAY_OF_MONTH, 1); В Oracle, если используется тип DATE, достаточно сделать date + 1, что даст дату следующую за date. В целом, подобные вещи, как мне кажется, лучше делать в бд при запросе отчета. Т.к. в бд все равно должны быть идентификаторы смен, либо данные о том, какая смена работает ночью, а так же, для построения отчета, необходимо отправить в процедуру какой-либо идентификатор группы, то логично в процедуре построения отчета сделать проверку, что если смена работает на стыке дат - проверять на сутки больше (грубо говоря).

Ответ 2



// Дата текущего дня. const today = new Date(); // Добавляем 3 дня, например. today.setDate(today.getDate() + 3); // Устанавливаем значения для полей ввода. window['input_1031906_1'].valueAsDate = today; // Другие способы вывода. window['input_1031906_2'].value = today.toLocaleDateString('ru-RU'); window['input_1031906_3'].value = today.toISOString().slice(0, 16);

Другие способы вывода



четверг, 5 декабря 2019 г.

Поток информации или что нужно знать о JAVA? [закрыт]

#java #jsp


        
             
                
                    
                        
                            Closed. This question is opinion-based. It is not currently
accepting answers.
                            
                        
                    
                
                            
                                
                
                        
                            
                        
                    
                        
                            Want to improve this question? Update the question so
it can be answered with facts and citations by editing this post.
                        
                        Closed 3 года назад.
                                                                                
           
                
        
Как правильно расставить приоритеты, в какую сторону плыть? Наверное каждый программист,
который только начитает изучать JAVA на уровне WEB разработки, задавался подобными
вопросами.
    Я начинающий JAVA программист, который пытается перешагнуть с SE в EE технологии.
Но в большом потоке информации иногда тяжело определится, что нужно именно Вам? Для
каких целей применяются те или иные технологии? Поэтому я составил список вопросов,
которые должны заинтересовать не только меня, но и всех начинающих разработчиков (извините,
если на первый взгляд вопросы окажутся для кого-то примитивными). Со временем список
будет расширяться. 
    Буду весьма благодарен Вашим ответам, желательно с примерами кода, на подобие:
System.out.println(“Это хороший пример”), а вот это ………*... – плохой пример, он будет
работать, но через ..опу! 
Вопросы:

Какая разница между jsp и jspx. Когда и какую структуру применять? Как они связаны
с html, xhtml, и xml? На сколько подобные подходы устарели или это используется везде?
Что такое jsf и как оно связано с jsp (jspx), и можно ли (нужно ли) применять то
и другое одновременно?
Servlet – это основа и без них никуда? Или есть другие подходы?
Когда что применяют: Spring, Hibernate, Struts … (много других)? Насколько они упрощают
жизнь и увеличивают скорость разработки?
Разница между JavaBeans и EJB. Есть ли у Вас пример кода, что такое JB, а что такое EJB?
Как правильно создавать архитектуру приложения, чтобы не запутаться в бесконечном
коде? Какие инструменты Вы лично для этого используете (UML – или это не катит)?

Спасибо за Ваши ответы, буду очень благодарен за Ваши ссылки на некоторые небольшие
WEB проекты простенькие для понимания (может Github или что-то другое).    


Ответы

Ответ 1



Ответы (упрощенно): JSP и JSPX практически одно и то же. JSPX это XML совместимая версия JSP JSF это стандартный Sun/Oracle фреймворк реализующий паттерн MVC, где JSP используется в качестве компонента View Servlet это основа - без них реально никуда - это must have в багаже Java Web developer'а Все зависит от целей разработки+предпочтений тим лидеров. Судя по всему вы начинающий девелопер, посему не забивайте себе голову. Старшие товарищи (работодатели или тим лидеры) тебе сами скажут работаем в таком то фреймворке - твое дело взять под козырек и выполнять. JavaBeans - это грубо говоря Java объект имеющий стандартизованный интерфейс для работы с ним через т.н. геттеры и сеттеры. EJB - забудь это почти вымершая технология, если его и спрашивают то только для понтов. JB == JavaBeans Займись в первую очередь паттернами. UML в топку. Начинайте изучать в таком порядке: JavaBeans Java Reflection Servlet JSP/JSPX Паттерны (в первую очередь MVC) Struts Hibernate JSF Spring EJB (факультативно) P.S. Не пишите никогда JAVA, а пишите просто Java - неверное именование языка наводит на размышления об уровне квалификации

Ответ 2



Все начинающие кодеры пытаются найти "универсальную формулу знаний", типа придут на форум, зададут вопрос, прочитают 5-10 книг, которые им посоветовали, и станут профессионалами. На самом деле позже придет понимание, что не все книги подходят для тебя, возможно некоторые вещи лучше понимать в картинках, а не сразу из доков на оф.сайтах. Что не на практике возможно тебе и не придется использовать веб, а может и придется по работе, потому что сам, дома, развернуть корпоративный портал не так уж просто и интересно, что в книгах обычно частные случаи, а на практике без костылей не обойтись, что пока выучишь одну технологию досконально, она морально устареет и еще много всего.

пятница, 12 июля 2019 г.

Почему jsp не понимает css а с html-ем все нормально?

CSS:

html:

Итог:

это в JSP:

а это результат JSP:

Вопрос: почему JSP не понимает CSS файл?


Ответ

Потому что нужно указавать путь контекста ${pageContext.request.contextPath} в URL к стилю.
Вот примерно как должен выглядеть код

суббота, 6 июля 2019 г.

Подскажите книги по java ee [дубликат]

На данный вопрос уже ответили: Книги и учебные ресурсы по Java 1 ответ Желательно на русском


Ответ

Все книги на русском, с направлением веб разработки:
"Blinov Java Industr Programming" "Дэвид Гери, Кей Хорстманн - JavaServer Faces. 3-е издание" "Ильдар Хабибуллин - Разработка web-служб средствами Java" - исключительно для изучения веб служб, таких как WSDL
UPD
Дэвид Хеффельфингер: Java EE 6 и сервер приложений GlassFish

пятница, 14 июня 2019 г.

Если серверная часть написана на Java, можно ли написать клиент на js+html, не используя jsp.

Для учебных целей хочу создать приложение: форум, где участники могут регистрироваться, оставлять сообщения(чтобы сообщения сохранялись в бд). Приложение будет написано на Java. Можно ли обойтись без использования jsp, jsf, а только html и js? Буду очень благодарен ответившим.


Ответ

Можно. Вам успешно подойдет RESTfull архитектура.
Клиент с сервером по-прежнему общаются по http-протоколу, только теперь в ответах сервер отдает уже не готовые html-странички, а состояния (по сути данные) запрошенных вами ресурсов(URI) в формате json или реже xml. JS на клиенте разбирает эти ответы и сам строит необходимые странички.
Таким образом между клиентом и сервером нет больше никакой связи, кроме четко формализованного Rest Api. Причем клиент может быть реализован на чем угодно, HTML+JS это лишь частный случай. Это не новый, но очень популярный подход сейчас.

вторник, 11 июня 2019 г.

Ошибка вывода данных из servlet в JSP

проблема следующая, пытаюсь отобразить данные переданные как список "List". Но получаю ошибку
java.lang.ClassFormatError: Absent Code attribute in method that is not native or abstract in class file javax/servlet/jsp/jstl/core/LoopTagSupport
С чем связанно тоже не могу понять. Вот код servlet:
List list = new ArrayList();
while (resultSets.next()) { Roll roll = new Roll();
roll.setNumbern(resultSets.getInt(1));
roll.setRollnum(resultSets.getInt(2));
roll.setTimer(resultSets.getDate(4));
list.add(roll);
request.setAttribute("name",list); } request.getRequestDispatcher("4kl/test.jsp").forward(request, response);
Вот JSP
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> ${n.Numbern} ${n.Rollnum} ${n.Timer}
Класс Roll
public class Roll implements Serializable { private static final long serialVersionUID = 1L;
private int Numbern;
private int Rollnum;
private Date Timer;
public int getNumbern() { return Numbern; }
public void setNumbern(int numbern) { Numbern = numbern; }
public int getRollnum() { return Rollnum; }
public void setRollnum(int rollnum) { Rollnum = rollnum; }
public Date getTimer() { return Timer; }
public void setTimer(Date timer) { Timer = timer; }
public Roll (){}
}
Pom.xml:
4.0.0
ua.asutp mymvn 0.0.1-SNAPSHOT war
javax.servlet servlet-api 3.0-alpha-1 provided
org.glassfish.main.extras glassfish-embedded-all 3.1.2.2 test
javaee javaee-api 5
jstl jstl 1.2
javax javaee-web-api 6.0 provided
local-oracle ojdbc6
org.hibernate hibernate-core 4.1.11.Final
dom4j dom4j 1.6.1
commons-logging commons-logging 1.2
commons-collections commons-collections 3.2.1
cglib cglib 2.2
javax.transaction jta 1.1

org.apache.maven.plugins maven-compiler-plugin 1.5 1.5
org.apache.maven.plugins maven-war-plugin 2.1.1 false

Возможно я что-то пропустил при вызове c:forEach Помогите пожалуйста разобраться. Может есть способ получше JSTL ? Я только учусь, поэтому мне хотелось бы знать как правильнее выводить данные. Спасибо. Все еще актуально.


Ответ

Не ответ, просто пометка:
request.setAttribute("name",list);
эту строчку вытащите из цикла,добавить то надо всего 1 раз

Ещё один момент по поводу зависимости
javax.servlet servlet-api 3.0-alpha-1 provided
в центральном репозитории я не смог найти такого, попробуйте взять более новую версию, например 4:
javax.servlet javax.servlet-api 4.0.0 provided
эту зависимость тоже стоит обновить. Нет такой версии 5, может быть где-то есть 5,0 но по идее это вам должна была IDE показать
javax javaee-api 7.0 provided

четверг, 30 мая 2019 г.

Как передать свой объект из jsp в контроллер

У меня есть User, в нем есть ссылка на Role, и например на странице editUser мне надо собрать объект User в контроллер spring MVC(в параметры контроллера добавляю User user), такие объекты как name(String)email(String), age(int) собираются в User нормально, а чтобы добавить туда Role мне надо редактируемого User'a достать из БД извлечь его роль и засетить в новый объект User и только потом делать update в hibernate.
Так вот вопрос можно ли как то spring'ом сразу User собрать вместе с Role из jsp страницы?
Пробовал указать поле в верстке
input type="hidden" name="role" value"${user.role}"
но тогда вообще контроллер не находит и редиректит на страницу 400.
P.S User добавляю из get-контроллера в jsp, тоесть переменные User можно достать в jsp


Ответ

Как по мне, на уровне клиента это невозможно.
Как вариант, тебе нужно сперва запросом отправить id нужного объекта, а потом используя id получить его.
Я бы сделал бы это вот так
html
... ... ... ...
Внутри метода*
.........@ModelAttribute("user") User user, @RequestParam("id") Integer id) { .... Role role = (Role) session.createQuery("from Role role where role.id=:id").setParameter("id", id).list().get(0); user.setRole(role); .... }

понедельник, 8 октября 2018 г.

Поток информации или что нужно знать о JAVA? [закрыт]

Как правильно расставить приоритеты, в какую сторону плыть? Наверное каждый программист, который только начитает изучать JAVA на уровне WEB разработки, задавался подобными вопросами. Я начинающий JAVA программист, который пытается перешагнуть с SE в EE технологии. Но в большом потоке информации иногда тяжело определится, что нужно именно Вам? Для каких целей применяются те или иные технологии? Поэтому я составил список вопросов, которые должны заинтересовать не только меня, но и всех начинающих разработчиков (извините, если на первый взгляд вопросы окажутся для кого-то примитивными). Со временем список будет расширяться. Буду весьма благодарен Вашим ответам, желательно с примерами кода, на подобие: System.out.println(“Это хороший пример”), а вот это ………*... – плохой пример, он будет работать, но через ..опу! Вопросы: Какая разница между jsp и jspx. Когда и какую структуру применять? Как они связаны с html, xhtml, и xml? На сколько подобные подходы устарели или это используется везде? Что такое jsf и как оно связано с jsp (jspx), и можно ли (нужно ли) применять то и другое одновременно? Servlet – это основа и без них никуда? Или есть другие подходы? Когда что применяют: Spring, Hibernate, Struts … (много других)? Насколько они упрощают жизнь и увеличивают скорость разработки? Разница между JavaBeans и EJB. Есть ли у Вас пример кода, что такое JB, а что такое EJB? Как правильно создавать архитектуру приложения, чтобы не запутаться в бесконечном коде? Какие инструменты Вы лично для этого используете (UML – или это не катит)? Спасибо за Ваши ответы, буду очень благодарен за Ваши ссылки на некоторые небольшие WEB проекты простенькие для понимания (может Github или что-то другое).


Ответ

Ответы (упрощенно): JSP и JSPX практически одно и то же. JSPX это XML совместимая версия JSP JSF это стандартный Sun/Oracle фреймворк реализующий паттерн MVC, где JSP используется в качестве компонента View Servlet это основа - без них реально никуда - это must have в багаже Java Web developer'а Все зависит от целей разработки+предпочтений тим лидеров. Судя по всему вы начинающий девелопер, посему не забивайте себе голову. Старшие товарищи (работодатели или тим лидеры) тебе сами скажут работаем в таком то фреймворке - твое дело взять под козырек и выполнять. JavaBeans - это грубо говоря Java объект имеющий стандартизованный интерфейс для работы с ним через т.н. геттеры и сеттеры. EJB - забудь это почти вымершая технология, если его и спрашивают то только для понтов. JB == JavaBeans Займись в первую очередь паттернами. UML в топку. Начинайте изучать в таком порядке: JavaBeans Java Reflection Servlet JSP/JSPX Паттерны (в первую очередь MVC) Struts Hibernate JSF Spring EJB (факультативно) P.S. Не пишите никогда JAVA, а пишите просто Java - неверное именование языка наводит на размышления об уровне квалификации