修改报名 & AOP

This commit is contained in:
2023-03-22 22:55:43 +08:00
parent 21960e7af9
commit c6b0139382
105 changed files with 187 additions and 102 deletions

View File

@@ -28,6 +28,11 @@
<version>5.8.12</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
</dependency>
</dependencies>

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.abstractpro;
package com.qn.sjms.abstractpro;
public abstract class AbstractCreator {
//创建A产品家族

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.abstractpro;
package com.qn.sjms.abstractpro;
public abstract class AbstractProductA {
//每个产品共有的方法

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.abstractpro;
package com.qn.sjms.abstractpro;
public abstract class AbstractProductB {
//每个产品共有的方法

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.abstractpro;
package com.qn.sjms.abstractpro;
public class Client {
public static void main(String[] args) {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.abstractpro;
package com.qn.sjms.abstractpro;
public class Creator1 extends AbstractCreator{
//只生产产品等级为1的A产品

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.abstractpro;
package com.qn.sjms.abstractpro;
public class Creator2 extends AbstractCreator{
//只生产产品等级为2的A产品

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.abstractpro;
package com.qn.sjms.abstractpro;
public class ProductA1 extends AbstractProductA{

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.abstractpro;
package com.qn.sjms.abstractpro;
public class ProductA2 extends AbstractProductA{

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.abstractpro;
package com.qn.sjms.abstractpro;
public class ProductB1 extends AbstractProductB{

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.abstractpro;
package com.qn.sjms.abstractpro;
public class ProductB2 extends AbstractProductB{

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.adapter;
package com.qn.sjms.adapter;
public class Adaptee {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.adapter;
package com.qn.sjms.adapter;
public class Adapter extends Adaptee implements Target{
@Override

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.adapter;
package com.qn.sjms.adapter;
public class AdapterClient {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.adapter;
package com.qn.sjms.adapter;
public interface Target {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.adapter;
package com.qn.sjms.adapter;
public class TargetImpl implements Target {
@Override

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.chain;
package com.qn.sjms.chain;
// 此处防止报错随便引入的对象无关该模式
import sun.misc.Request;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.decorator;
package com.qn.sjms.decorator;
public abstract class Component {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.decorator;
package com.qn.sjms.decorator;
public class ConcreteComponent extends Component {
@Override

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.decorator;
package com.qn.sjms.decorator;
public abstract class Decorator extends Component{
private Component component;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.decorator;
package com.qn.sjms.decorator;
public class DecoratorClient {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.decorator;
package com.qn.sjms.decorator;
public class DecoratorImpl extends Decorator {
public DecoratorImpl(Component component) {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.decorator;
package com.qn.sjms.decorator;
public class DecoratorImpl2 extends Decorator {
public DecoratorImpl2(Component component) {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.explan;
package com.qn.sjms.explan;
/**
* 具体的解释任务由各个实现类完成具体的解释器分别由TerminalExpression和Non- terminalExpression完成

View File

@@ -0,0 +1,4 @@
package com.qn.sjms.explan;
public class Context {
}

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.explan;
package com.qn.sjms.explan;
import java.util.Stack;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.explan;
package com.qn.sjms.explan;
public class NonTerminalExpression extends AbstractExpression {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.explan;
package com.qn.sjms.explan;
public class TerminalExpression extends AbstractExpression {
@Override

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.flyweight;
package com.qn.sjms.flyweight;
import java.util.HashMap;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.flyweight;
package com.qn.sjms.flyweight;
import lombok.Data;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.flyweight;
package com.qn.sjms.flyweight;
public class FlyweightImpl extends Flyweight {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.iterator;
package com.qn.sjms.iterator;
public interface IProject {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.iterator;
package com.qn.sjms.iterator;
import java.util.ArrayList;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.iterator;
package com.qn.sjms.iterator;
import java.util.Iterator;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.iterator;
package com.qn.sjms.iterator;
public class IteratorClient {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.iterator;
package com.qn.sjms.iterator;
import java.util.ArrayList;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.makeup;
package com.qn.sjms.makeup;
public abstract class Component {
public void doSomething(){

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.makeup;
package com.qn.sjms.makeup;
import java.util.ArrayList;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.makeup;
package com.qn.sjms.makeup;
/**
* 叶子对象其下再也没有其他的分支也就是遍历的最小单位

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.makeup;
package com.qn.sjms.makeup;
public class MakeUpClient {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.mediator;
package com.qn.sjms.mediator;
public abstract class AbstractColleague {
protected AbstractMediator mediator;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.mediator;
package com.qn.sjms.mediator;
public abstract class AbstractMediator {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.mediator;
package com.qn.sjms.mediator;
public class Mediator extends AbstractMediator {
@Override

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.mediator;
package com.qn.sjms.mediator;
public class MediatorClient {
public static void main(String[] args) {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.mediator;
package com.qn.sjms.mediator;
public class Purchase extends AbstractColleague{
public Purchase(AbstractMediator _mediator){

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.mediator;
package com.qn.sjms.mediator;
import java.util.Random;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.mediator;
package com.qn.sjms.mediator;
public class Stock extends AbstractColleague{
public Stock(AbstractMediator _mediator){

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.model;
package com.qn.sjms.model;
import java.util.HashMap;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.model;
package com.qn.sjms.model;
public class InvokeFather {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.model;
package com.qn.sjms.model;
public class InvokeSon extends InvokeFather{

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.model;
package com.qn.sjms.model;
import java.util.HashMap;
import java.util.Map;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.model;
package com.qn.sjms.model;
import java.util.Map;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.modelfunction;
package com.qn.sjms.modelfunction;
public abstract class HanmaCar {
public void run(){

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.modelfunction;
package com.qn.sjms.modelfunction;
public class HanmaH1Car extends HanmaCar{
@Override

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.observer;
package com.qn.sjms.observer;
/**
* 观察者接收到消息后即进行update更新方法操作对接收到的信息进行处理

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.observer;
package com.qn.sjms.observer;
import java.util.Observable;
import java.util.Observer;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.observer;
package com.qn.sjms.observer;
public class ObserverClient {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.observer;
package com.qn.sjms.observer;
public class ObserverImpl implements Observer {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.observer;
package com.qn.sjms.observer;
import java.util.Vector;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.observer;
package com.qn.sjms.observer;
import java.util.Observable;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.observer;
package com.qn.sjms.observer;
public class SubjectImpl extends Subject {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.order;
package com.qn.sjms.order;
public class BigReceiver extends Receiver{
@Override

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.order;
package com.qn.sjms.order;
public class ByeCommand extends Command{

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.order;
package com.qn.sjms.order;
public abstract class Command {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.order;
package com.qn.sjms.order;
public class HelloCommand extends Command{

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.order;
package com.qn.sjms.order;
public class Invoker {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.order;
package com.qn.sjms.order;
public class OrderClient {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.order;
package com.qn.sjms.order;
public abstract class Receiver {
//抽象接收者定义每个接收者都必须完成的业务

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.other;
package com.qn.sjms.other;
import lombok.Data;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.other;
package com.qn.sjms.other;
import cn.hutool.core.clone.CloneSupport;
import lombok.Data;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.product;
package com.qn.sjms.product;
public class ConcreteCreator extends Creator {
@Override

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.product;
package com.qn.sjms.product;
/**
* 抽象工厂

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.product;
package com.qn.sjms.product;
public class CustomProduct1 extends Product{

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.product;
package com.qn.sjms.product;
public class CustomProduct2 extends Product{
@Override

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.product;
package com.qn.sjms.product;
public abstract class Product {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.prototype;
package com.qn.sjms.prototype;
import java.util.ArrayList;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.proxy;
package com.qn.sjms.proxy;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Proxy;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.proxy;
package com.qn.sjms.proxy;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Proxy;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.proxy;
package com.qn.sjms.proxy;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.proxy;
package com.qn.sjms.proxy;
import lombok.Data;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.proxy;
package com.qn.sjms.proxy;
public class GamePlayerProxy{
private IGamePlayer gamePlayer = null;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.proxy;
package com.qn.sjms.proxy;
public interface IGamePlayer {
//登录游戏

View File

@@ -0,0 +1,22 @@
package com.qn.sjms.proxy.aop;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
import org.springframework.stereotype.Component;
@Aspect
@Component
public class MyAspect {
@Around(value = "execution( * com.qn.sjms.proxy.aop.Student.*(..))")
public void pointcut(ProceedingJoinPoint pjp) throws Throwable {
String objName = pjp.getTarget().getClass().toString();
String name = pjp.getSignature().getName();
System.out.println(objName);
System.out.println(name);
Object proceed = pjp.proceed();
System.out.println(proceed);
}
}

View File

@@ -0,0 +1,21 @@
package com.qn.sjms.proxy.aop;
import org.springframework.stereotype.Component;
@Component
public class Student {
public void hello(String name){
System.out.println("my name is " + name);
}
public void testJob(String name,String job){
System.out.println(name + ":my job is " + job);
say("djiajdioas");
}
public void say(String bbb) {
System.out.println("bbbbbb" + bbb);
}
}

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.singleton;
package com.qn.sjms.singleton;
public class Singleton {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.status;
package com.qn.sjms.status;
public class Context {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.status;
package com.qn.sjms.status;
import lombok.Data;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.status;
package com.qn.sjms.status;
public class StateImpl extends State {
@Override

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.status;
package com.qn.sjms.status;
public class StateImpl2 extends State {
@Override

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.status;
package com.qn.sjms.status;
public class StatusClient {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.tactics;
package com.qn.sjms.tactics;
public enum Calculator {
//加法运算

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.tactics;
package com.qn.sjms.tactics;
public class Context {
private Strategy strategy = null;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.tactics;
package com.qn.sjms.tactics;
public interface Strategy {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.tactics;
package com.qn.sjms.tactics;
public class StrategyImpl implements Strategy {
@Override

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.tactics;
package com.qn.sjms.tactics;
public class TacticsClient {
public static void main(String[] args) {

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.text;
package com.qn.sjms.text;
import lombok.Data;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.text;
package com.qn.sjms.text;
public interface IWrapperMemento {
}

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.text;
package com.qn.sjms.text;
import lombok.AllArgsConstructor;
import lombok.Data;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.text;
package com.qn.sjms.text;
import lombok.Data;

View File

@@ -1,4 +1,4 @@
package com.quinn.sjms.text;
package com.qn.sjms.text;
public class TextClient {

Some files were not shown because too many files have changed in this diff Show More