매개변수 전달을 위해 특별히 Bean을 정의하고 Setter/Getter 메소드를 제공하세요. 이 방법은 확실히 너무 번거롭습니다. 하지만 단순화할 수 있습니다.map에 여러 매개변수를 넣고map에 전달하면 됩니다.
방법 2
mapper接口에서 정의한 방식으로 매개변수를 입력하고org.apache.ibatis.annotations.Param주석을 사용하여 매개변수 이름을 표시할 수 있습니다. 예:
으아악
그런 다음 xml에서 해당 이름 매핑을 사용하세요.
으아악
참고
방법 2를 사용하려면 현재 방법이 작동하지 않습니다. sqlSession.selectOne(queryId)또는sqlSession.selectOne(queryId,paramObj)메소드를 사용하여 호출하기 때문입니다. 두 번째 방법을 사용하려면 먼저sqlSession.getMapper(UserMapper.class)을 사용하여 정의된 인터페이스(DAO)를 가져와야 합니다. 인터페이스를 가져온 후에는 인터페이스의 메서드 정의가 일반 Java 메서드이기 때문에 비교적 자유롭게 매개 변수를 전달할 수 있습니다. 정의. .@Param주석을 사용하여 정의된 인터페이스 메서드의 매개변수를 표시할 수 있습니다. 대략적인 예는 다음과 같습니다.
으아악 으아악
여기에 주목해야 할 사항:
사용자 정의된DAO接口의 전체 클래스 이름cn.xxx.dao.UserMapper은의namespace속성과 일치해야 합니다. 동시에namespace의 값(cn.xxx.dao.UserMapper)과select의id속성 값(login)은 실제로 당신은 >.sqlSession.selectOne(queryId)queryId
프로젝트인 경우 소스 코드 경로(
) 대신 리소스 경로(maven) 아래에xxxMapper.xml를 배치하고, 그렇지 않으면 런타임 소스 아래에src/main/resources를 배치해야 합니다. 코드 경로 >을(를) 찾을 수 없습니다.src/main/javaxml文件
또 다른 제안은
을 관리하기 위해
을 사용하는지 시각적으로 확인하는 것입니다. 이를 고려하여Spring를Bean에 직접 주입할 필요가 없는SqlSessionFactory를 관리하는 또 다른 방법이 있습니다. . 다음은 이전에 다른 사람에게서DAO가져온SqlSessionFactory통합의 예입니다: https://github.com/hylexus/be...fock
두 가지 일반적인 방법이 있습니다.
방법 1
매개변수 전달을 위해 특별히 Bean을 정의하고 Setter/Getter 메소드를 제공하세요. 이 방법은 확실히 너무 번거롭습니다.
하지만 단순화할 수 있습니다.
map에 여러 매개변수를 넣고map에 전달하면 됩니다.방법 2
으아악mapper接口에서 정의한 방식으로 매개변수를 입력하고org.apache.ibatis.annotations.Param주석을 사용하여 매개변수 이름을 표시할 수 있습니다. 예:그런 다음 xml에서 해당 이름 매핑을 사용하세요.
으아악참고
방법 2를 사용하려면 현재 방법이 작동하지 않습니다.
으아악 으아악sqlSession.selectOne(queryId)또는sqlSession.selectOne(queryId,paramObj)메소드를 사용하여 호출하기 때문입니다.두 번째 방법을 사용하려면 먼저
sqlSession.getMapper(UserMapper.class)을 사용하여 정의된 인터페이스(DAO)를 가져와야 합니다. 인터페이스를 가져온 후에는 인터페이스의 메서드 정의가 일반 Java 메서드이기 때문에 비교적 자유롭게 매개 변수를 전달할 수 있습니다. 정의. .@Param주석을 사용하여 정의된 인터페이스 메서드의 매개변수를 표시할 수 있습니다. 대략적인 예는 다음과 같습니다.여기에 주목해야 할 사항:
- 프로젝트인 경우 소스 코드 경로(
또 다른 제안은
을 관리하기 위해사용자 정의된
DAO接口의 전체 클래스 이름cn.xxx.dao.UserMapper은의namespace속성과 일치해야 합니다.동시에
namespace의 값(cn.xxx.dao.UserMapper)과select의id속성 값(login)은 실제로 당신은 >.sqlSession.selectOne(queryId)queryId) 대신 리소스 경로(
maven) 아래에xxxMapper.xml를 배치하고, 그렇지 않으면 런타임 소스 아래에src/main/resources를 배치해야 합니다. 코드 경로 >을(를) 찾을 수 없습니다.src/main/javaxml文件을 사용하는지 시각적으로 확인하는 것입니다. 이를 고려하여
Spring를Bean에 직접 주입할 필요가 없는SqlSessionFactory를 관리하는 또 다른 방법이 있습니다. . 다음은 이전에 다른 사람에게서DAO가져온SqlSessionFactory통합의 예입니다: https://github.com/hylexus/be...fock