Skip to content

Instantly share code, notes, and snippets.

View thergbway's full-sized avatar

Andrey Selivanov thergbway

  • Saint Petersburg, Russia
View GitHub Profile
@thergbway
thergbway / postgres_queries_and_commands.sql
Created July 10, 2018 20:45 — forked from rgreenjr/postgres_queries_and_commands.sql
Useful PostgreSQL Queries and Commands
-- show running queries (pre 9.2)
SELECT procpid, age(query_start, clock_timestamp()), usename, current_query
FROM pg_stat_activity
WHERE current_query != '<IDLE>' AND current_query NOT ILIKE '%pg_stat_activity%'
ORDER BY query_start desc;
-- show running queries (9.2)
SELECT pid, age(query_start, clock_timestamp()), usename, query
FROM pg_stat_activity
WHERE query != '<IDLE>' AND query NOT ILIKE '%pg_stat_activity%'
@thergbway
thergbway / Main.java
Created March 14, 2018 09:36
Java init order
package com.thergbway;
import static com.thergbway.Main.getNumber;
class One {
static String a = getNumber(1);
static {getNumber(2);}
One() {getNumber(9);}
@thergbway
thergbway / Trie.java
Created September 28, 2017 13:04
[EXERCISE] Trie traversing (https://en.wikipedia.org/wiki/Trie)
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
//[mama, maman, abama]
//
//a b a m
//b m a a
@thergbway
thergbway / ! Hibernate&JPA Entity Inheritance for JPA Hibernate.txt
Last active March 14, 2018 09:32
HIBERNATE&JPA. JPA ENTITY INHERITANCE
1. Типы классов в иерархии наследования:
* Сущность. Проблем нет, используется во всех примерах данного модуля
* Абстрактная сущность. Рассматривается так же, как и обычная сущность, только создать её объект нельзя.
* Суперкласс, который не является сущностью, те без @Entity. При расширении его классом, помеченным @Entity,
JPA будет видеть только свойства класса-потомка, а не базового класса, тк он не помечен @Entity
* Отображенный суперкласс. Не является сущностью, помечается @MappedSuperclass. Служит основой для
потомков-сущностей. К нему нельзя делать запросы и тп, тк это не сущность. Его поля будут отображены в таблице
расширяющего его класса-сущности.
@thergbway
thergbway / ! Hibernate&JPA Multiplicity Entity Relationships for JPA Hibernate.txt
Last active April 4, 2023 14:26
HIBERNATE&JPA. JPA HIBERNATE MULTIPLICITY ENTITY RELATIONSHIP
1. Связи бывают однонаправленными и двунаправленными: unidirectional и bidirectional. На UML стрелка с направлением, либо
одна соединительная линия. В реляционных БД связи осуществляются с использованием внешнего ключа(1-1) или
таблицы соединения(1-N, N-N)
2. Множественность связи или кардинальность. На UML обозначается, как 0..*, 1, 1..*, 1..2, 3..6 и так далее. Связь
с более чем одним объектом является типом Collection, List, Set, Map.
3. Владелец связи. При однонаправленной связи владелец - инициатор связи, при двунаправленной связи надо явно указывать
4. Каждая из связей однонаправленная или двунаправленная может быть @OneToOne, @OneToMany, @ManyToOne, @ManyToMany.
@thergbway
thergbway / ! Hibernate&JPA Elementary mapping for JPA Hibernate.txt
Last active September 4, 2017 12:50
HIBERNATE&JPA. JPA HIBERNATE ELEMENTARY MAPPING
1. Для сущностей, хранящих большие объекты, выгодно использовать @SecondaryTable,
тк такие данные будут храниться отдельно
2. Записываемый в БД первичный ключ переприсвоить нельзя
3. Возможные типы @Id первичного ключа:
- примитивы: byte, short, int, long, char
- обертки: Byte, Short, Integer, Long, Character
- массивы вышеперечисленных примитивов или оберток: int[], Integer[]
- строки, числа и даты: String, BigInteger, java.util.Date, java.sql.Date
@thergbway
thergbway / ! Hibernate&JPA Basic Comfiguration of JPA Hibernate.txt
Last active October 22, 2016 23:57
HIBERNATE&JPA. JPA HIBERNATE CONFIGURATION
См. сводную информацию в https://gist.github.com/thergbway/0a68550a27668ce571e7c72cf6e6078f
@thergbway
thergbway / ! Hibernate&JPA Basic Configuration of Native Hibernate.txt
Last active October 22, 2016 23:57
HIBERNATE&JPA. NATIVE HIBERNATE CONFIGURATION
1. Hibernate modules:
* hibernate-core. Core module. Defines its ORM features and APIs as well as the various integration SPIs.
* hibernate-entitymanager. Defines Hibernate’s support for JPA.
* hibernate-java8. Support for using Java8 specific data-types such as any of the JSR 310 Date/Time types.
* hibernate-envers. Hibernate’s historical entity versioning feature.
* hibernate-spatial. Hibernate’s Spatial/GIS data-type support.
* hibernate-osgi. Hibernate support for running in OSGi containers.
* hibernate-c3p0. Integrates the C3P0 connection pooling library into Hibernate.
* hibernate-hikaricp. Integrates the HikariCP connection pooling library into Hibernate.
* hibernate-proxool. Integrates the Proxool connection pooling library into Hibernate.
@thergbway
thergbway / ! log4j.xml
Last active October 15, 2016 03:30
LOG4J XML CONFIGURATION. PUT IT ON CLASSPATH ROOT
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<appender name="stdout" class="org.apache.log4j.ConsoleAppender">
<param name="Target" value="System.out"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{ABSOLUTE} %5p %c{1}:%L - %m%n"/>
</layout>
</appender>
@thergbway
thergbway / ! Spring IOC Message source.txt
Last active October 13, 2016 22:56
SPRING. INVERSION OF CONTROL. MESSAGE SOURCE
1. ApplicationContext это MessageSource
2. Чаще всего текущая реализация MessageSource является HierarchicalMessageSource, как например, ApplicationContext, то
ApplicationSource поддерживает идею иерархичности источников сообщений, те если мы не нашли сообщение в одном
MessageSource, то идем в другой и ищем там, те по иерархии вверх.
3. Возможные реализации MessageSource (точнее HierarchicalMessageSource):
* ResourceBundleMessageSource. Использует идеи ResourceBundle из JDK.
* ReloadableResourceBundleMessageSource. Более гибкий, можно читать из любого источника, а не только из classpath.
также позволяет динамически управлять загруженными сообщениями, например, перезагружать источники.