본문 바로가기
  • 실행력이 모든걸 결정한다
반응형

개발 프로젝트/[팀] Web - SQL 교육 사이트15

[개발 완료] SQL 교육 사이트 - SQL Practice https://youtu.be/QXeQ2FfAfCQ Github 링크 (소스 코드) https://github.com/2022-Summer-Team-Project/SQL-Learning-Web-Application GitHub - 2022-Summer-Team-Project/SQL-Learning-Web-Application Contribute to 2022-Summer-Team-Project/SQL-Learning-Web-Application development by creating an account on GitHub. github.com 프로젝트 소개 프로젝트 이름 : SQL 교육 사이트 - SQL Practice 프로젝트 설명 : SQL 입문자들에게 SQL의 기본 문법부터 다중 테이블 연산까지의.. 2023. 1. 12.
[팀 프로젝트] SQL 교육 사이트 - 테스트 코드 강의 정리 1. 테스트의 목적 - 테스트는 특정한 기능이 잘 수행되고 있는지 검사하는 과정이다. - 테스트 코드를 통해 테스트를 자동화할 수 있다. 일일이 서버를 구동해서 테스트하고 싶은 페이지에 접속해서 테스트케이스를 직접 입력할 필요 없이 능동적인 테스트를 수행하지 않아도 된다. - 어제 팀장 강의에서는 mockMvc와 JUnit에 대해 설명함 2. mockMvc - mockMvc는 MVC에 대한 테스트에 사용되는 객체다. - URL 요청과 응답에 대한 테스트, 컨트롤러 테스트라고 이해해도 무방하다. - 팀장이 mockMvc에 대해 정리한 포스팅을 참고하며 test/java/com/example/demo/SampleTests.java의 테스트 메소드들과 mockMvc에서 사용되는 메소드들을 이해하는 시간을 가졌.. 2022. 12. 27.
[팀 프로젝트] SQL 교육 사이트 - 20221212 후반 작업 안내 ▣ 후반 작업 역할 분담 결과 팀장 - Home 페이지 구현 - 사용자 테스트 리스트 생성 - 후반 작업 감독 우찬* - 상단 "테스트" 메뉴 클릭시 사용자가 로그인 중이지 않다면 경고창 -> 로그인 페이지로 이동 /login으로 이동시키면 됨 - /test의 테스트 리스트에서 세션에 저장된 사용자의 각 유닛 테스트 해결 여부에 따라 [해결]과 [미해결]로 표시. 기본값은 모두 [미해결] 염형* - 모든 페이지 우측에 계정 정보를 표시 ● 로그인 상태 : 인사 메시지, learningStatus(0~17), 로그아웃 버튼 ※ 인사 메시지 -> ○○○님 반갑습니다. 등 ※ learningStatus -> 통과한 테스트 : 0유닛 / 17유닛 ● 비로그인 상태 : 로그인 버튼, 회원 가입 버튼 - 상세 유닛.. 2022. 12. 12.
[팀 프로젝트] SQL 교육 사이트 - 채점 로직 상세 설명 동작 과정 1. Unit 1 테스트 페이지 접속 i) "http://localhost:8080/test/unit/1"에 접속한다. @RequestMapping("/unit/{test_num}") public String unit(@PathVariable("test_num") String test_num, Model model) { model.addAttribute("test_num", test_num); return "test/unit/test"+test_num; } - TestController의 unit() 컨트롤러 메소드에 매핑되어 resources/templates/test/unit/test1.mustache 뷰로 이동한다. ii) 3문제를 다 풀고 답안 제출을 누른다. 2-1. submit 이벤.. 2022. 11. 3.
[팀 프로젝트] SQL 교육 사이트 - 20221009 중반 작업 안내 ▣ 1차 작업 역할 분담 결과 팀장 - 학습 페이지 샘플 코드와 Unit 1, 16, 17 - 테스트 채점 Ajax용 컨트롤러 샘플 코드 - 코드 감독 (회의, 중간 검토 등) 우찬* - 로그인 기능 구현 - 학습 페이지 Unit 5, 6, 7, 8 염형* - 버그/자유 게시판 구현 - 학습 페이지 Unit 9, 10, 11, 12 하정* - 학습 페이지 Unit 2, 3, 4, 13, 14, 15 후반 작업은 추후에 배정할 계획 ▣ 작업별 지시사항 학습 페이지 공통 지시 사항 -> 아래에서 따로 언급하지 않은 Unit은 크게 제약 사항이 없습니다. 예제를 만들 때는 /h2-console에서 SQL을 꼭 테스트하세요. 학습 사이트다 보니 부정확한 정보가 있으면 절대 안됩니다. Unit 7 날짜/시간 함수.. 2022. 10. 7.
[팀 프로젝트] SQL 교육 사이트 - 20220925 안내 사항 1. 팀장 사전 작업 내용 - SQL 학습 토픽 선정 완료 - 학습하기 및 테스트 메뉴의 토픽 목록 디자인 학습하기 - 모든 토픽 및 디자인 반영 완료 테스트 - 디자인만 반영 완료 (나머지는 유저 정보의 구성을 확정한 뒤에 완성할 예정) 2. 역할 목록 1) 초반 작업 - 팀장의 지식 전수 (완료) - 전반적인 웹페이지 디자인(완료) 2) 중반 작업 - 학습 페이지 : 총 17Unit을 각자의 총 작업량을 고려하여 분배할 것 - 자유/버그 게시판 : 디자인은 동일하게 해도 좋음 - 로그인 기능 구현 : 패스워드 BCryptPasswordEncoder 암호화/복호화 3) 후반 작업 - 홈 화면 - 테스트 출제 - 자료실 페이지 3. 안내 사항 - 각자 중반 작업에서 해보고 싶은 작업을 정해올 것 (협업도.. 2022. 9. 25.
[팀 프로젝트] SQL 교육 사이트 - 20220917 안내 사항 1. 통보 사항 - 전반적으로 과제물은 다들 잘 작성했음 - 팀원 모두 각자 만든 엔티티에 대한 레포지토리 인터페이스를 잘 생성해줬기 때문에, 레포지토리의 save() 메소드를 통해 일관되게 데이터를 DB에 저장할 수 있었고 DB 저장 로직에서 EntityManager를 직접 사용할 필요가 사라졌음 2. 블로그 강의 내용★ 1) @Primary 어노테이션 - EntityManagerFactoryBean, DataSource, TransactionManager bean은 각각 2개이기 때문에, 다음과 같이 자바 코드에서 bean의 이름을 통해 구분해야 했다. @Transactional("transactionManager") public void saveAllSampleData() { ... } - @Pri.. 2022. 9. 17.
[팀 프로젝트] SQL 교육 사이트 - 20220912 안내 사항 1. 프로젝트 코드 변경 사항 - 애플리케이션을 실행시키면 샘플 데이터들을 모두 DB에 반영하도록 Listener을 추가했다. 애플리케이션이 실행되고 애플리케이션 컨텍스트가 생성된 직후에 onApplicationEvent()가 호출된다. @Component public class AppStartedListener implements ApplicationListener { @Autowired SaveDBService saveDBService; // 애플리케이션이 시작되고 ApplicationContext가 생성되고 난 후에 실행되는 리스너 메소드 @Override public void onApplicationEvent(ApplicationStartedEvent event) { saveDBService.sa.. 2022. 9. 12.
[팀 프로젝트] SQL 교육 사이트 - 20220823 안내 사항 1. 어제 강의 및 회의 내용 1) 2개의 DB를 적용 - 샘플 데이터용 DB와 유저 정보(게시글 포함)용 DB를 따로 구분하기 위해 2개의 DB를 사용하기로 했음 (1) 설정 - 2개의 DB를 사용하기 위해서는 2개의 EntityManagerFactory가 필요하며 이에 따른 DataSource나 TransactionManager도 별도로 추가해줘야 한다. 그리고 JpaRepository에 연결할 EntityManagerFactory와 TransactionManager을 설정해줘야 한다. - 전반적인 방법은 아래 포스팅을 확인하도록 하자. https://kimcoder.tistory.com/560 [SpringBoot] 2개의 DB를 사용하는 방법 SpringBoot 애플리케이션에서 1개의 DB만 사용.. 2022. 8. 23.