aspectJ——maven HelloWorld程序

来源:互联网 发布:大华摄像头onvif端口 编辑:程序博客网 时间:2024/06/04 18:43

aspectJ——maven HelloWorld程序

1、首先建立maven程序。点击下载,不要积分哦
2、修改pom文件,引入需要的jar包,aspectjrt.jar。
pom.xml
<dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>3.8.1</version><scope>test</scope></dependency><!-- https://mvnrepository.com/artifact/aspectj/aspectjrt --><dependency><groupId>aspectj</groupId><artifactId>aspectjrt</artifactId><version>1.5.4</version></dependency></dependencies>
3、右键单击项目名称,选择configure-->Convert to aspectj projects..
4、编写servlet
testServlet.java
package com.xueyoucto.xueyou.servlet;import java.io.IOException;import javax.servlet.ServletException;import javax.servlet.ServletOutputStream;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;/** * Servlet implementation class test */@WebServlet("/testServlet")public class testServlet extends HttpServlet {private static final long serialVersionUID = 1L;           /**     * @see HttpServlet#HttpServlet()     */    public testServlet() {        super();        // TODO Auto-generated constructor stub    }/** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stub//response.getWriter().append("Served at: ").append(request.getContextPath());ServletOutputStream out = response.getOutputStream();out.println("<h1>maven servlet</h1>");}/** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubdoGet(request, response);}}

5、编写一个测试切面
webAspect.aj
package com.xueyoucto.xueyou.aspect;import java.io.IOException;import javax.servlet.ServletOutputStream;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public aspect webAspect {public pointcut CaptureAndFooter(HttpServletRequest request, HttpServletResponse response) :execution(protected void com.xueyoucto.xueyou.servlet.testServlet.doGet(HttpServletRequest, HttpServletResponse)) && args(request,response);before(HttpServletRequest request, HttpServletResponse response) throws IOException:CaptureAndFooter(request,response){System.out.println("before");ServletOutputStream out = response.getOutputStream();out.println("<h1>head</h1>");}after(HttpServletRequest request,HttpServletResponse response) throws IOException:CaptureAndFooter(request,response){System.out.println("after");ServletOutputStream out = response.getOutputStream();out.println("<h1>footer</h1>");}}


6、部署运行


0 0
原创粉丝点击