пятница, 30 сентября 2016 г.
Сертификация OCA Java SE 8 Programmer (1Z0-808). Complete
Сегодня сдал Oracle Certified Associate, Java SE 8 Programmer I (1Z0-808)
четверг, 25 августа 2016 г.
Смешная и грустная цитата из Кобьелла
Просто цитата:
"Тот, кто оплачивает работу своих сотрудников земляными орехами, не должен удивляться, что окружен орущими шимпанзе"
Клаусс Кобьел (это тот, что написал "Мотивация в стиле экшн")
"Тот, кто оплачивает работу своих сотрудников земляными орехами, не должен удивляться, что окружен орущими шимпанзе"
Клаусс Кобьел (это тот, что написал "Мотивация в стиле экшн")
понедельник, 18 июля 2016 г.
Русские буквы в имени файла, отдаваемого сервлетом
Проблема
При отдаче файла сервлетом, имя ,которое сохраняется у пользователя не содержит русские буквы (вместо них пробелы).
Решение
Имя файла должно быть закодировано javax.mail.internet.MimeUtility.encodeText()
Т.е. пример должен выглядеть как-то так:
При отдаче файла сервлетом, имя ,которое сохраняется у пользователя не содержит русские буквы (вместо них пробелы).
Решение
Имя файла должно быть закодировано javax.mail.internet.MimeUtility.encodeText()
Т.е. пример должен выглядеть как-то так:
response.setHeader("Content-Type", "application/file; charset=utf-8");
response.setHeader("Content-Disposition", "attachment;filename="+ MimeUtility.encodeText(dataFilePath.getFileName().toString()));
response.getOutputStream().write(FileUtils.readFileToByteArray(dataFilePath.toFile()));
пятница, 17 июня 2016 г.
понедельник, 30 мая 2016 г.
Напоминалка: ссылка на статическое поле в jаvadoc
Чтобы каждый раз заново не вспоминать, как ссылаться на статическое поле(константу) в javadoc-е:
/** * Ссылка на описание внешней константы {@link ru.pevgen.test.Consts#MY_CONST} в документации **/ |
среда, 11 мая 2016 г.
Статья (refcard) про Java Perfomance Optimization
Коротко, сжато, информативно. С учётом относительно новых особенностей JDK 1.8
https://dzone.com/refcardz/java-performance-optimization
https://dzone.com/refcardz/java-performance-optimization
четверг, 5 мая 2016 г.
GreenMail - простая библиотека для unit-тестирования получения/приёма email в java (spring)
Собственно по теме, чтобы не забыть : http://www.icegreen.com/greenmail/
Представляет из себя простой почтовый сервер (с разными протоколами - pop,smtp,imap), который может быть внедрён в код и использован для простого тестирования кода, связанного с посылкой/приёмом email-ов.
Пример конфигурации и работы в тестовой spring-конфигурации
Фактически тут просто в тестовой конфигурации подменяется mail-сервер, на greenmail. А у самого greenmail-объекта есть методы для проверки того, что на него посылалось.
https://stackoverflow.com/questions/9661907/testing-greenmail-without-installing-a-smtp-server/9663399#9663399
Представляет из себя простой почтовый сервер (с разными протоколами - pop,smtp,imap), который может быть внедрён в код и использован для простого тестирования кода, связанного с посылкой/приёмом email-ов.
Пример конфигурации и работы в тестовой spring-конфигурации
Фактически тут просто в тестовой конфигурации подменяется mail-сервер, на greenmail. А у самого greenmail-объекта есть методы для проверки того, что на него посылалось.
import com.icegreen.greenmail.util.GreenMail;
import com.icegreen.greenmail.util.GreenMailUtil;
import com.icegreen.greenmail.util.ServerSetupTest; ...
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("ApplicationContext-Greenmail.xml")
public class EmailServiceIntegrationTest {
/** Class under test */
@Resource
private EmailService emailService;
private GreenMail greenMail;
@Before
public void startMailServer() {
greenMail = new GreenMail(ServerSetupTest.SMTP);
greenMail.start();
}
@After
public void stopMailServer() {
greenMail.stop();
}
@Test
public void testPledgeReminder()
throws InterruptedException, MessagingException {
String mailText = "Hallo World";
String mailSubject = "Hallo";
String mailTo = "test@excaple.com";
/** when: sending a mail */
emailService.send(mailSubject, mailTo, mailText);
assertTrue(greenMail.waitForIncomingEmail(5000, 1));
Message[] messages = greenMail.getReceivedMessages();
assertEquals(1, messages.length);
assertEquals(mailText, messages[0].getSubject());
String body = GreenMailUtil.getBody(messages[0]).replaceAll("=\r?\n", "");
assertEquals(mailText, body);
}
}
important: use port 3025
<bean id="javaMailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
<property name="javaMailProperties">
<util:properties>
<prop key="mail.debug">false</prop>
<prop key="mail.transport.protocol">smtp</prop>
<prop key="mail.smtp.port">3025</prop>
<prop key="mail.smtp.auth">true</prop>
<prop key="mail.smtp.user">test@mail.extern</prop>
<prop key="mail.smtp.host">localhost</prop>
<prop key="mail.smtp.from">test@mail.extern</prop>
</util:properties>
</property>
<property name="username" value="test"/>
<property name="password" value="xxx"/>
<property name="defaultEncoding" value="utf8" />
</bean>
Then this configuration will configure a Spring JavaMailSender to send its mails to the GreenMail-Server started and finished by the test code.
Подписаться на:
Сообщения (Atom)