<시험1-애플리케이션 배포평가자체크리스트>
프로젝트에 사용할 라이브러리를 pom.xml을 이용하여 추가(mavenrepository 이용)
<!-- https://mvnrepository.com/artifact/com.oracle/ojdbc8 --> <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc8</artifactId> <version>21.1.0.0</version> </dependency> <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.6</version> </dependency> <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis-spring --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>2.0.6</version> </dependency> <!-- https://mvnrepository.com/artifact/org.springframework/spring-jdbc --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>${org.springframework-version}</version> </dependency> <!-- https://mvnrepository.com/artifact/commons-dbcp/commons-dbcp --> <dependency> <groupId>commons-dbcp</groupId> <artifactId>commons-dbcp</artifactId> <version>1.4</version> </dependency>
로그인 요청 URL을 매핑하여 서비스 호출 및 뷰 연결처리를 하는 메소드 memberLogin()
@RequestMapping("/login") public String memberLogin(Member member, Model model, HttpServletRequest request) { Member loginMember = memberService.loginMember(member); if(loginMember == null) { model.addAttribute("msg", "로그인 실패"); }else { model.addAttribute("loginMember", loginMember); } return "redirect:/"; }
Session 생성(loingMember, msg)
HttpSession session = request.getSession(); session.setAttribute("loginMember", loginMember);
MemberService 인터페이스
package com.ncs.test.member.model.service; import com.ncs.test.member.model.vo.Member; public interface MemberService { public abstract Member loginMember(Member member); }
MemberServiceImpl 클래스
package com.ncs.test.member.model.service; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.ncs.test.member.model.dao.MemberDAO; import com.ncs.test.member.model.vo.Member; @Service public class MemberServiceImpl implements MemberService { @Autowired private MemberDAO memberDAO; @Override public Member loginMember(Member member) { return memberDAO.loginMember(member); } }
MemberDAO 클래스
package com.ncs.test.member.model.dao; import org.mybatis.spring.SqlSessionTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Repository; import com.ncs.test.member.model.vo.Member; @Repository public class MemberDAO { @Autowired private SqlSessionTemplate sqlSession; public Member loginMember(Member member) { return sqlSession.selectOne("memberMapper.loginMember", member); } }
typeAliases 등록
<typeAliases> <typeAlias type="com.ncs.test.member.model.vo.Member" alias="Member"/> </typeAliases>
mapper 등록
<mappers> <mapper resource="/mappers/member-mapper.xml"/> </mappers>
VO 클래스와 Member 테이블 조회 결과를 매핑할 resultMap
<resultMap type="Member" id="memberResultSet"> <id property="memberId" column="MEMBER_ID"/> <result property="memberPwd" column="MEMBER_PWD"/> <result property="memberName" column="MEMBER_NM"/> <result property="memberEnrollDate" column="MEMBER_ENROLL_DT"/> </resultMap>
로그인 기능을 수행하기 위한 select 엘리먼트
<select id="loginMember" parameterType="Member" resultMap="memberResultSet"> SELECT member_nm FROM MEMBER WHERE MEMBER_ID= #{memberId} AND MEMBER_PWD= #{memberPwd} </select>
<시험2-애플리케이션 배포문제해결시나리오>
1. 문제의 원인(20점)과 해결을 위한 조치사항(20점)을 <properties> 태그와 연관 지어 서술
현재 각 모듈들의 버전이 5.2.11.RELEASE와 일치하지 않아 지원하는 범위와 사용할 수 있는 jdk 등이 다르기에 문제가 발생한다
3버전은 jdk5까지 지원하고 Groupid 등은 지원하지 않는다.
4버전은 jdk8까지 지원하고 @Order, @RestController등 어노테이션을 사용할 수 있다
5버전은 jdk8이상 지원하고 웹지원, xml과 json 등의 지원이 확대되었다.
모든 모듈의 버전을 5.2.11.RELEASE로 수정하거나 아래와같이 <properties>태그를 이용해 모듈의 버전을 통합 관리한다.
<version>${org.springframework-version}</version>
2. 원인(5점)과 이를 해결하기 위한 조치사항(5점)을 각각 서술
jstl.jar파일 배포가 안 되어있다
maven repository에서 해당 파일을 다운로드한 후 프로젝트의 lib폴더에 추가하고 Java Build Path에서 Jar파일을 추가해 준다.
3. 문제의 원인(10점)과 이를 해결할 수 있는 조치사항(15점)을 기술
pom.xml의 dependency설정이 잘못되었거나 해당 라이브러리를 찾지 못했기에 에러가 발생했다.
메이븐 Update Maven Project에 들어가 Force Update of Snapshots/Releases를 체크하고 ok버튼을 누른다.
4. 에러가 발생한 원인(10점)과 이를 해결하기 위한 조치사항(15점)을 각각 서술
MobileService객체를 MobileController에서 사용하기위해 필요한 객체 등록이 안되어있다.
MobileService에 @Service 어노테이션을 작성하여 스프링 빈으로 등록하거나 bean-context.xml에 해당 클래스를 등록한다.
'국비학원 > 수업기록' 카테고리의 다른 글
국비 지원 개발자 과정_Day109 (1) | 2023.05.04 |
---|---|
국비 지원 개발자 과정_Day105 (0) | 2023.04.28 |
국비 지원 개발자 과정_Day103 (0) | 2023.04.26 |
국비 지원 개발자 과정_Day102 (0) | 2023.04.25 |
국비 지원 개발자 과정_Day101 (0) | 2023.04.25 |
댓글