주석은 주석과 유사한 메커니즘으로 코드에 주석을 추가하면 나중에 해당 정보를 사용할 수 있습니다. 주석과 달리 주석은 우리가 볼 수 있는 것입니다. 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; } }
<bean id="testService" class="com.lsz.spring.UserService" />
@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 " />
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)를 참고해주세요!