eclipse中创建新类时创建日志实例

发布于 2024-12-11 13:41:58 字数 347 浏览 0 评论 0原文

我有两个 impl 包(包含 service/dao 方法的实现) 我希望在这个包中创建任何新类时,

默认情况下将以下行添加到类中(日志实例化):

Log log = LogFactory.getLog(getClass());

另一件事是,我希望在 dao 的 impl 包 中添加未实现的方法时添加 spring 注释关于

@Transactionl 

如何在 eclipse 中完成这些事情的任何想法(我正在使用 Eclipse Helios 3.6)。

i have two impl packages (contains implementation for service/dao methods)
and i want when creating any new class in this package

the following line gets added to class by default (log instantiation):

Log log = LogFactory.getLog(getClass());

another thing is that i want when adding unimplemented method in the impl package for dao is to add the spring annotation

@Transactionl 

any ideas how to accomplish those things in eclipse (i am using Eclipse Helios 3.6).

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

苏璃陌 2024-12-18 13:41:58

我认为不可能为给定的包提供特定的模板。

但有一些注意事项:

  • 服务层应该划分事务。不是 DAO 层。
  • 您可以继承具有受保护日志字段的基类,并且所有子类都将继承它。由于您使用 getClass() 调用初始化日志,因此将使用实际的子类名称。
  • 只有公共方法才应该是事务性的。其他的不会被 Spring 拦截,因此它们的事务注释无论如何都会被忽略。
  • 如果您希望 bean 的所有方法都是事务性的,请将注释放在类上而不是每个单独的方法上。

I don't think it's possible to have a specific template for a given package.

Some notes, though :

  • the service layer should demarcate transactions. Not the DAO layer.
  • you could inherit a base class with a protected log field, and all the subclasses would inherit it. Since you're calling initializing the log with getClass(), the actual subclass name would be used.
  • Only public methods should be transactional. The other ones aren't intercepted by Spring, so their transactional annotation would be ignored anyway.
  • if you want to have all the methods of a bean to be transactional, put the annotation on the class rather than each individual method.
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文