Гость
Форумы / Вопросы по IT / Тестовое задание / 5 сообщений из 5, страница 1 из 1
26.08.2018, 11:20
    #546914
XDiaBLo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Тестовое задание
В очередную контору тестовое задание сделал. На этот раз Ростелеком. Разобрался немножко с JQuery, довольно детально с Аяксом, при том что ЖаваСкрыпт даже толком не знаю. Блин, по ходу тестовые задания дают больший толчок в развитии, чем чтение толстых книг. Так как на практике в кратчайшие сроки разбираешься с тем что нужно, а не тратишь месяцы на чтение талмудов, и выполнение занудных учебных примеров.
...
Рейтинг: 0 / 0
27.08.2018, 16:42
    #549506
XDiaBLo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Тестовое задание
Доделал аутентификацию. Но не странно ли, что стандартная она смотрит в конфиг томката?
А если у меня миллион юзеров на сайте?
...
Рейтинг: 0 / 0
27.08.2018, 23:15
    #550194
XDiaBLo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Тестовое задание
Сделал юзеров в БД, теперь думаю как сделать так называемый "remember me" чекбокс. Тьфу, на каждой мелочи по несколько часов теряешь.
...
Рейтинг: 0 / 0
28.08.2018, 10:55
    #550783
XDiaBLo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Тестовое задание
Как ща логгирование делают в томкэте?
...
Рейтинг: 0 / 0
30.08.2018, 05:55
    #556048
Конвертатор
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Тестовое задание
XDiaBLo  28.08.2018, 10:55
Как ща логгирование делают в томкэте?
Я добавлял logback и slf4j.

pom.xml:
Код: XML
1.
2.
3.
4.
5.
<dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
            <version>1.2.3</version>
        </dependency>
Код: Java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class Log {
    private enum MessageType { DEBUG, INFO, WARN, ERROR };

    public static void debug(String param) {
        log(MessageType.DEBUG, param);
    }

    public static void error(String param) {
        log(MessageType.ERROR, param);
    }

    public static void error(Throwable aProblem, String param) {
        log(MessageType.ERROR, problem2String(param, aProblem));
     }

    public static void info(String param) {
        log(MessageType.INFO, param);
    }

    public static void warn(String param) {
        log(MessageType.WARN, param);
    }

    public static void warn(Throwable aProblem, String param) {
        warn(problem2String(param, aProblem));
    }

    private static void log(MessageType messageType, String localParam) {
        String aClassName = whoCalledMe();
        Logger log = LoggerFactory.getLogger(aClassName);
        String param = modifyString(localParam);
        if (MessageType.DEBUG.equals(messageType)) {
            log.debug(param);
        } else if (MessageType.INFO.equals(messageType)) {
            log.info(param);
        } else if (MessageType.WARN.equals(messageType)) {
            log.warn(param);
        } else {
            log.error(param);
        }
    }

    private static String whoCalledMe() {
        StackTraceElement[] stackTraceElements = Thread.currentThread().getStackTrace();
        StackTraceElement caller = stackTraceElements[4];
        String classname = caller.getClassName();
        return classname;
    }

    private static String problem2String(String aMsg, Throwable aProblem) {
        StringBuilder sb = new StringBuilder();
        if (aMsg != null) {
            sb.append(aMsg).append('\n');
        }
        sb.append("Error is: ").append(aProblem.getClass().getName()).
                append(" Message: ").append(aProblem.getMessage()).append('\n');
        makeGoodTrace(sb, aProblem.getStackTrace());
        Throwable cause = aProblem.getCause();
        while (cause != null) {
            sb.append("The cause is ").append(cause.getClass().getName()).
                    append(" Message: ").append(aProblem.getMessage()).append('\n');
            makeGoodTrace(sb, cause.getStackTrace());
            cause = cause.getCause();
        }
        return sb.toString();
    }

    public static String modifyString(String param) {
         if ("".equals(param)) {
             return "";
         }
         return param;
     }

    private static void makeGoodTrace(StringBuilder sb, StackTraceElement[] trace) {
        for (StackTraceElement entry : trace) {
            if (entry.getClassName().startsWith("com.github.javadev")) {
                sb.append("\t-->");
            } else {
                sb.append('\t');
            }
            sb.append(entry).append('\n');
        }
    }
}
...
Преобразователь лучший! Хорошего вам дня!
Изменено: 30.08.2018, 05:58 - Valentin Kolesnikov
Рейтинг: 0 / 0
Форумы / Вопросы по IT / Тестовое задание / 5 сообщений из 5, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]