annotations 相关问题

在编程中,注释用于将信息添加到代码元素,而代码元素不能由类型系统表示。

夫特 - 通过公开按钮从mapkit注释将数据传递到另一个视图

我有注释的地图,点击PIN后,标注显示了注释的标题和披露按钮。当我点击按钮SEGUE被触发,我移动到另一个视图。如何 ...

回答 2 投票 3

@override的Android Studio中的意义[复制]

我完全新的到Android Studio和我想知道Android Studio中的@覆盖声明的目的。

回答 6 投票 47

注解这里不允许

我创建它实现JpaRepository与用户实体工作的UserRepository。我需要一种方法来更新的用户名。我决定与@Query的帮助下做到这一点。但是,它是由标记的IntelliJ。 ...

回答 4 投票 8

如何申请基于URL模式春天开机过滤器?

我创建了一个弹簧引导过滤器 - 工具GenericFilterBean @Component来注解。 @Component公共类MyAuthenticationFilter扩展GenericFilterBean {... @覆盖公共无效...

回答 3 投票 10

如何指定在Bean验证列表对象不是空约束

类Person {//此处插入一些的验证注解,以确保该列表不能包含空项私有列表 AddressList中; //代码}我需要验证到休息...

回答 1 投票 0

不加修饰,没有xml配置创建遗留类的豆

我有一些现有的传统的辅助类无豆注释和不xml配置。我想创建一个相同的类豆子不经修改(不加注释)和无...

回答 3 投票 0

添加文本注释从熊猫数据帧绘制

我的代码:进口matplotlib.pyplot如PLT进口大熊猫作为PD进口操作系统,水珠路径= R'C:/用户/新建文件夹” all_files = glob.glob(os.path.join(路径的 “* .txt”)) DF = pd.DataFrame()在档中的...

回答 1 投票 0

注释路径页面子结构匹配两个路径

我正在尝试为处理我的应用程序中的页面的控制器创建路由注释。页面(读取:URL)结构可以是多层次的深度。但是它应该只接受一个变量......

回答 1 投票 0

有没有办法通过放大GraphQL变换@searchable注释来控制自动生成的弹性搜索索引?

我正在使用架构和注释构建graphQL api以使用AWS Amplify的GraphQL转换。如何控制它在场景后面生成哪种ES索引?这是一个简单的API ...

回答 1 投票 0

如何获取类及其超类的注释列表

我正在编写一个方法,用于检索声明类及其超类的特定方法的所有注释。通过在声明类上使用方法getAnnotations(),得到的表...

回答 1 投票 2

将注释/描述性标签成对添加到每个子图

我有几对数据集,我想为每个数据集添加相关系数,以便可以直观地看到相关性。例如:corr1

回答 1 投票 1

使用api-platform时,不断在注释上的未知属性上出错

我正在使用api平台和symfony 4.尝试使用DTO在类上输出并遵循文档(https://api-platform.com/docs/core/dto/)。我的类看起来像这样:命名空间App \ ...

回答 1 投票 1

为注释字段设置默认null值时出错

为什么会出现错误“属性值必须为常数”。是不是空常量??? @Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)public @interface SomeInterface {类...

回答 7 投票 69

将注释存储在地图中,稍后再查找

有没有办法在地图中存储对象的注释? class HasFieldsWithAnnotations {Set annots = new HashSet <>(); public boolean hasAnnotation(Annotation a)...

回答 1 投票 0

哪些类型可用于Java注释成员?

今天我想按照这个文档创建我的第一个注释界面,我得到了编译器错误注释成员的无效类型“:public @interface MyAnnotation {Object ...

回答 4 投票 201

在弹簧支架控制器之间实施常用方法的最佳实践是什么?

我正在使用弹簧控制器来实现我的web api,我想将控制器之间的常用方法放在一个地方,因此可以在我的所有控制器中使用。如果没有办法扩展@ ...

回答 3 投票 1

将通用数组创建为静态字段

这不编译:public static Class extends Annotation> [] annots = {NotNull.class,ColumnType.class,RuntimeType.class,DefaultValue.class};我收到这个错误:...

回答 2 投票 0


java中的接口和@interface有什么区别?

自从90年代末在大学期间使用JBuilder以来,我没有触及Java,所以我有点失去联系 - 无论如何我本周一直在研究一个小型Java项目,并使用Intellij ......

回答 5 投票 257

带有 Around 建议和 @annotation 的 Spring AOP 不起作用

我正在使用 Spring AOP 登录我的应用程序。这是 applicationContext.xml 文件 我正在使用 Spring AOP 登录我的应用程序。这是 applicationContext.xml 文件 <mvc:annotation-driven /> <context:component-scan base-package="com.template" /> <context:annotation-config /> <jpa:repositories base-package="com.template.repository"/> <tx:annotation-driven /> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/template?autoReconnect=true"/> <property name="username" value="root"/> <property name="password" value=""/> </bean> <bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean"> <property name="dataSource" ref="dataSource"/> <property name="persistenceXmlLocation" value="classpath:META-INF/persistence.xml"/> <property name="persistenceUnitName" value="template"/> </bean> <bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager"> <property name="entityManagerFactory" ref="entityManagerFactory"/> </bean> 我的 aopLogging.xml 是 <bean id="aopLogging" class="com.template.log.AopLoggingAspect" /> <aop:aspectj-autoproxy proxy-target-class="false"/> 我的 Aspect 类是 import org.apache.log4j.Logger; import org.aspectj.lang.ProceedingJoinPoint; import org.aspectj.lang.annotation.Around; import org.aspectj.lang.annotation.Aspect; import org.springframework.stereotype.Component; import org.springframework.util.StopWatch; @Aspect @Component public class AopLoggingAspect { private static final Logger logger = Logger.getLogger(AopLoggingAspect.class); @Around(value="@annotation(com.template.log.Loggable)") public Object logAround(final ProceedingJoinPoint joinPoint) throws Throwable{ Object retVal = null; try { StringBuffer startMessageStringBuffer = new StringBuffer(); startMessageStringBuffer.append("Start method execution :: "); startMessageStringBuffer.append(joinPoint.getSignature().getName()); startMessageStringBuffer.append("("); Object[] args = joinPoint.getArgs(); for (int i = 0; i < args.length; i++) { startMessageStringBuffer.append(args[i]).append(","); } if (args.length > 0) { startMessageStringBuffer.deleteCharAt(startMessageStringBuffer.length() - 1); } startMessageStringBuffer.append(")"); logger.info(startMessageStringBuffer.toString()); StopWatch stopWatch = new StopWatch(); stopWatch.start(); retVal = joinPoint.proceed(); stopWatch.stop(); StringBuffer endMessageStringBuffer = new StringBuffer(); endMessageStringBuffer.append("Finish method "); endMessageStringBuffer.append(joinPoint.getSignature().getName()); endMessageStringBuffer.append("(..); execution time: "); endMessageStringBuffer.append(stopWatch.getTotalTimeMillis()); endMessageStringBuffer.append(" ms;"); logger.info(endMessageStringBuffer.toString()); } catch(Exception ex) { StringBuffer errorMessageStringBuffer = new StringBuffer(); logger.error(errorMessageStringBuffer.toString(), ex); throw ex; } return retVal; } } 我的自定义注释是 import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; @Retention(RetentionPolicy.RUNTIME) @Target({ElementType.METHOD, ElementType.TYPE}) public @interface Loggable { } 我的服务等级是 public class UserService { @Transactional(readOnly=true) @Loggable public User getUserByUserId(Long userId){ return userRepository.findOne(userId); } } 问题是没有打印日志。请帮我。提前致谢。如果需要任何其他信息,请告诉我。 在我看来你忘了在你的applicationContext.xml文件中导入aopLogging.xml文件。尝试将此添加到您的applicationContext.xml文件中: <!-- Import your AspectJ config --> <import resource="classpath:aopLogging.xml" /> 创建注释 @Target(ElementType.METHOD) @Retention(RetentionPolicy.RUNTIME) public @interface LogExecutionTime { } 然后一个看点 @看点 @组件 公共类 LoggingAspect { 然后Aspect中的一个方法 @Around("@annotation(LogExecutionTime)") 公共对象 logExecutionTime(ProceedingJoinPoint joinPoint) 抛出 Throwable { long start = System.currentTimeMillis(); Object proceed = joinPoint.proceed(); long executionTime = System.currentTimeMillis() - start; LOGGER.info(joinPoint.getSignature() + " executed in " + executionTime + "ms"); return proceed; } 然后使用Annotation Anywhere @PostMapping(价值=“/注册”) @LogExecutionTime 公共@ResponseBody ResponseObject 注册(用户用户){ } 试试这个.. @Around(value="@annotation(Loggable)") public Object logAround(final ProceedingJoinPoint joinPoint) throws Throwable{

回答 3 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.