본문 바로가기
728x90

개발공부 개발새발127

JPA) CRUD, 영속성 컨텍스트, 플러시, 준영속상태 JPA와 CRUD 저장 jpa.persist(member) 조회 Member member = jpa.find(memberId) 수정 member.setName("변경이름") 삭제 jpa.remove(member) EntityManagerFactory는? 하나만 생성하고, 애플리케이션 전체에서 공유한다 EntityManager는? 쓰레드간의 공유는 X, 사용하고 버려야 한다 *** JPA의 모든 데이터 변경은 트랜잭션 안에서 실행한다 *** package hellojpa; import javax.persistence.EntityManager; import javax.persistence.EntityManagerFactory; import javax.persistence.EntityTransaction; i.. 2022. 11. 24.
Spring, Boot) maven 버전 선택 꿀팁 maven을 사용할 때 어떤 버전으로 사용해야 충돌이 안 날까? 고민한 적이 많다 https://spring.io/projects/spring-boot#learn Spring Boot Commercial support Business support from Spring experts during the OSS timeline, plus extended support after OSS End-Of-Life. Publicly available releases for critical bugfixes and security issues when requested by customers. spring.io 요기 들어가서 (Spring 도 있음) Reference Doc. 을 클릭하고 저기서 a single HTM.. 2022. 11. 24.
MyBatis) MyBatis로 이용 가능한 동적 쿼리 MyBatis의 동적 쿼리 1) , 중복 되는 공통 쿼리를 정의한다 sql로 정의한 공통 쿼리를 포함시킨다(붙여넣기) 예) SELECT no, title, content, id, view_cnt, comment_cnt, reg_date FROM board ------- WHERE no = #{no} 2) 여러개가 조건에 맞을 수도 있을 경우, if문 이용 (왜? if에 맞으면 다 적용되기 때문) SELECT count(*) FROM board WHERE true AND (title, LIKE concat('%', #{keyword}, '%') OR content LIKE concat('%', #{keyword}, '%')) AND title LIKE concat('%', #{keyword}, '%') A.. 2022. 11. 23.
Spring) PasswordEncoder를 사용하기 위한 준비 저장용 pom.xml 추가 org.springframework.security spring-security-web ${org.springframework-version} org.springframework.security spring-security-core ${org.springframework-version} org.springframework.security spring-security-config ${org.springframework-version} spring-security.xml 추가 (WEB-INF/spring 폴더) web.xml 에 spring-security 추가 contextConfigLocation /WEB-INF/spring/root-context.xml /WEB-INF/spr.. 2022. 11. 16.
Spring) JSON, Ajax, REST API JSON 자바스크립트 객체 표기법 { 속성 : 속성값, 속성 : 속성값 , ...} [{ 속성 : 속성값, 속성 : 속성값 , ...}] 객체배열 {키 : {속성명 : 속성값, ...} , 키 {속성명 : 속성값} ...} map 형태 stringify() js객체를 서버로 전송하려면 직렬화(문자열로 변환) 필요해요 parse() 서버가 보낸 데이터(JSON문자열)을 js객체로 변환할 때, 역직렬화 JSON.stringify() - 객체를 JSON 문자열로 변환(JS -> 문자열) JSON.parse() - JSON 문자열을 객체로 변환(문자열 -> JS) { name : "John", age: 30 } -> stringify -> '{ name : "John", age: 30 }' '{ name : ".. 2022. 11. 11.
JAVA) 바이트/문자 스트림에 대한 고찰 바이트 스트림은 2yte(8비트)로 값을 옮김 그래서 char로 값을 받아 옮기는데, 아스키코드는는 7비트의 이진수 조합으로 만들어짐 문자 스트림은 4byte(16비트)로 값을 옮김 그래서 int로 값을 받아 옮기는데 유니코드는 모든 문자를 16비트로 받아서 표현함 컴퓨터의 언어는 결국 숫자인데 컴퓨터가 문자를 옮기려면 그것을 숫자로 변환해서 옮겨야 함 char와 int가 받은 문자를 숫자타입으로 옮겨서 저장을 해서 입출력 해주는 것임 일반 정수 타입은 출력을 하면 그냥 그 값을 출력하지만 char 타입은 저장 할 때 아스키코드를 이용해 그 문자에 맞는 숫자로 변환해서 저장함 그래서, 바이트 스트림으로 문자를 옮기려면 char 타입을 이용해 '문자'를 '숫자'로 옮겨서 출력할 땐 그에 대응하는 아스키코드.. 2022. 11. 4.
728x90