> Java > java지도 시간 > 본문

Spring Framework 학습(5) 주석

黄舟
풀어 주다: 2016-12-29 13:17:57
원래의
1266명이 탐색했습니다.

주석은 주석과 유사한 메커니즘으로 코드에 주석을 추가하면 나중에 해당 정보를 사용할 수 있습니다. 주석과 달리 주석은 우리가 볼 수 있는 것입니다. Java 가상 머신은 컴파일되지 않으며 주석도 컴파일되지 않지만 리플렉션 메커니즘을 통해 주석의 정보를 읽을 수 있습니다. 주석은 @interface 키워드를 사용하고 java.lang.annotition.Annotition을 상속합니다


스프링 프레임워크는 주석 기능을 제공합니다.
주석 프로그래밍을 사용하는 것은 주로 xml 파일을 대체하고 개발 속도를 높이는 것입니다. 그런데 xml 파일을 사용하는 것은 소스코드를 수정하기 위해 프로그램을 수정하는 것인데, 지금 xml 파일을 사용하지 않는다면 열고 닫는 원리에 위배되는 것이 아닌가? 그러나 주석은 주석보다 낫습니다. 주석을 사용하면 많은 XML 파일을 구성할 필요가 없습니다. 가장 중요한 것은 높은 개발 효율성입니다. .
주석이 사용되지 않는 경우 클래스 객체를 선언하려면 Spring 프레임워크의 구성 파일인 applicationContext.xml 파일에 많은 태그를 구성해야 합니다. 주석을 사용하면 구성 파일에 태그를 추가할 필요가 없습니다. 대신 해당 클래스의 "주석" 위치에 지침을 추가하세요. 구체적인 소개는 다음과 같습니다.

스프링 프레임워크는 계층화된 주석을 사용합니다.
지속성 레이어: @Repository;
서비스 레이어: @Service
컨트롤 레이어: @Controller

1. 주석을 사용하려면 구성 파일에 네임스페이스 및 제약 조건 파일을 추가해야 합니다.

<beans ...
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="
... http://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context-2.5.xsd ">
로그인 후 복사

2, 어떤 클래스가 주석을 사용하는지 프레임워크에 알려줍니다.

<context:component-scan base-package="com.lsz.spring" />
로그인 후 복사

3, 지속성 레이어 주석

Package com.lsz.spring;
 
@Repository
public class UserDao{
//。。。。
}
로그인 후 복사

@Repository
는 구성에서

<bean id="userDao" class="com.lsz.spring.UserDao" />
로그인 후 복사

4와 동일합니다. file 에서 서비스 계층 주석

@Service(value="testService")
public classTestService {
 
@Resource//相当于自动装配
private UserDao userDao ;
 
      public UserDao getUserDao() {
              returnuserDao;
      }
      public void setUserDao(UserDao userDao) {
             this.userDao= userDao;
      }
 
}
로그인 후 복사
@Resource
는 객체 간의 관계 조합으로, 기본적으로 연관된 객체를 조립할 수 없는 경우 byName 메서드가 사용됩니다. 이름을 기준으로 찾은 경우 ByType을 다시 사용하여 검색을 계속합니다.

@Service 주석은
<bean id="testService" class="com.lsz.spring.UserService" />
로그인 후 복사
5에 해당하고, 제어 계층 주석은
@Controller(value="ua")
@Scope(value="prototype")
public class UserAction {
 
     @Resource
     private UserService userService ;
 
     public UserService getUserService() {
          returnuserService;
     }
}
로그인 후 복사

@Controller 주석은

에 해당합니다.
<bean id="ua" class="com.lsz.spring.UserAction " />
로그인 후 복사


이 세 레이어의 주석 키워드는 @Component로 대체될 수 있습니다.
주석을 사용하여 객체를 선언합니다. 기본적으로 생성된 ID 이름은 클래스 이름의 첫 글자 소문자입니다.

6. Spring 환경에서 Action 객체를 가져옵니다.
ServletContext application =request.getSession().getServletContext();
ApplicationContextac = WebApplicationContextUtils.getWebApplicationContext(application);
 
UserAction useraction = (UserAction)ac.getBean("ua");//获取控制层对象

response.setContentType("text/html;charset=GBK");//设置编码
PrintWriter out =response.getWriter();

//分别将三个层的对象打印出来。
out.println("Action:"+userAction);
out.println("Service:"+userAction.getUserService());
out.println("Dao:"+userAction.getUserService().getUserDao());
로그인 후 복사

위 내용은 Spring Framework 학습(5) Annotation 내용입니다. 더 많은 관련 내용은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요!


관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿