어플리케이션 언어
구성되고 나서 호출되니 compoenet
예시 : showSignup(폼보여준), signup 등
URL 명확하게, 메서드명 명확하게
a젝스 : 자바스크립트로 요청을 보낸다.
그럴 때는 json의 api 규칙을검색해보자
시큐리티 파는게 훨 낫다
디버그 찍으면서 시큐리티 뒤집어 엎어가면서 가면서 공부하자
로그인
로그아웃
csrf, curs, 로그인인증필터 자세하게 보기
6분30초 security
# logging
logging:
level:
org.springframework.security: trace # spring security filter 체크
crudrepository
////////////////////////////////////////////////////////////////////////////////
쿼리 보여줌
implementation 'com.github.gavlyukovskiy:p6spy-spring-boot-starter:1.9.0'
/////////////////////////////////////////////////////////////////
sql쿼리를 create말고 validate로 하고 수동으로 테이블 만드는거
진짜 운영상태처럼 alter로 추가하면서 하면서 공부
/////////쿼리 꾸며줌///////////////////////////////////////////////
@Configuration
public class P6SpySqlFormatter implements MessageFormattingStrategy {
@PostConstruct
public void setLogMessageFormat() {
P6SpyOptions.getActiveInstance().setLogMessageFormat(this.getClass().getName());
}
@Override
public String formatMessage(int connectionId, String now, long elapsed, String category, String prepared, String sql, String url) {
// SESSION 관련 쿼리 출력 하지 않기
// TODO yml로 변수들 옮기기
if (isIgnoredTable(sql, "SPRING_SESSION") || isIgnoredTable(sql, "SPRING_SESSION_ATTRIBUTES")) {
return "session sql";
}
sql = formatSql(category, sql);
return String.format("[%s] | %d ms | %s", category, elapsed, highlight(formatSql(category, sql)));
}
private String formatSql(String category, String sql) {
if (sql != null && !sql.trim().isEmpty() && Category.STATEMENT.getName().equals(category)) {
String trimmedSQL = sql.trim().toLowerCase(Locale.ROOT);
if (trimmedSQL.startsWith("create") || trimmedSQL.startsWith("alter") || trimmedSQL.startsWith("comment")) {
sql = FormatStyle.DDL.getFormatter().format(sql);
} else {
sql = FormatStyle.BASIC.getFormatter().format(sql);
}
return sql;
}
return sql;
}
private String highlight(String sql) {
return FormatStyle.HIGHLIGHT.getFormatter().format(sql);
}
private boolean isIgnoredTable(String sql, String tableName) {
if (sql != null) {
return sql.contains(tableName);
}
return false;
}
}
////////
////////
29
한곳에 다 만들고 분할 분할 분할
rsdata
///////////
thymeleaf : 강사님스타일
restcontrollerAdvice = api 개발
'메모장' 카테고리의 다른 글
비동기로 만들어보기 (0) | 2023.11.22 |
---|---|
Querydsl 설정 (0) | 2023.11.22 |
dependencies 메모 (0) | 2023.11.21 |
jpa는 기본생성자가 (0) | 2023.11.18 |
EntityListeners (0) | 2023.11.18 |